/** \file
 *  This C source file was generated by $ANTLR version 3.4
 *
 *     -  From the grammar source file : MySQL.g
 *     -                            On : 2016-10-14 14:12:10
 *     -                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); 

  // Have to forward declare these 2. The code generator places them after the @parser::members section
  // (other that what is done in the lexer, where the order is reversed).
  static void resetParser(pMySQLParser ctx);
  static void freeParser(pMySQLParser ctx);
  
#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[809+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) "ANALYSE_SYMBOL",
        (pANTLR3_UINT8) "AND_SYMBOL",
        (pANTLR3_UINT8) "ASC_SYMBOL",
        (pANTLR3_UINT8) "ASENSITIVE_SYMBOL",
        (pANTLR3_UINT8) "BEFORE_SYMBOL",
        (pANTLR3_UINT8) "BETWEEN_SYMBOL",
        (pANTLR3_UINT8) "BIGINT_SYMBOL",
        (pANTLR3_UINT8) "BINARY_SYMBOL",
        (pANTLR3_UINT8) "BIN_NUM_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_SYMBOL",
        (pANTLR3_UINT8) "CHARACTER_SYMBOL",
        (pANTLR3_UINT8) "CHAR_SYMBOL",
        (pANTLR3_UINT8) "CHECK_SYMBOL",
        (pANTLR3_UINT8) "COLLATE_SYMBOL",
        (pANTLR3_UINT8) "COLUMN_SYMBOL",
        (pANTLR3_UINT8) "COMMENT_RULE",
        (pANTLR3_UINT8) "CONDITION_SYMBOL",
        (pANTLR3_UINT8) "CONSTRAINT_SYMBOL",
        (pANTLR3_UINT8) "CONTINUE_SYMBOL",
        (pANTLR3_UINT8) "CONVERT_SYMBOL",
        (pANTLR3_UINT8) "COUNT_SYMBOL",
        (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) "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_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) "DISTINCTROW_SYMBOL",
        (pANTLR3_UINT8) "DISTINCT_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) "ESCAPED_SYMBOL",
        (pANTLR3_UINT8) "EXCHANGE_SYMBOL",
        (pANTLR3_UINT8) "EXISTS_SYMBOL",
        (pANTLR3_UINT8) "EXIT_SYMBOL",
        (pANTLR3_UINT8) "EXPIRE_SYMBOL",
        (pANTLR3_UINT8) "EXPLAIN_SYMBOL",
        (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_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) "GENERATED_SYMBOL",
        (pANTLR3_UINT8) "GET_SYMBOL",
        (pANTLR3_UINT8) "GRANT_SYMBOL",
        (pANTLR3_UINT8) "GROUP_CONCAT_SYMBOL",
        (pANTLR3_UINT8) "GROUP_SYMBOL",
        (pANTLR3_UINT8) "HAVING_SYMBOL",
        (pANTLR3_UINT8) "HIGH_PRIORITY_SYMBOL",
        (pANTLR3_UINT8) "HOUR_MICROSECOND_SYMBOL",
        (pANTLR3_UINT8) "HOUR_MINUTE_SYMBOL",
        (pANTLR3_UINT8) "HOUR_SECOND_SYMBOL",
        (pANTLR3_UINT8) "IF_SYMBOL",
        (pANTLR3_UINT8) "IGNORE_SYMBOL",
        (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_SYMBOL",
        (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_SYMBOL",
        (pANTLR3_UINT8) "JSON_SEPARATOR_SYMBOL",
        (pANTLR3_UINT8) "KEYS_SYMBOL",
        (pANTLR3_UINT8) "KEY_SYMBOL",
        (pANTLR3_UINT8) "KILL_SYMBOL",
        (pANTLR3_UINT8) "LEADING_SYMBOL",
        (pANTLR3_UINT8) "LEAVE_SYMBOL",
        (pANTLR3_UINT8) "LEFT_SYMBOL",
        (pANTLR3_UINT8) "LIKE_SYMBOL",
        (pANTLR3_UINT8) "LIMIT_SYMBOL",
        (pANTLR3_UINT8) "LINEAR_SYMBOL",
        (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) "LONGBLOB_SYMBOL",
        (pANTLR3_UINT8) "LONGTEXT_SYMBOL",
        (pANTLR3_UINT8) "LONG_NUM_SYMBOL",
        (pANTLR3_UINT8) "LONG_SYMBOL",
        (pANTLR3_UINT8) "LOOP_SYMBOL",
        (pANTLR3_UINT8) "LOW_PRIORITY_SYMBOL",
        (pANTLR3_UINT8) "MASTER_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) "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_SYMBOL",
        (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_SYMBOL",
        (pANTLR3_UINT8) "NOW_SYMBOL",
        (pANTLR3_UINT8) "NO_WRITE_TO_BINLOG_SYMBOL",
        (pANTLR3_UINT8) "NULL2_SYMBOL",
        (pANTLR3_UINT8) "NULL_SYMBOL",
        (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) "POSITION_SYMBOL",
        (pANTLR3_UINT8) "POUND_COMMENT",
        (pANTLR3_UINT8) "PRECISION_SYMBOL",
        (pANTLR3_UINT8) "PRIMARY_SYMBOL",
        (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) "SCHEMAS_SYMBOL",
        (pANTLR3_UINT8) "SCHEMA_SYMBOL",
        (pANTLR3_UINT8) "SECOND_MICROSECOND_SYMBOL",
        (pANTLR3_UINT8) "SELECT_SYMBOL",
        (pANTLR3_UINT8) "SEMICOLON_SYMBOL",
        (pANTLR3_UINT8) "SENSITIVE_SYMBOL",
        (pANTLR3_UINT8) "SEPARATOR_SYMBOL",
        (pANTLR3_UINT8) "SERVER_OPTIONS_SYMBOL",
        (pANTLR3_UINT8) "SESSION_USER_SYMBOL",
        (pANTLR3_UINT8) "SET_SYMBOL",
        (pANTLR3_UINT8) "SET_VAR_SYMBOL",
        (pANTLR3_UINT8) "SHOW_SYMBOL",
        (pANTLR3_UINT8) "SIGNAL_SYMBOL",
        (pANTLR3_UINT8) "SINGLE_QUOTED_TEXT",
        (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) "SUBSTRING_SYMBOL",
        (pANTLR3_UINT8) "SUBSTR_SYMBOL",
        (pANTLR3_UINT8) "SUM_SYMBOL",
        (pANTLR3_UINT8) "SYSDATE_SYMBOL",
        (pANTLR3_UINT8) "SYSTEM_USER_SYMBOL",
        (pANTLR3_UINT8) "TABLE_REF_PRIORITY_SYMBOL",
        (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_SYMBOL",
        (pANTLR3_UINT8) "TRIM_SYMBOL",
        (pANTLR3_UINT8) "TRUE_SYMBOL",
        (pANTLR3_UINT8) "UNDERLINE_SYMBOL",
        (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) "VIRTUAL_SYMBOL",
        (pANTLR3_UINT8) "WHEN_SYMBOL",
        (pANTLR3_UINT8) "WHERE_SYMBOL",
        (pANTLR3_UINT8) "WHILE_SYMBOL",
        (pANTLR3_UINT8) "WITHOUT_SYMBOL",
        (pANTLR3_UINT8) "WITH_CUBE_SYMBOL",
        (pANTLR3_UINT8) "WITH_ROLLUP_SYMBOL",
        (pANTLR3_UINT8) "WITH_SYMBOL",
        (pANTLR3_UINT8) "WRITE_SYMBOL",
        (pANTLR3_UINT8) "XOR_SYMBOL",
        (pANTLR3_UINT8) "YEAR_MONTH_SYMBOL",
        (pANTLR3_UINT8) "ZEROFILL_SYMBOL",
        (pANTLR3_UINT8) "ALTER_TABLE_ITEM_TOKEN",
        (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) "BIN_NUMBER",
        (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) "CHANGE_MASTER_OPTIONS_TOKEN",
        (pANTLR3_UINT8) "CLOSE_CURLY_SYMBOL",
        (pANTLR3_UINT8) "CLOSE_PAR_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) "COMMA_SYMBOL",
        (pANTLR3_UINT8) "CONCAT_PIPES_SYMBOL",
        (pANTLR3_UINT8) "CREATE_ITEM_TOKEN",
        (pANTLR3_UINT8) "CURRENT_DATE_SYMBOL",
        (pANTLR3_UINT8) "CURRENT_TIME_SYMBOL",
        (pANTLR3_UINT8) "DATA_TYPE_TOKEN",
        (pANTLR3_UINT8) "DECIMAL_NUMBER",
        (pANTLR3_UINT8) "DIGIT",
        (pANTLR3_UINT8) "DIGITS",
        (pANTLR3_UINT8) "DIV_OPERATOR",
        (pANTLR3_UINT8) "DIV_SYMBOL",
        (pANTLR3_UINT8) "DOT_IDENTIFIER",
        (pANTLR3_UINT8) "DOT_SYMBOL",
        (pANTLR3_UINT8) "DOUBLE_DASH",
        (pANTLR3_UINT8) "DOUBLE_QUOTE",
        (pANTLR3_UINT8) "DOUBLE_QUOTED_TEXT",
        (pANTLR3_UINT8) "DOUBLE_SYMBOL",
        (pANTLR3_UINT8) "ENGINE_REF_TOKEN",
        (pANTLR3_UINT8) "EQUAL_OPERATOR",
        (pANTLR3_UINT8) "ESCAPE_OPERATOR",
        (pANTLR3_UINT8) "EVENT_NAME_TOKEN",
        (pANTLR3_UINT8) "EVENT_REF_TOKEN",
        (pANTLR3_UINT8) "EXPRESSION_TOKEN",
        (pANTLR3_UINT8) "FLOAT_NUMBER",
        (pANTLR3_UINT8) "FUNCTION_CALL_TOKEN",
        (pANTLR3_UINT8) "FUNCTION_NAME_TOKEN",
        (pANTLR3_UINT8) "FUNCTION_REF_TOKEN",
        (pANTLR3_UINT8) "GREATER_OR_EQUAL_OPERATOR",
        (pANTLR3_UINT8) "GREATER_THAN_OPERATOR",
        (pANTLR3_UINT8) "HEXDIGIT",
        (pANTLR3_UINT8) "HEX_NUMBER",
        (pANTLR3_UINT8) "IDENTIFIER",
        (pANTLR3_UINT8) "INDEX_HINT_LIST_TOKEN",
        (pANTLR3_UINT8) "INDEX_NAME_TOKEN",
        (pANTLR3_UINT8) "INDEX_REF_TOKEN",
        (pANTLR3_UINT8) "INT_NUMBER",
        (pANTLR3_UINT8) "INVALID_INPUT",
        (pANTLR3_UINT8) "JOIN_EXPR_TOKEN",
        (pANTLR3_UINT8) "JSON_UNQUOTED_SEPARATOR_SYMBOL",
        (pANTLR3_UINT8) "KEY_CACHE_LIST_TOKEN",
        (pANTLR3_UINT8) "KEY_CACHE_PARTITION_TOKEN",
        (pANTLR3_UINT8) "LABEL_TOKEN",
        (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) "LINEBREAK",
        (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) "LONG_NUMBER",
        (pANTLR3_UINT8) "MINUS_OPERATOR",
        (pANTLR3_UINT8) "MOD_OPERATOR",
        (pANTLR3_UINT8) "MULTILINE_COMMENT",
        (pANTLR3_UINT8) "MULT_OPERATOR",
        (pANTLR3_UINT8) "NOT_EQUAL2_OPERATOR",
        (pANTLR3_UINT8) "NOT_EQUAL_OPERATOR",
        (pANTLR3_UINT8) "NULL_SAFE_EQUAL_OPERATOR",
        (pANTLR3_UINT8) "NUMBER",
        (pANTLR3_UINT8) "PAR_EXPRESSION_TOKEN",
        (pANTLR3_UINT8) "PLUS_OPERATOR",
        (pANTLR3_UINT8) "PRIVILEGE_TARGET_TOKEN",
        (pANTLR3_UINT8) "PROCEDURE_NAME_TOKEN",
        (pANTLR3_UINT8) "PROCEDURE_REF_TOKEN",
        (pANTLR3_UINT8) "ROUTINE_ALTER_OPTIONS",
        (pANTLR3_UINT8) "ROUTINE_CREATE_OPTIONS",
        (pANTLR3_UINT8) "RUNTIME_FUNCTION_TOKEN",
        (pANTLR3_UINT8) "SCHEMA_NAME_TOKEN",
        (pANTLR3_UINT8) "SCHEMA_REF_TOKEN",
        (pANTLR3_UINT8) "SELECT_EXPR_TOKEN",
        (pANTLR3_UINT8) "SERVER_NAME_TOKEN",
        (pANTLR3_UINT8) "SERVER_REF_TOKEN",
        (pANTLR3_UINT8) "SHIFT_LEFT_OPERATOR",
        (pANTLR3_UINT8) "SHIFT_RIGHT_OPERATOR",
        (pANTLR3_UINT8) "SIMPLE_IDENTIFIER",
        (pANTLR3_UINT8) "SINGLE_QUOTE",
        (pANTLR3_UINT8) "SLAVE_THREAD_OPTIONS_TOKEN",
        (pANTLR3_UINT8) "SOME_SYMBOL",
        (pANTLR3_UINT8) "STRING_NO_LINEBREAK_TOKEN",
        (pANTLR3_UINT8) "STRING_TOKEN",
        (pANTLR3_UINT8) "SUBQUERY_TOKEN",
        (pANTLR3_UINT8) "TABLESPACE_NAME_TOKEN",
        (pANTLR3_UINT8) "TABLESPACE_OPTIONS_TOKEN",
        (pANTLR3_UINT8) "TABLESPACE_REF_TOKEN",
        (pANTLR3_UINT8) "TABLE_NAME_TOKEN",
        (pANTLR3_UINT8) "TABLE_REF_TOKEN",
        (pANTLR3_UINT8) "TRIGGER_NAME_TOKEN",
        (pANTLR3_UINT8) "TRIGGER_REF_TOKEN",
        (pANTLR3_UINT8) "UDF_CALL_TOKEN",
        (pANTLR3_UINT8) "UDF_NAME_TOKEN",
        (pANTLR3_UINT8) "ULONGLONG_NUMBER",
        (pANTLR3_UINT8) "UNDERSCORE_CHARSET",
        (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) "WHITESPACE",
        (pANTLR3_UINT8) "XA_ID_TOKEN"
       };



// 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_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_select_paren_derived_return
	select_paren_derived    (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_begin_work_return
	begin_work    (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_jsonOperator_return
	jsonOperator    (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_function_call_return
	function_call    (pMySQLParser ctx);
static 
 MySQLParser_function_call_expression_return
	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_return_statement_return
	return_statement    (pMySQLParser ctx);
static 
 MySQLParser_if_statement_return
	if_statement    (pMySQLParser ctx);
static 
 MySQLParser_if_body_return
	if_body    (pMySQLParser ctx);
static 
 MySQLParser_then_statement_return
	then_statement    (pMySQLParser ctx);
static 
 MySQLParser_compound_statement_list_return
	compound_statement_list    (pMySQLParser ctx);
static 
 MySQLParser_case_statement_return
	case_statement    (pMySQLParser ctx);
static 
 MySQLParser_else_statement_return
	else_statement    (pMySQLParser ctx);
static 
 MySQLParser_labeled_block_return
	labeled_block    (pMySQLParser ctx);
static 
 MySQLParser_unlabeled_block_return
	unlabeled_block    (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_labeled_control_return
	labeled_control    (pMySQLParser ctx);
static 
 MySQLParser_unlabeled_control_return
	unlabeled_control    (pMySQLParser ctx);
static 
 MySQLParser_loop_block_return
	loop_block    (pMySQLParser ctx);
static 
 MySQLParser_while_do_block_return
	while_do_block    (pMySQLParser ctx);
static 
 MySQLParser_repeat_until_block_return
	repeat_until_block    (pMySQLParser ctx);
static 
 MySQLParser_sp_declarations_return
	sp_declarations    (pMySQLParser ctx);
static 
 MySQLParser_sp_declaration_return
	sp_declaration    (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_handler_declaration_return
	handler_declaration    (pMySQLParser ctx);
static 
 MySQLParser_handler_condition_return
	handler_condition    (pMySQLParser ctx);
static 
 MySQLParser_cursor_declaration_return
	cursor_declaration    (pMySQLParser ctx);
static 
 MySQLParser_iterate_statement_return
	iterate_statement    (pMySQLParser ctx);
static 
 MySQLParser_leave_statement_return
	leave_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_open_return
	cursor_open    (pMySQLParser ctx);
static 
 MySQLParser_cursor_close_return
	cursor_close    (pMySQLParser ctx);
static 
 MySQLParser_cursor_fetch_return
	cursor_fetch    (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_dot_identifier_return
	dot_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_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->select_paren_derived	= select_paren_derived;
    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->begin_work	= begin_work;
    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->jsonOperator	= jsonOperator;
    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->function_call	= function_call;
    ctx->function_call_expression	= 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->return_statement	= return_statement;
    ctx->if_statement	= if_statement;
    ctx->if_body	= if_body;
    ctx->then_statement	= then_statement;
    ctx->compound_statement_list	= compound_statement_list;
    ctx->case_statement	= case_statement;
    ctx->else_statement	= else_statement;
    ctx->labeled_block	= labeled_block;
    ctx->unlabeled_block	= unlabeled_block;
    ctx->label	= label;
    ctx->label_identifier	= label_identifier;
    ctx->begin_end_block	= begin_end_block;
    ctx->labeled_control	= labeled_control;
    ctx->unlabeled_control	= unlabeled_control;
    ctx->loop_block	= loop_block;
    ctx->while_do_block	= while_do_block;
    ctx->repeat_until_block	= repeat_until_block;
    ctx->sp_declarations	= sp_declarations;
    ctx->sp_declaration	= sp_declaration;
    ctx->variable_declaration	= variable_declaration;
    ctx->condition_declaration	= condition_declaration;
    ctx->sp_condition	= sp_condition;
    ctx->sqlstate	= sqlstate;
    ctx->handler_declaration	= handler_declaration;
    ctx->handler_condition	= handler_condition;
    ctx->cursor_declaration	= cursor_declaration;
    ctx->iterate_statement	= iterate_statement;
    ctx->leave_statement	= leave_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_open	= cursor_open;
    ctx->cursor_close	= cursor_close;
    ctx->cursor_fetch	= cursor_fetch;
    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->dot_identifier	= dot_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;
     
     // Own reset + free functions for clean up.
     ctx->free = freeParser;
     ctx->reset = resetParser;

    /* 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;
}



      static void resetParser(pMySQLParser ctx)
      {
        RECOGNIZER->reset(RECOGNIZER);
        
        // The generated code does not account for the vector factory and the tree adaptor
        // which can grow endlessly, if not reset too. They exist however only if an AST is built.
        ctx->vectors->close(ctx->vectors);
        ctx->vectors = antlr3VectorFactoryNew(0);

        ADAPTOR->free(ADAPTOR);
        ADAPTOR = ANTLR3_TREE_ADAPTORNew(INPUT->tokenSource->strFactory);
      }
      
      static void freeParser(pMySQLParser ctx)
      {
        ctx->vectors->close(ctx->vectors);
        ADAPTOR->free(ADAPTOR);
        ctx->pParser->free(ctx->pParser);
        ANTLR3_FREE(ctx);
      }


/* Declare the bitsets
 */
/** Bitset defining follow set for error recovery in rule state: FOLLOW_statement_in_query457  */
static	ANTLR3_BITWORD FOLLOW_statement_in_query457_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000200000) };
static  ANTLR3_BITSET_LIST FOLLOW_statement_in_query457	= { FOLLOW_statement_in_query457_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_begin_work_in_query461  */
static	ANTLR3_BITWORD FOLLOW_begin_work_in_query461_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000200000) };
static  ANTLR3_BITSET_LIST FOLLOW_begin_work_in_query461	= { FOLLOW_begin_work_in_query461_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SEMICOLON_SYMBOL_in_query464  */
static	ANTLR3_BITWORD FOLLOW_SEMICOLON_SYMBOL_in_query464_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SEMICOLON_SYMBOL_in_query464	= { FOLLOW_SEMICOLON_SYMBOL_in_query464_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EOF_in_query469  */
static	ANTLR3_BITWORD FOLLOW_EOF_in_query469_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EOF_in_query469	= { FOLLOW_EOF_in_query469_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_statement_in_statement480  */
static	ANTLR3_BITWORD FOLLOW_alter_statement_in_statement480_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_statement_in_statement480	= { FOLLOW_alter_statement_in_statement480_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_statement_in_statement485  */
static	ANTLR3_BITWORD FOLLOW_create_statement_in_statement485_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_create_statement_in_statement485	= { FOLLOW_create_statement_in_statement485_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_drop_statement_in_statement490  */
static	ANTLR3_BITWORD FOLLOW_drop_statement_in_statement490_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_drop_statement_in_statement490	= { FOLLOW_drop_statement_in_statement490_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_rename_table_statement_in_statement495  */
static	ANTLR3_BITWORD FOLLOW_rename_table_statement_in_statement495_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_rename_table_statement_in_statement495	= { FOLLOW_rename_table_statement_in_statement495_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_truncate_table_statement_in_statement500  */
static	ANTLR3_BITWORD FOLLOW_truncate_table_statement_in_statement500_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_truncate_table_statement_in_statement500	= { FOLLOW_truncate_table_statement_in_statement500_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_call_statement_in_statement509  */
static	ANTLR3_BITWORD FOLLOW_call_statement_in_statement509_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_call_statement_in_statement509	= { FOLLOW_call_statement_in_statement509_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_delete_statement_in_statement514  */
static	ANTLR3_BITWORD FOLLOW_delete_statement_in_statement514_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_delete_statement_in_statement514	= { FOLLOW_delete_statement_in_statement514_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_do_statement_in_statement519  */
static	ANTLR3_BITWORD FOLLOW_do_statement_in_statement519_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_do_statement_in_statement519	= { FOLLOW_do_statement_in_statement519_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_handler_statement_in_statement524  */
static	ANTLR3_BITWORD FOLLOW_handler_statement_in_statement524_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_handler_statement_in_statement524	= { FOLLOW_handler_statement_in_statement524_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_insert_statement_in_statement529  */
static	ANTLR3_BITWORD FOLLOW_insert_statement_in_statement529_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_insert_statement_in_statement529	= { FOLLOW_insert_statement_in_statement529_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_load_statement_in_statement534  */
static	ANTLR3_BITWORD FOLLOW_load_statement_in_statement534_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_load_statement_in_statement534	= { FOLLOW_load_statement_in_statement534_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_replace_statement_in_statement539  */
static	ANTLR3_BITWORD FOLLOW_replace_statement_in_statement539_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_replace_statement_in_statement539	= { FOLLOW_replace_statement_in_statement539_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_statement_in_statement544  */
static	ANTLR3_BITWORD FOLLOW_select_statement_in_statement544_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_select_statement_in_statement544	= { FOLLOW_select_statement_in_statement544_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_update_statement_in_statement549  */
static	ANTLR3_BITWORD FOLLOW_update_statement_in_statement549_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_update_statement_in_statement549	= { FOLLOW_update_statement_in_statement549_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partitioning_in_statement557  */
static	ANTLR3_BITWORD FOLLOW_partitioning_in_statement557_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_partitioning_in_statement557	= { FOLLOW_partitioning_in_statement557_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_transaction_or_locking_statement_in_statement567  */
static	ANTLR3_BITWORD FOLLOW_transaction_or_locking_statement_in_statement567_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_transaction_or_locking_statement_in_statement567	= { FOLLOW_transaction_or_locking_statement_in_statement567_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_replication_statement_in_statement574  */
static	ANTLR3_BITWORD FOLLOW_replication_statement_in_statement574_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_replication_statement_in_statement574	= { FOLLOW_replication_statement_in_statement574_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_prepared_statement_in_statement581  */
static	ANTLR3_BITWORD FOLLOW_prepared_statement_in_statement581_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_prepared_statement_in_statement581	= { FOLLOW_prepared_statement_in_statement581_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_account_management_statement_in_statement590  */
static	ANTLR3_BITWORD FOLLOW_account_management_statement_in_statement590_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_account_management_statement_in_statement590	= { FOLLOW_account_management_statement_in_statement590_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_administration_statement_in_statement595  */
static	ANTLR3_BITWORD FOLLOW_table_administration_statement_in_statement595_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_administration_statement_in_statement595	= { FOLLOW_table_administration_statement_in_statement595_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_install_uninstall_statment_in_statement600  */
static	ANTLR3_BITWORD FOLLOW_install_uninstall_statment_in_statement600_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_install_uninstall_statment_in_statement600	= { FOLLOW_install_uninstall_statment_in_statement600_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_statement_in_statement607  */
static	ANTLR3_BITWORD FOLLOW_set_statement_in_statement607_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_statement_in_statement607	= { FOLLOW_set_statement_in_statement607_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_show_statement_in_statement613  */
static	ANTLR3_BITWORD FOLLOW_show_statement_in_statement613_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_show_statement_in_statement613	= { FOLLOW_show_statement_in_statement613_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_other_administrative_statement_in_statement618  */
static	ANTLR3_BITWORD FOLLOW_other_administrative_statement_in_statement618_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_other_administrative_statement_in_statement618	= { FOLLOW_other_administrative_statement_in_statement618_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_utility_statement_in_statement627  */
static	ANTLR3_BITWORD FOLLOW_utility_statement_in_statement627_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_utility_statement_in_statement627	= { FOLLOW_utility_statement_in_statement627_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_get_diagnostics_in_statement636  */
static	ANTLR3_BITWORD FOLLOW_get_diagnostics_in_statement636_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_get_diagnostics_in_statement636	= { FOLLOW_get_diagnostics_in_statement636_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_signal_statement_in_statement643  */
static	ANTLR3_BITWORD FOLLOW_signal_statement_in_statement643_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_signal_statement_in_statement643	= { FOLLOW_signal_statement_in_statement643_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_resignal_statement_in_statement650  */
static	ANTLR3_BITWORD FOLLOW_resignal_statement_in_statement650_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_resignal_statement_in_statement650	= { FOLLOW_resignal_statement_in_statement650_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALTER_SYMBOL_in_alter_statement662  */
static	ANTLR3_BITWORD FOLLOW_ALTER_SYMBOL_in_alter_statement662_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(0x0000000800000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x2000060000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_ALTER_SYMBOL_in_alter_statement662	= { FOLLOW_ALTER_SYMBOL_in_alter_statement662_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_database_in_alter_statement670  */
static	ANTLR3_BITWORD FOLLOW_alter_database_in_alter_statement670_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_database_in_alter_statement670	= { FOLLOW_alter_database_in_alter_statement670_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_log_file_group_in_alter_statement675  */
static	ANTLR3_BITWORD FOLLOW_alter_log_file_group_in_alter_statement675_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_log_file_group_in_alter_statement675	= { FOLLOW_alter_log_file_group_in_alter_statement675_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FUNCTION_SYMBOL_in_alter_statement680  */
static	ANTLR3_BITWORD FOLLOW_FUNCTION_SYMBOL_in_alter_statement680_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_FUNCTION_SYMBOL_in_alter_statement680	= { FOLLOW_FUNCTION_SYMBOL_in_alter_statement680_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_function_ref_in_alter_statement682  */
static	ANTLR3_BITWORD FOLLOW_function_ref_in_alter_statement682_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(0x0040000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000804000000), ANTLR3_UINT64_LIT(0x0000010000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_function_ref_in_alter_statement682	= { FOLLOW_function_ref_in_alter_statement682_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_routine_alter_options_in_alter_statement684  */
static	ANTLR3_BITWORD FOLLOW_routine_alter_options_in_alter_statement684_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_routine_alter_options_in_alter_statement684	= { FOLLOW_routine_alter_options_in_alter_statement684_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PROCEDURE_SYMBOL_in_alter_statement690  */
static	ANTLR3_BITWORD FOLLOW_PROCEDURE_SYMBOL_in_alter_statement690_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_PROCEDURE_SYMBOL_in_alter_statement690	= { FOLLOW_PROCEDURE_SYMBOL_in_alter_statement690_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_procedure_ref_in_alter_statement692  */
static	ANTLR3_BITWORD FOLLOW_procedure_ref_in_alter_statement692_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(0x0040000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000804000000), ANTLR3_UINT64_LIT(0x0000010000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_procedure_ref_in_alter_statement692	= { FOLLOW_procedure_ref_in_alter_statement692_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_routine_alter_options_in_alter_statement694  */
static	ANTLR3_BITWORD FOLLOW_routine_alter_options_in_alter_statement694_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_routine_alter_options_in_alter_statement694	= { FOLLOW_routine_alter_options_in_alter_statement694_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_server_in_alter_statement700  */
static	ANTLR3_BITWORD FOLLOW_alter_server_in_alter_statement700_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_server_in_alter_statement700	= { FOLLOW_alter_server_in_alter_statement700_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_table_in_alter_statement705  */
static	ANTLR3_BITWORD FOLLOW_alter_table_in_alter_statement705_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_table_in_alter_statement705	= { FOLLOW_alter_table_in_alter_statement705_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_tablespace_in_alter_statement710  */
static	ANTLR3_BITWORD FOLLOW_alter_tablespace_in_alter_statement710_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_tablespace_in_alter_statement710	= { FOLLOW_alter_tablespace_in_alter_statement710_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_event_in_alter_statement717  */
static	ANTLR3_BITWORD FOLLOW_alter_event_in_alter_statement717_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_event_in_alter_statement717	= { FOLLOW_alter_event_in_alter_statement717_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_view_in_alter_statement722  */
static	ANTLR3_BITWORD FOLLOW_alter_view_in_alter_statement722_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_view_in_alter_statement722	= { FOLLOW_alter_view_in_alter_statement722_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATABASE_SYMBOL_in_alter_database735  */
static	ANTLR3_BITWORD FOLLOW_DATABASE_SYMBOL_in_alter_database735_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_DATABASE_SYMBOL_in_alter_database735	= { FOLLOW_DATABASE_SYMBOL_in_alter_database735_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_schema_ref_in_alter_database737  */
static	ANTLR3_BITWORD FOLLOW_schema_ref_in_alter_database737_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(0x0002000000050000) };
static  ANTLR3_BITSET_LIST FOLLOW_schema_ref_in_alter_database737	= { FOLLOW_schema_ref_in_alter_database737_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_database_option_in_alter_database745  */
static	ANTLR3_BITWORD FOLLOW_database_option_in_alter_database745_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(0x0002000000050000) };
static  ANTLR3_BITSET_LIST FOLLOW_database_option_in_alter_database745	= { FOLLOW_database_option_in_alter_database745_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UPGRADE_SYMBOL_in_alter_database752  */
static	ANTLR3_BITWORD FOLLOW_UPGRADE_SYMBOL_in_alter_database752_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_UPGRADE_SYMBOL_in_alter_database752	= { FOLLOW_UPGRADE_SYMBOL_in_alter_database752_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATA_SYMBOL_in_alter_database754  */
static	ANTLR3_BITWORD FOLLOW_DATA_SYMBOL_in_alter_database754_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DATA_SYMBOL_in_alter_database754	= { FOLLOW_DATA_SYMBOL_in_alter_database754_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DIRECTORY_SYMBOL_in_alter_database756  */
static	ANTLR3_BITWORD FOLLOW_DIRECTORY_SYMBOL_in_alter_database756_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_database756	= { FOLLOW_DIRECTORY_SYMBOL_in_alter_database756_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NAME_SYMBOL_in_alter_database758  */
static	ANTLR3_BITWORD FOLLOW_NAME_SYMBOL_in_alter_database758_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_NAME_SYMBOL_in_alter_database758	= { FOLLOW_NAME_SYMBOL_in_alter_database758_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_definer_clause_in_alter_event770  */
static	ANTLR3_BITWORD FOLLOW_definer_clause_in_alter_event770_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_definer_clause_in_alter_event770	= { FOLLOW_definer_clause_in_alter_event770_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EVENT_SYMBOL_in_alter_event775  */
static	ANTLR3_BITWORD FOLLOW_EVENT_SYMBOL_in_alter_event775_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_EVENT_SYMBOL_in_alter_event775	= { FOLLOW_EVENT_SYMBOL_in_alter_event775_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_event_ref_in_alter_event777  */
static	ANTLR3_BITWORD FOLLOW_event_ref_in_alter_event777_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(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_event_ref_in_alter_event777	= { FOLLOW_event_ref_in_alter_event777_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_alter_event782  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_alter_event782_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_event782	= { FOLLOW_ON_SYMBOL_in_alter_event782_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SCHEDULE_SYMBOL_in_alter_event784  */
static	ANTLR3_BITWORD FOLLOW_SCHEDULE_SYMBOL_in_alter_event784_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000008), ANTLR3_UINT64_LIT(0x0000000000000100) };
static  ANTLR3_BITSET_LIST FOLLOW_SCHEDULE_SYMBOL_in_alter_event784	= { FOLLOW_SCHEDULE_SYMBOL_in_alter_event784_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_schedule_in_alter_event786  */
static	ANTLR3_BITWORD FOLLOW_schedule_in_alter_event786_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(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_schedule_in_alter_event786	= { FOLLOW_schedule_in_alter_event786_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_alter_event793  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_alter_event793_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ON_SYMBOL_in_alter_event793	= { FOLLOW_ON_SYMBOL_in_alter_event793_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMPLETION_SYMBOL_in_alter_event795  */
static	ANTLR3_BITWORD FOLLOW_COMPLETION_SYMBOL_in_alter_event795_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(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMPLETION_SYMBOL_in_alter_event795	= { FOLLOW_COMPLETION_SYMBOL_in_alter_event795_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NOT_SYMBOL_in_alter_event797  */
static	ANTLR3_BITWORD FOLLOW_NOT_SYMBOL_in_alter_event797_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_event797	= { FOLLOW_NOT_SYMBOL_in_alter_event797_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PRESERVE_SYMBOL_in_alter_event800  */
static	ANTLR3_BITWORD FOLLOW_PRESERVE_SYMBOL_in_alter_event800_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(0x0000000000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_PRESERVE_SYMBOL_in_alter_event800	= { FOLLOW_PRESERVE_SYMBOL_in_alter_event800_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RENAME_SYMBOL_in_alter_event807  */
static	ANTLR3_BITWORD FOLLOW_RENAME_SYMBOL_in_alter_event807_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_RENAME_SYMBOL_in_alter_event807	= { FOLLOW_RENAME_SYMBOL_in_alter_event807_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TO_SYMBOL_in_alter_event809  */
static	ANTLR3_BITWORD FOLLOW_TO_SYMBOL_in_alter_event809_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_TO_SYMBOL_in_alter_event809	= { FOLLOW_TO_SYMBOL_in_alter_event809_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_event811  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_event811_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000044002), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_alter_event811	= { FOLLOW_identifier_in_alter_event811_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ENABLE_SYMBOL_in_alter_event818  */
static	ANTLR3_BITWORD FOLLOW_ENABLE_SYMBOL_in_alter_event818_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000044002) };
static  ANTLR3_BITSET_LIST FOLLOW_ENABLE_SYMBOL_in_alter_event818	= { FOLLOW_ENABLE_SYMBOL_in_alter_event818_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DISABLE_SYMBOL_in_alter_event822  */
static	ANTLR3_BITWORD FOLLOW_DISABLE_SYMBOL_in_alter_event822_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DISABLE_SYMBOL_in_alter_event822	= { FOLLOW_DISABLE_SYMBOL_in_alter_event822_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_alter_event825  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_alter_event825_bits[]	= { ANTLR3_UINT64_LIT(0x0001000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ON_SYMBOL_in_alter_event825	= { FOLLOW_ON_SYMBOL_in_alter_event825_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SLAVE_SYMBOL_in_alter_event827  */
static	ANTLR3_BITWORD FOLLOW_SLAVE_SYMBOL_in_alter_event827_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000044002) };
static  ANTLR3_BITSET_LIST FOLLOW_SLAVE_SYMBOL_in_alter_event827	= { FOLLOW_SLAVE_SYMBOL_in_alter_event827_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMENT_SYMBOL_in_alter_event836  */
static	ANTLR3_BITWORD FOLLOW_COMMENT_SYMBOL_in_alter_event836_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMENT_SYMBOL_in_alter_event836	= { FOLLOW_COMMENT_SYMBOL_in_alter_event836_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_alter_event838  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_alter_event838_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000040002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_alter_event838	= { FOLLOW_string_literal_in_alter_event838_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DO_SYMBOL_in_alter_event845  */
static	ANTLR3_BITWORD FOLLOW_DO_SYMBOL_in_alter_event845_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(0x0238000004025400), ANTLR3_UINT64_LIT(0x0508001020300100), ANTLR3_UINT64_LIT(0x4001400000000211), ANTLR3_UINT64_LIT(0x0000000034106BC0), ANTLR3_UINT64_LIT(0x00100010000A8000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_DO_SYMBOL_in_alter_event845	= { FOLLOW_DO_SYMBOL_in_alter_event845_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_compound_statement_in_alter_event847  */
static	ANTLR3_BITWORD FOLLOW_compound_statement_in_alter_event847_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_compound_statement_in_alter_event847	= { FOLLOW_compound_statement_in_alter_event847_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOGFILE_SYMBOL_in_alter_log_file_group858  */
static	ANTLR3_BITWORD FOLLOW_LOGFILE_SYMBOL_in_alter_log_file_group858_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_LOGFILE_SYMBOL_in_alter_log_file_group858	= { FOLLOW_LOGFILE_SYMBOL_in_alter_log_file_group858_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GROUP_SYMBOL_in_alter_log_file_group860  */
static	ANTLR3_BITWORD FOLLOW_GROUP_SYMBOL_in_alter_log_file_group860_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_GROUP_SYMBOL_in_alter_log_file_group860	= { FOLLOW_GROUP_SYMBOL_in_alter_log_file_group860_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_logfile_group_ref_in_alter_log_file_group862  */
static	ANTLR3_BITWORD FOLLOW_logfile_group_ref_in_alter_log_file_group862_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_group862	= { FOLLOW_logfile_group_ref_in_alter_log_file_group862_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ADD_SYMBOL_in_alter_log_file_group864  */
static	ANTLR3_BITWORD FOLLOW_ADD_SYMBOL_in_alter_log_file_group864_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_group864	= { FOLLOW_ADD_SYMBOL_in_alter_log_file_group864_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNDOFILE_SYMBOL_in_alter_log_file_group866  */
static	ANTLR3_BITWORD FOLLOW_UNDOFILE_SYMBOL_in_alter_log_file_group866_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_UNDOFILE_SYMBOL_in_alter_log_file_group866	= { FOLLOW_UNDOFILE_SYMBOL_in_alter_log_file_group866_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_alter_log_file_group868  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_alter_log_file_group868_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_group868	= { FOLLOW_string_literal_in_alter_log_file_group868_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INITIAL_SIZE_SYMBOL_in_alter_log_file_group873  */
static	ANTLR3_BITWORD FOLLOW_INITIAL_SIZE_SYMBOL_in_alter_log_file_group873_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0400011000900000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INITIAL_SIZE_SYMBOL_in_alter_log_file_group873	= { FOLLOW_INITIAL_SIZE_SYMBOL_in_alter_log_file_group873_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_alter_log_file_group875  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_alter_log_file_group875_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0400011000100000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_alter_log_file_group875	= { FOLLOW_EQUAL_OPERATOR_in_alter_log_file_group875_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_size_number_in_alter_log_file_group878  */
static	ANTLR3_BITWORD FOLLOW_size_number_in_alter_log_file_group878_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_group878	= { FOLLOW_size_number_in_alter_log_file_group878_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WAIT_SYMBOL_in_alter_log_file_group882  */
static	ANTLR3_BITWORD FOLLOW_WAIT_SYMBOL_in_alter_log_file_group882_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_WAIT_SYMBOL_in_alter_log_file_group882	= { FOLLOW_WAIT_SYMBOL_in_alter_log_file_group882_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ENGINE_SYMBOL_in_alter_log_file_group885  */
static	ANTLR3_BITWORD FOLLOW_ENGINE_SYMBOL_in_alter_log_file_group885_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000900000) };
static  ANTLR3_BITSET_LIST FOLLOW_ENGINE_SYMBOL_in_alter_log_file_group885	= { FOLLOW_ENGINE_SYMBOL_in_alter_log_file_group885_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_alter_log_file_group887  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_alter_log_file_group887_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_alter_log_file_group887	= { FOLLOW_EQUAL_OPERATOR_in_alter_log_file_group887_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_engine_ref_in_alter_log_file_group890  */
static	ANTLR3_BITWORD FOLLOW_engine_ref_in_alter_log_file_group890_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_engine_ref_in_alter_log_file_group890	= { FOLLOW_engine_ref_in_alter_log_file_group890_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SERVER_SYMBOL_in_alter_server901  */
static	ANTLR3_BITWORD FOLLOW_SERVER_SYMBOL_in_alter_server901_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_SERVER_SYMBOL_in_alter_server901	= { FOLLOW_SERVER_SYMBOL_in_alter_server901_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_server_ref_in_alter_server903  */
static	ANTLR3_BITWORD FOLLOW_server_ref_in_alter_server903_bits[]	= { ANTLR3_UINT64_LIT(0x0000000100000000) };
static  ANTLR3_BITSET_LIST FOLLOW_server_ref_in_alter_server903	= { FOLLOW_server_ref_in_alter_server903_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_server_options_in_alter_server905  */
static	ANTLR3_BITWORD FOLLOW_server_options_in_alter_server905_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_server_options_in_alter_server905	= { FOLLOW_server_options_in_alter_server905_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_online_option_in_alter_table914  */
static	ANTLR3_BITWORD FOLLOW_online_option_in_alter_table914_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_online_option_in_alter_table914	= { FOLLOW_online_option_in_alter_table914_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IGNORE_SYMBOL_in_alter_table917  */
static	ANTLR3_BITWORD FOLLOW_IGNORE_SYMBOL_in_alter_table917_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_IGNORE_SYMBOL_in_alter_table917	= { FOLLOW_IGNORE_SYMBOL_in_alter_table917_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLE_SYMBOL_in_alter_table920  */
static	ANTLR3_BITWORD FOLLOW_TABLE_SYMBOL_in_alter_table920_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLE_SYMBOL_in_alter_table920	= { FOLLOW_TABLE_SYMBOL_in_alter_table920_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_alter_table922  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_alter_table922_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(0x0202000001074000), ANTLR3_UINT64_LIT(0x0000000080002002), ANTLR3_UINT64_LIT(0x0009000000000010), ANTLR3_UINT64_LIT(0x0000000000000080), ANTLR3_UINT64_LIT(0x0000000000002000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_in_alter_table922	= { FOLLOW_table_ref_in_alter_table922_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_table_commands_in_alter_table924  */
static	ANTLR3_BITWORD FOLLOW_alter_table_commands_in_alter_table924_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_table_commands_in_alter_table924	= { FOLLOW_alter_table_commands_in_alter_table924_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DISCARD_SYMBOL_in_alter_table_commands934  */
static	ANTLR3_BITWORD FOLLOW_DISCARD_SYMBOL_in_alter_table_commands934_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_commands934	= { FOLLOW_DISCARD_SYMBOL_in_alter_table_commands934_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLESPACE_SYMBOL_in_alter_table_commands936  */
static	ANTLR3_BITWORD FOLLOW_TABLESPACE_SYMBOL_in_alter_table_commands936_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLESPACE_SYMBOL_in_alter_table_commands936	= { FOLLOW_TABLESPACE_SYMBOL_in_alter_table_commands936_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IMPORT_SYMBOL_in_alter_table_commands941  */
static	ANTLR3_BITWORD FOLLOW_IMPORT_SYMBOL_in_alter_table_commands941_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_commands941	= { FOLLOW_IMPORT_SYMBOL_in_alter_table_commands941_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLESPACE_SYMBOL_in_alter_table_commands943  */
static	ANTLR3_BITWORD FOLLOW_TABLESPACE_SYMBOL_in_alter_table_commands943_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLESPACE_SYMBOL_in_alter_table_commands943	= { FOLLOW_TABLESPACE_SYMBOL_in_alter_table_commands943_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_table_list_item_in_alter_table_commands948  */
static	ANTLR3_BITWORD FOLLOW_alter_table_list_item_in_alter_table_commands948_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(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_alter_table_list_item_in_alter_table_commands948	= { FOLLOW_alter_table_list_item_in_alter_table_commands948_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_alter_table_commands951  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_alter_table_commands951_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(0x0202000001054000), ANTLR3_UINT64_LIT(0x0000000080002000), ANTLR3_UINT64_LIT(0x0008000000000010), ANTLR3_UINT64_LIT(0x0000000000000080), ANTLR3_UINT64_LIT(0x0000000000002000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_alter_table_commands951	= { FOLLOW_COMMA_SYMBOL_in_alter_table_commands951_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_table_list_item_in_alter_table_commands953  */
static	ANTLR3_BITWORD FOLLOW_alter_table_list_item_in_alter_table_commands953_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(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_alter_table_list_item_in_alter_table_commands953	= { FOLLOW_alter_table_list_item_in_alter_table_commands953_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partitioning_in_alter_table_commands958  */
static	ANTLR3_BITWORD FOLLOW_partitioning_in_alter_table_commands958_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_partitioning_in_alter_table_commands958	= { FOLLOW_partitioning_in_alter_table_commands958_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_remove_partitioning_in_alter_table_commands963  */
static	ANTLR3_BITWORD FOLLOW_remove_partitioning_in_alter_table_commands963_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_remove_partitioning_in_alter_table_commands963	= { FOLLOW_remove_partitioning_in_alter_table_commands963_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_remove_partitioning_in_alter_table_commands969  */
static	ANTLR3_BITWORD FOLLOW_remove_partitioning_in_alter_table_commands969_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_remove_partitioning_in_alter_table_commands969	= { FOLLOW_remove_partitioning_in_alter_table_commands969_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partitioning_in_alter_table_commands974  */
static	ANTLR3_BITWORD FOLLOW_partitioning_in_alter_table_commands974_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_partitioning_in_alter_table_commands974	= { FOLLOW_partitioning_in_alter_table_commands974_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_partition_in_alter_table_commands981  */
static	ANTLR3_BITWORD FOLLOW_alter_partition_in_alter_table_commands981_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_partition_in_alter_table_commands981	= { FOLLOW_alter_partition_in_alter_table_commands981_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_table_list_entry_in_alter_table_list_item990  */
static	ANTLR3_BITWORD FOLLOW_alter_table_list_entry_in_alter_table_list_item990_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_table_list_entry_in_alter_table_list_item990	= { FOLLOW_alter_table_list_entry_in_alter_table_list_item990_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_table_options_in_alter_table_list_entry1007  */
static	ANTLR3_BITWORD FOLLOW_alter_table_options_in_alter_table_list_entry1007_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_table_options_in_alter_table_list_entry1007	= { FOLLOW_alter_table_options_in_alter_table_list_entry1007_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ADD_SYMBOL_in_alter_table_list_entry1012  */
static	ANTLR3_BITWORD FOLLOW_ADD_SYMBOL_in_alter_table_list_entry1012_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000080000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_ADD_SYMBOL_in_alter_table_list_entry1012	= { FOLLOW_ADD_SYMBOL_in_alter_table_list_entry1012_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLUMN_SYMBOL_in_alter_table_list_entry1014  */
static	ANTLR3_BITWORD FOLLOW_COLUMN_SYMBOL_in_alter_table_list_entry1014_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_COLUMN_SYMBOL_in_alter_table_list_entry1014	= { FOLLOW_COLUMN_SYMBOL_in_alter_table_list_entry1014_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_definition_in_alter_table_list_entry1024  */
static	ANTLR3_BITWORD FOLLOW_column_definition_in_alter_table_list_entry1024_bits[]	= { ANTLR3_UINT64_LIT(0x2000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000200000) };
static  ANTLR3_BITSET_LIST FOLLOW_column_definition_in_alter_table_list_entry1024	= { FOLLOW_column_definition_in_alter_table_list_entry1024_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FIRST_SYMBOL_in_alter_table_list_entry1027  */
static	ANTLR3_BITWORD FOLLOW_FIRST_SYMBOL_in_alter_table_list_entry1027_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_FIRST_SYMBOL_in_alter_table_list_entry1027	= { FOLLOW_FIRST_SYMBOL_in_alter_table_list_entry1027_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AFTER_SYMBOL_in_alter_table_list_entry1031  */
static	ANTLR3_BITWORD FOLLOW_AFTER_SYMBOL_in_alter_table_list_entry1031_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_AFTER_SYMBOL_in_alter_table_list_entry1031	= { FOLLOW_AFTER_SYMBOL_in_alter_table_list_entry1031_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_table_list_entry1033  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_table_list_entry1033_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_alter_table_list_entry1033	= { FOLLOW_identifier_in_alter_table_list_entry1033_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_alter_table_list_entry1042  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_alter_table_list_entry1042_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_alter_table_list_entry1042	= { FOLLOW_OPEN_PAR_SYMBOL_in_alter_table_list_entry1042_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_definition_in_alter_table_list_entry1044  */
static	ANTLR3_BITWORD FOLLOW_column_definition_in_alter_table_list_entry1044_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_column_definition_in_alter_table_list_entry1044	= { FOLLOW_column_definition_in_alter_table_list_entry1044_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_alter_table_list_entry1047  */
static	ANTLR3_BITWORD FOLLOW_COMMA_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_alter_table_list_entry1047	= { FOLLOW_COMMA_SYMBOL_in_alter_table_list_entry1047_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_definition_in_alter_table_list_entry1049  */
static	ANTLR3_BITWORD FOLLOW_column_definition_in_alter_table_list_entry1049_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_column_definition_in_alter_table_list_entry1049	= { FOLLOW_column_definition_in_alter_table_list_entry1049_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_alter_table_list_entry1053  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_alter_table_list_entry1053_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_alter_table_list_entry1053	= { FOLLOW_CLOSE_PAR_SYMBOL_in_alter_table_list_entry1053_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ADD_SYMBOL_in_alter_table_list_entry1062  */
static	ANTLR3_BITWORD FOLLOW_ADD_SYMBOL_in_alter_table_list_entry1062_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000420000), ANTLR3_UINT64_LIT(0x0080000080044000), ANTLR3_UINT64_LIT(0x1000000000000000), ANTLR3_UINT64_LIT(0x0000000100000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_ADD_SYMBOL_in_alter_table_list_entry1062	= { FOLLOW_ADD_SYMBOL_in_alter_table_list_entry1062_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_key_def_in_alter_table_list_entry1064  */
static	ANTLR3_BITWORD FOLLOW_key_def_in_alter_table_list_entry1064_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_key_def_in_alter_table_list_entry1064	= { FOLLOW_key_def_in_alter_table_list_entry1064_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALTER_SYMBOL_in_alter_table_list_entry1069  */
static	ANTLR3_BITWORD FOLLOW_ALTER_SYMBOL_in_alter_table_list_entry1069_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000080000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_ALTER_SYMBOL_in_alter_table_list_entry1069	= { FOLLOW_ALTER_SYMBOL_in_alter_table_list_entry1069_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLUMN_SYMBOL_in_alter_table_list_entry1071  */
static	ANTLR3_BITWORD FOLLOW_COLUMN_SYMBOL_in_alter_table_list_entry1071_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_COLUMN_SYMBOL_in_alter_table_list_entry1071	= { FOLLOW_COLUMN_SYMBOL_in_alter_table_list_entry1071_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_internal_ref_in_alter_table_list_entry1074  */
static	ANTLR3_BITWORD FOLLOW_column_internal_ref_in_alter_table_list_entry1074_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_column_internal_ref_in_alter_table_list_entry1074	= { FOLLOW_column_internal_ref_in_alter_table_list_entry1074_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SET_SYMBOL_in_alter_table_list_entry1077  */
static	ANTLR3_BITWORD FOLLOW_SET_SYMBOL_in_alter_table_list_entry1077_bits[]	= { ANTLR3_UINT64_LIT(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_SET_SYMBOL_in_alter_table_list_entry1077	= { FOLLOW_SET_SYMBOL_in_alter_table_list_entry1077_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_alter_table_list_entry1079  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_alter_table_list_entry1079_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000080), ANTLR3_UINT64_LIT(0x000000C040000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0020000000000400), ANTLR3_UINT64_LIT(0x0C00010810100800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_alter_table_list_entry1079	= { FOLLOW_DEFAULT_SYMBOL_in_alter_table_list_entry1079_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_signed_literal_in_alter_table_list_entry1081  */
static	ANTLR3_BITWORD FOLLOW_signed_literal_in_alter_table_list_entry1081_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_signed_literal_in_alter_table_list_entry1081	= { FOLLOW_signed_literal_in_alter_table_list_entry1081_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DROP_SYMBOL_in_alter_table_list_entry1085  */
static	ANTLR3_BITWORD FOLLOW_DROP_SYMBOL_in_alter_table_list_entry1085_bits[]	= { ANTLR3_UINT64_LIT(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_DROP_SYMBOL_in_alter_table_list_entry1085	= { FOLLOW_DROP_SYMBOL_in_alter_table_list_entry1085_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_alter_table_list_entry1087  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_alter_table_list_entry1087_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_alter_table_list_entry1087	= { FOLLOW_DEFAULT_SYMBOL_in_alter_table_list_entry1087_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHANGE_SYMBOL_in_alter_table_list_entry1093  */
static	ANTLR3_BITWORD FOLLOW_CHANGE_SYMBOL_in_alter_table_list_entry1093_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000080000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_CHANGE_SYMBOL_in_alter_table_list_entry1093	= { FOLLOW_CHANGE_SYMBOL_in_alter_table_list_entry1093_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLUMN_SYMBOL_in_alter_table_list_entry1095  */
static	ANTLR3_BITWORD FOLLOW_COLUMN_SYMBOL_in_alter_table_list_entry1095_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_COLUMN_SYMBOL_in_alter_table_list_entry1095	= { FOLLOW_COLUMN_SYMBOL_in_alter_table_list_entry1095_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_internal_ref_in_alter_table_list_entry1098  */
static	ANTLR3_BITWORD FOLLOW_column_internal_ref_in_alter_table_list_entry1098_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_column_internal_ref_in_alter_table_list_entry1098	= { FOLLOW_column_internal_ref_in_alter_table_list_entry1098_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_spec_in_alter_table_list_entry1100  */
static	ANTLR3_BITWORD FOLLOW_field_spec_in_alter_table_list_entry1100_bits[]	= { ANTLR3_UINT64_LIT(0x2000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000200000) };
static  ANTLR3_BITSET_LIST FOLLOW_field_spec_in_alter_table_list_entry1100	= { FOLLOW_field_spec_in_alter_table_list_entry1100_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FIRST_SYMBOL_in_alter_table_list_entry1103  */
static	ANTLR3_BITWORD FOLLOW_FIRST_SYMBOL_in_alter_table_list_entry1103_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_FIRST_SYMBOL_in_alter_table_list_entry1103	= { FOLLOW_FIRST_SYMBOL_in_alter_table_list_entry1103_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AFTER_SYMBOL_in_alter_table_list_entry1107  */
static	ANTLR3_BITWORD FOLLOW_AFTER_SYMBOL_in_alter_table_list_entry1107_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_AFTER_SYMBOL_in_alter_table_list_entry1107	= { FOLLOW_AFTER_SYMBOL_in_alter_table_list_entry1107_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_table_list_entry1109  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_table_list_entry1109_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_alter_table_list_entry1109	= { FOLLOW_identifier_in_alter_table_list_entry1109_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MODIFY_SYMBOL_in_alter_table_list_entry1116  */
static	ANTLR3_BITWORD FOLLOW_MODIFY_SYMBOL_in_alter_table_list_entry1116_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000080000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_MODIFY_SYMBOL_in_alter_table_list_entry1116	= { FOLLOW_MODIFY_SYMBOL_in_alter_table_list_entry1116_bits, 12	};
/** 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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_COLUMN_SYMBOL_in_alter_table_list_entry1118	= { FOLLOW_COLUMN_SYMBOL_in_alter_table_list_entry1118_bits, 12	};
/** 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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0003000000003400), ANTLR3_UINT64_LIT(0x0004100003400001), ANTLR3_UINT64_LIT(0x800100C380000000), ANTLR3_UINT64_LIT(0x0001000000000001), ANTLR3_UINT64_LIT(0x0100000091000000), ANTLR3_UINT64_LIT(0x0000400000010058), ANTLR3_UINT64_LIT(0x0000200000001000), ANTLR3_UINT64_LIT(0x0000010000070160), ANTLR3_UINT64_LIT(0x0000000084000008), ANTLR3_UINT64_LIT(0x0000000014000038), ANTLR3_UINT64_LIT(0x0000000000200000) };
static  ANTLR3_BITSET_LIST FOLLOW_column_internal_ref_in_alter_table_list_entry1121	= { FOLLOW_column_internal_ref_in_alter_table_list_entry1121_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_data_type_in_alter_table_list_entry1123  */
static	ANTLR3_BITWORD FOLLOW_data_type_in_alter_table_list_entry1123_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(0x0002000000040000), ANTLR3_UINT64_LIT(0x0080000000000000), ANTLR3_UINT64_LIT(0x100010C800000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_data_type_in_alter_table_list_entry1123	= { FOLLOW_data_type_in_alter_table_list_entry1123_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_attribute_in_alter_table_list_entry1125  */
static	ANTLR3_BITWORD FOLLOW_attribute_in_alter_table_list_entry1125_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(0x0002000000040000), ANTLR3_UINT64_LIT(0x0080000000000000), ANTLR3_UINT64_LIT(0x100010C800000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_attribute_in_alter_table_list_entry1125	= { FOLLOW_attribute_in_alter_table_list_entry1125_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FIRST_SYMBOL_in_alter_table_list_entry1129  */
static	ANTLR3_BITWORD FOLLOW_FIRST_SYMBOL_in_alter_table_list_entry1129_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_FIRST_SYMBOL_in_alter_table_list_entry1129	= { FOLLOW_FIRST_SYMBOL_in_alter_table_list_entry1129_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AFTER_SYMBOL_in_alter_table_list_entry1133  */
static	ANTLR3_BITWORD FOLLOW_AFTER_SYMBOL_in_alter_table_list_entry1133_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_AFTER_SYMBOL_in_alter_table_list_entry1133	= { FOLLOW_AFTER_SYMBOL_in_alter_table_list_entry1133_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_table_list_entry1135  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_table_list_entry1135_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_alter_table_list_entry1135	= { FOLLOW_identifier_in_alter_table_list_entry1135_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DROP_SYMBOL_in_alter_table_list_entry1142  */
static	ANTLR3_BITWORD FOLLOW_DROP_SYMBOL_in_alter_table_list_entry1142_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000080000), ANTLR3_UINT64_LIT(0x0080000080004000), ANTLR3_UINT64_LIT(0x1000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_DROP_SYMBOL_in_alter_table_list_entry1142	= { FOLLOW_DROP_SYMBOL_in_alter_table_list_entry1142_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_alter_table_list_entry1151  */
static	ANTLR3_BITWORD FOLLOW_set_in_alter_table_list_entry1151_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_alter_table_list_entry1151	= { FOLLOW_set_in_alter_table_list_entry1151_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_ref_in_alter_table_list_entry1159  */
static	ANTLR3_BITWORD FOLLOW_column_ref_in_alter_table_list_entry1159_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_column_ref_in_alter_table_list_entry1159	= { FOLLOW_column_ref_in_alter_table_list_entry1159_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLUMN_SYMBOL_in_alter_table_list_entry1166  */
static	ANTLR3_BITWORD FOLLOW_COLUMN_SYMBOL_in_alter_table_list_entry1166_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_COLUMN_SYMBOL_in_alter_table_list_entry1166	= { FOLLOW_COLUMN_SYMBOL_in_alter_table_list_entry1166_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_internal_ref_in_alter_table_list_entry1169  */
static	ANTLR3_BITWORD FOLLOW_column_internal_ref_in_alter_table_list_entry1169_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_column_internal_ref_in_alter_table_list_entry1169	= { FOLLOW_column_internal_ref_in_alter_table_list_entry1169_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PRIMARY_SYMBOL_in_alter_table_list_entry1176  */
static	ANTLR3_BITWORD FOLLOW_PRIMARY_SYMBOL_in_alter_table_list_entry1176_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0080000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PRIMARY_SYMBOL_in_alter_table_list_entry1176	= { FOLLOW_PRIMARY_SYMBOL_in_alter_table_list_entry1176_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_KEY_SYMBOL_in_alter_table_list_entry1178  */
static	ANTLR3_BITWORD FOLLOW_KEY_SYMBOL_in_alter_table_list_entry1178_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_KEY_SYMBOL_in_alter_table_list_entry1178	= { FOLLOW_KEY_SYMBOL_in_alter_table_list_entry1178_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOREIGN_SYMBOL_in_alter_table_list_entry1185  */
static	ANTLR3_BITWORD FOLLOW_FOREIGN_SYMBOL_in_alter_table_list_entry1185_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0080000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FOREIGN_SYMBOL_in_alter_table_list_entry1185	= { FOLLOW_FOREIGN_SYMBOL_in_alter_table_list_entry1185_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_KEY_SYMBOL_in_alter_table_list_entry1187  */
static	ANTLR3_BITWORD FOLLOW_KEY_SYMBOL_in_alter_table_list_entry1187_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_KEY_SYMBOL_in_alter_table_list_entry1187	= { FOLLOW_KEY_SYMBOL_in_alter_table_list_entry1187_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_ref_in_alter_table_list_entry1210  */
static	ANTLR3_BITWORD FOLLOW_column_ref_in_alter_table_list_entry1210_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_column_ref_in_alter_table_list_entry1210	= { FOLLOW_column_ref_in_alter_table_list_entry1210_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_ref_in_alter_table_list_entry1223  */
static	ANTLR3_BITWORD FOLLOW_column_ref_in_alter_table_list_entry1223_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_column_ref_in_alter_table_list_entry1223	= { FOLLOW_column_ref_in_alter_table_list_entry1223_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DISABLE_SYMBOL_in_alter_table_list_entry1239  */
static	ANTLR3_BITWORD FOLLOW_DISABLE_SYMBOL_in_alter_table_list_entry1239_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_DISABLE_SYMBOL_in_alter_table_list_entry1239	= { FOLLOW_DISABLE_SYMBOL_in_alter_table_list_entry1239_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_KEYS_SYMBOL_in_alter_table_list_entry1241  */
static	ANTLR3_BITWORD FOLLOW_KEYS_SYMBOL_in_alter_table_list_entry1241_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_KEYS_SYMBOL_in_alter_table_list_entry1241	= { FOLLOW_KEYS_SYMBOL_in_alter_table_list_entry1241_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ENABLE_SYMBOL_in_alter_table_list_entry1246  */
static	ANTLR3_BITWORD FOLLOW_ENABLE_SYMBOL_in_alter_table_list_entry1246_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_ENABLE_SYMBOL_in_alter_table_list_entry1246	= { FOLLOW_ENABLE_SYMBOL_in_alter_table_list_entry1246_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_KEYS_SYMBOL_in_alter_table_list_entry1248  */
static	ANTLR3_BITWORD FOLLOW_KEYS_SYMBOL_in_alter_table_list_entry1248_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_KEYS_SYMBOL_in_alter_table_list_entry1248	= { FOLLOW_KEYS_SYMBOL_in_alter_table_list_entry1248_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RENAME_SYMBOL_in_alter_table_list_entry1253  */
static	ANTLR3_BITWORD FOLLOW_RENAME_SYMBOL_in_alter_table_list_entry1253_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010800000000040), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_RENAME_SYMBOL_in_alter_table_list_entry1253	= { FOLLOW_RENAME_SYMBOL_in_alter_table_list_entry1253_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_alter_table_list_entry1264  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_alter_table_list_entry1264_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_in_alter_table_list_entry1264	= { FOLLOW_table_ref_in_alter_table_list_entry1264_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RENAME_SYMBOL_in_alter_table_list_entry1271  */
static	ANTLR3_BITWORD FOLLOW_RENAME_SYMBOL_in_alter_table_list_entry1271_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0080000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_RENAME_SYMBOL_in_alter_table_list_entry1271	= { FOLLOW_RENAME_SYMBOL_in_alter_table_list_entry1271_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_alter_table_list_entry1273  */
static	ANTLR3_BITWORD FOLLOW_set_in_alter_table_list_entry1273_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_alter_table_list_entry1273	= { FOLLOW_set_in_alter_table_list_entry1273_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_ref_in_alter_table_list_entry1281  */
static	ANTLR3_BITWORD FOLLOW_column_ref_in_alter_table_list_entry1281_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_column_ref_in_alter_table_list_entry1281	= { FOLLOW_column_ref_in_alter_table_list_entry1281_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TO_SYMBOL_in_alter_table_list_entry1283  */
static	ANTLR3_BITWORD FOLLOW_TO_SYMBOL_in_alter_table_list_entry1283_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_TO_SYMBOL_in_alter_table_list_entry1283	= { FOLLOW_TO_SYMBOL_in_alter_table_list_entry1283_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_ref_in_alter_table_list_entry1285  */
static	ANTLR3_BITWORD FOLLOW_column_ref_in_alter_table_list_entry1285_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_column_ref_in_alter_table_list_entry1285	= { FOLLOW_column_ref_in_alter_table_list_entry1285_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_order_by_in_alter_table_list_entry1290  */
static	ANTLR3_BITWORD FOLLOW_alter_order_by_in_alter_table_list_entry1290_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_order_by_in_alter_table_list_entry1290	= { FOLLOW_alter_order_by_in_alter_table_list_entry1290_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CONVERT_SYMBOL_in_alter_table_list_entry1295  */
static	ANTLR3_BITWORD FOLLOW_CONVERT_SYMBOL_in_alter_table_list_entry1295_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_CONVERT_SYMBOL_in_alter_table_list_entry1295	= { FOLLOW_CONVERT_SYMBOL_in_alter_table_list_entry1295_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TO_SYMBOL_in_alter_table_list_entry1297  */
static	ANTLR3_BITWORD FOLLOW_TO_SYMBOL_in_alter_table_list_entry1297_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(0x0000000000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_TO_SYMBOL_in_alter_table_list_entry1297	= { FOLLOW_TO_SYMBOL_in_alter_table_list_entry1297_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_in_alter_table_list_entry1299  */
static	ANTLR3_BITWORD FOLLOW_charset_in_alter_table_list_entry1299_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0002000000000010), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_in_alter_table_list_entry1299	= { FOLLOW_charset_in_alter_table_list_entry1299_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_name_or_default_in_alter_table_list_entry1301  */
static	ANTLR3_BITWORD FOLLOW_charset_name_or_default_in_alter_table_list_entry1301_bits[]	= { ANTLR3_UINT64_LIT(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_charset_name_or_default_in_alter_table_list_entry1301	= { FOLLOW_charset_name_or_default_in_alter_table_list_entry1301_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLLATE_SYMBOL_in_alter_table_list_entry1304  */
static	ANTLR3_BITWORD FOLLOW_COLLATE_SYMBOL_in_alter_table_list_entry1304_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0002000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_COLLATE_SYMBOL_in_alter_table_list_entry1304	= { FOLLOW_COLLATE_SYMBOL_in_alter_table_list_entry1304_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_collation_name_or_default_in_alter_table_list_entry1306  */
static	ANTLR3_BITWORD FOLLOW_collation_name_or_default_in_alter_table_list_entry1306_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_collation_name_or_default_in_alter_table_list_entry1306	= { FOLLOW_collation_name_or_default_in_alter_table_list_entry1306_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FORCE_SYMBOL_in_alter_table_list_entry1313  */
static	ANTLR3_BITWORD FOLLOW_FORCE_SYMBOL_in_alter_table_list_entry1313_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_FORCE_SYMBOL_in_alter_table_list_entry1313	= { FOLLOW_FORCE_SYMBOL_in_alter_table_list_entry1313_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_algorithm_option_in_alter_table_list_entry1320  */
static	ANTLR3_BITWORD FOLLOW_alter_algorithm_option_in_alter_table_list_entry1320_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_algorithm_option_in_alter_table_list_entry1320	= { FOLLOW_alter_algorithm_option_in_alter_table_list_entry1320_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_lock_option_in_alter_table_list_entry1327  */
static	ANTLR3_BITWORD FOLLOW_alter_lock_option_in_alter_table_list_entry1327_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_lock_option_in_alter_table_list_entry1327	= { FOLLOW_alter_lock_option_in_alter_table_list_entry1327_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UPGRADE_SYMBOL_in_alter_table_list_entry1334  */
static	ANTLR3_BITWORD FOLLOW_UPGRADE_SYMBOL_in_alter_table_list_entry1334_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_entry1334	= { FOLLOW_UPGRADE_SYMBOL_in_alter_table_list_entry1334_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITIONING_SYMBOL_in_alter_table_list_entry1336  */
static	ANTLR3_BITWORD FOLLOW_PARTITIONING_SYMBOL_in_alter_table_list_entry1336_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITIONING_SYMBOL_in_alter_table_list_entry1336	= { FOLLOW_PARTITIONING_SYMBOL_in_alter_table_list_entry1336_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CONSTRAINT_SYMBOL_in_key_def1346  */
static	ANTLR3_BITWORD FOLLOW_CONSTRAINT_SYMBOL_in_key_def1346_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000004000), ANTLR3_UINT64_LIT(0x1000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000004000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_CONSTRAINT_SYMBOL_in_key_def1346	= { FOLLOW_CONSTRAINT_SYMBOL_in_key_def1346_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_ref_in_key_def1348  */
static	ANTLR3_BITWORD FOLLOW_column_ref_in_key_def1348_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000004000), ANTLR3_UINT64_LIT(0x1000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_column_ref_in_key_def1348	= { FOLLOW_column_ref_in_key_def1348_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PRIMARY_SYMBOL_in_key_def1360  */
static	ANTLR3_BITWORD FOLLOW_PRIMARY_SYMBOL_in_key_def1360_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0080000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PRIMARY_SYMBOL_in_key_def1360	= { FOLLOW_PRIMARY_SYMBOL_in_key_def1360_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_KEY_SYMBOL_in_key_def1362  */
static	ANTLR3_BITWORD FOLLOW_KEY_SYMBOL_in_key_def1362_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000100000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_KEY_SYMBOL_in_key_def1362	= { FOLLOW_KEY_SYMBOL_in_key_def1362_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_ref_in_key_def1364  */
static	ANTLR3_BITWORD FOLLOW_column_ref_in_key_def1364_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(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_column_ref_in_key_def1364	= { FOLLOW_column_ref_in_key_def1364_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_type_in_key_def1367  */
static	ANTLR3_BITWORD FOLLOW_index_type_in_key_def1367_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_index_type_in_key_def1367	= { FOLLOW_index_type_in_key_def1367_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_columns_in_key_def1370  */
static	ANTLR3_BITWORD FOLLOW_index_columns_in_key_def1370_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(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_columns_in_key_def1370	= { FOLLOW_index_columns_in_key_def1370_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_normal_index_option_in_key_def1372  */
static	ANTLR3_BITWORD FOLLOW_normal_index_option_in_key_def1372_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(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_normal_index_option_in_key_def1372	= { FOLLOW_normal_index_option_in_key_def1372_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOREIGN_SYMBOL_in_key_def1380  */
static	ANTLR3_BITWORD FOLLOW_FOREIGN_SYMBOL_in_key_def1380_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0080000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FOREIGN_SYMBOL_in_key_def1380	= { FOLLOW_FOREIGN_SYMBOL_in_key_def1380_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_KEY_SYMBOL_in_key_def1382  */
static	ANTLR3_BITWORD FOLLOW_KEY_SYMBOL_in_key_def1382_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_KEY_SYMBOL_in_key_def1382	= { FOLLOW_KEY_SYMBOL_in_key_def1382_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_ref_in_key_def1384  */
static	ANTLR3_BITWORD FOLLOW_column_ref_in_key_def1384_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_column_ref_in_key_def1384	= { FOLLOW_column_ref_in_key_def1384_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_columns_in_key_def1387  */
static	ANTLR3_BITWORD FOLLOW_index_columns_in_key_def1387_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_index_columns_in_key_def1387	= { FOLLOW_index_columns_in_key_def1387_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_reference_definition_in_key_def1389  */
static	ANTLR3_BITWORD FOLLOW_reference_definition_in_key_def1389_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_reference_definition_in_key_def1389	= { FOLLOW_reference_definition_in_key_def1389_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNIQUE_SYMBOL_in_key_def1396  */
static	ANTLR3_BITWORD FOLLOW_UNIQUE_SYMBOL_in_key_def1396_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0080000080000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000100000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_UNIQUE_SYMBOL_in_key_def1396	= { FOLLOW_UNIQUE_SYMBOL_in_key_def1396_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_ref_in_key_def1407  */
static	ANTLR3_BITWORD FOLLOW_column_ref_in_key_def1407_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(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_column_ref_in_key_def1407	= { FOLLOW_column_ref_in_key_def1407_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_type_in_key_def1410  */
static	ANTLR3_BITWORD FOLLOW_index_type_in_key_def1410_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_index_type_in_key_def1410	= { FOLLOW_index_type_in_key_def1410_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_columns_in_key_def1413  */
static	ANTLR3_BITWORD FOLLOW_index_columns_in_key_def1413_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(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_columns_in_key_def1413	= { FOLLOW_index_columns_in_key_def1413_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_normal_index_option_in_key_def1415  */
static	ANTLR3_BITWORD FOLLOW_normal_index_option_in_key_def1415_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(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_normal_index_option_in_key_def1415	= { FOLLOW_normal_index_option_in_key_def1415_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHECK_SYMBOL_in_key_def1423  */
static	ANTLR3_BITWORD FOLLOW_CHECK_SYMBOL_in_key_def1423_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_CHECK_SYMBOL_in_key_def1423	= { FOLLOW_CHECK_SYMBOL_in_key_def1423_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_key_def1425  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_key_def1425_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_key_def1425	= { FOLLOW_OPEN_PAR_SYMBOL_in_key_def1425_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_key_def1427  */
static	ANTLR3_BITWORD FOLLOW_expression_in_key_def1427_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_key_def1427	= { FOLLOW_expression_in_key_def1427_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_key_def1429  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_key_def1429_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_key_def1429	= { FOLLOW_CLOSE_PAR_SYMBOL_in_key_def1429_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_key_def1438  */
static	ANTLR3_BITWORD FOLLOW_set_in_key_def1438_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000100000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_key_def1438	= { FOLLOW_set_in_key_def1438_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_ref_in_key_def1446  */
static	ANTLR3_BITWORD FOLLOW_column_ref_in_key_def1446_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(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_column_ref_in_key_def1446	= { FOLLOW_column_ref_in_key_def1446_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_type_in_key_def1449  */
static	ANTLR3_BITWORD FOLLOW_index_type_in_key_def1449_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_index_type_in_key_def1449	= { FOLLOW_index_type_in_key_def1449_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_columns_in_key_def1452  */
static	ANTLR3_BITWORD FOLLOW_index_columns_in_key_def1452_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(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_columns_in_key_def1452	= { FOLLOW_index_columns_in_key_def1452_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_normal_index_option_in_key_def1454  */
static	ANTLR3_BITWORD FOLLOW_normal_index_option_in_key_def1454_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(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_normal_index_option_in_key_def1454	= { FOLLOW_normal_index_option_in_key_def1454_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_key_def1460  */
static	ANTLR3_BITWORD FOLLOW_set_in_key_def1460_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0080000080000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_key_def1460	= { FOLLOW_set_in_key_def1460_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_ref_in_key_def1477  */
static	ANTLR3_BITWORD FOLLOW_column_ref_in_key_def1477_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_column_ref_in_key_def1477	= { FOLLOW_column_ref_in_key_def1477_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_columns_in_key_def1480  */
static	ANTLR3_BITWORD FOLLOW_index_columns_in_key_def1480_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(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_columns_in_key_def1480	= { FOLLOW_index_columns_in_key_def1480_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_normal_index_option_in_key_def1482  */
static	ANTLR3_BITWORD FOLLOW_normal_index_option_in_key_def1482_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(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_normal_index_option_in_key_def1482	= { FOLLOW_normal_index_option_in_key_def1482_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ORDER_SYMBOL_in_alter_order_by1492  */
static	ANTLR3_BITWORD FOLLOW_ORDER_SYMBOL_in_alter_order_by1492_bits[]	= { ANTLR3_UINT64_LIT(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_ORDER_SYMBOL_in_alter_order_by1492	= { FOLLOW_ORDER_SYMBOL_in_alter_order_by1492_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BY_SYMBOL_in_alter_order_by1494  */
static	ANTLR3_BITWORD FOLLOW_BY_SYMBOL_in_alter_order_by1494_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_BY_SYMBOL_in_alter_order_by1494	= { FOLLOW_BY_SYMBOL_in_alter_order_by1494_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_order_by1496  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_order_by1496_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), ANTLR3_UINT64_LIT(0x0020000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_alter_order_by1496	= { FOLLOW_identifier_in_alter_order_by1496_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_direction_in_alter_order_by1498  */
static	ANTLR3_BITWORD FOLLOW_direction_in_alter_order_by1498_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_direction_in_alter_order_by1498	= { FOLLOW_direction_in_alter_order_by1498_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_alter_order_by1513  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_alter_order_by1513_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_alter_order_by1513	= { FOLLOW_COMMA_SYMBOL_in_alter_order_by1513_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_order_by1515  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_order_by1515_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), ANTLR3_UINT64_LIT(0x0020000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_alter_order_by1515	= { FOLLOW_identifier_in_alter_order_by1515_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_direction_in_alter_order_by1517  */
static	ANTLR3_BITWORD FOLLOW_direction_in_alter_order_by1517_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_direction_in_alter_order_by1517	= { FOLLOW_direction_in_alter_order_by1517_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALGORITHM_SYMBOL_in_alter_algorithm_option1528  */
static	ANTLR3_BITWORD FOLLOW_ALGORITHM_SYMBOL_in_alter_algorithm_option1528_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0002000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000900000) };
static  ANTLR3_BITSET_LIST FOLLOW_ALGORITHM_SYMBOL_in_alter_algorithm_option1528	= { FOLLOW_ALGORITHM_SYMBOL_in_alter_algorithm_option1528_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_alter_algorithm_option1530  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_alter_algorithm_option1530_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0002000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_alter_algorithm_option1530	= { FOLLOW_EQUAL_OPERATOR_in_alter_algorithm_option1530_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_alter_algorithm_option1535  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_alter_algorithm_option1535_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_alter_algorithm_option1535	= { FOLLOW_DEFAULT_SYMBOL_in_alter_algorithm_option1535_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_algorithm_option1539  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_algorithm_option1539_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_alter_algorithm_option1539	= { FOLLOW_identifier_in_alter_algorithm_option1539_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOCK_SYMBOL_in_alter_lock_option1550  */
static	ANTLR3_BITWORD FOLLOW_LOCK_SYMBOL_in_alter_lock_option1550_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0002000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000900000) };
static  ANTLR3_BITSET_LIST FOLLOW_LOCK_SYMBOL_in_alter_lock_option1550	= { FOLLOW_LOCK_SYMBOL_in_alter_lock_option1550_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_alter_lock_option1552  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_alter_lock_option1552_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0002000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_alter_lock_option1552	= { FOLLOW_EQUAL_OPERATOR_in_alter_lock_option1552_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_alter_lock_option1556  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_alter_lock_option1556_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_alter_lock_option1556	= { FOLLOW_DEFAULT_SYMBOL_in_alter_lock_option1556_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_lock_option1560  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_lock_option1560_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_alter_lock_option1560	= { FOLLOW_identifier_in_alter_lock_option1560_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_algorithm_option_in_index_lock_algorithm1582  */
static	ANTLR3_BITWORD FOLLOW_alter_algorithm_option_in_index_lock_algorithm1582_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_algorithm_option_in_index_lock_algorithm1582	= { FOLLOW_alter_algorithm_option_in_index_lock_algorithm1582_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_lock_option_in_index_lock_algorithm1584  */
static	ANTLR3_BITWORD FOLLOW_alter_lock_option_in_index_lock_algorithm1584_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_lock_option_in_index_lock_algorithm1584	= { FOLLOW_alter_lock_option_in_index_lock_algorithm1584_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_lock_option_in_index_lock_algorithm1592  */
static	ANTLR3_BITWORD FOLLOW_alter_lock_option_in_index_lock_algorithm1592_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_lock_option_in_index_lock_algorithm1592	= { FOLLOW_alter_lock_option_in_index_lock_algorithm1592_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_algorithm_option_in_index_lock_algorithm1594  */
static	ANTLR3_BITWORD FOLLOW_alter_algorithm_option_in_index_lock_algorithm1594_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_algorithm_option_in_index_lock_algorithm1594	= { FOLLOW_alter_algorithm_option_in_index_lock_algorithm1594_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ADD_SYMBOL_in_alter_partition1612  */
static	ANTLR3_BITWORD FOLLOW_ADD_SYMBOL_in_alter_partition1612_bits[]	= { ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ADD_SYMBOL_in_alter_partition1612	= { FOLLOW_ADD_SYMBOL_in_alter_partition1612_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_alter_partition1614  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_alter_partition1614_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(0x0000402000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITION_SYMBOL_in_alter_partition1614	= { FOLLOW_PARTITION_SYMBOL_in_alter_partition1614_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_no_write_to_bin_log_in_alter_partition1616  */
static	ANTLR3_BITWORD FOLLOW_no_write_to_bin_log_in_alter_partition1616_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(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_no_write_to_bin_log_in_alter_partition1616	= { FOLLOW_no_write_to_bin_log_in_alter_partition1616_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_alter_partition1626  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_alter_partition1626_bits[]	= { ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_alter_partition1626	= { FOLLOW_OPEN_PAR_SYMBOL_in_alter_partition1626_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partition_definition_in_alter_partition1628  */
static	ANTLR3_BITWORD FOLLOW_partition_definition_in_alter_partition1628_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_partition_definition_in_alter_partition1628	= { FOLLOW_partition_definition_in_alter_partition1628_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_alter_partition1630  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_alter_partition1630_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_alter_partition1630	= { FOLLOW_CLOSE_PAR_SYMBOL_in_alter_partition1630_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITIONS_SYMBOL_in_alter_partition1637  */
static	ANTLR3_BITWORD FOLLOW_PARTITIONS_SYMBOL_in_alter_partition1637_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010800000000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITIONS_SYMBOL_in_alter_partition1637	= { FOLLOW_PARTITIONS_SYMBOL_in_alter_partition1637_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_real_ulong_number_in_alter_partition1639  */
static	ANTLR3_BITWORD FOLLOW_real_ulong_number_in_alter_partition1639_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_real_ulong_number_in_alter_partition1639	= { FOLLOW_real_ulong_number_in_alter_partition1639_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DROP_SYMBOL_in_alter_partition1648  */
static	ANTLR3_BITWORD FOLLOW_DROP_SYMBOL_in_alter_partition1648_bits[]	= { ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DROP_SYMBOL_in_alter_partition1648	= { FOLLOW_DROP_SYMBOL_in_alter_partition1648_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_alter_partition1650  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_alter_partition1650_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITION_SYMBOL_in_alter_partition1650	= { FOLLOW_PARTITION_SYMBOL_in_alter_partition1650_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_in_alter_partition1652  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_in_alter_partition1652_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_list_in_alter_partition1652	= { FOLLOW_identifier_list_in_alter_partition1652_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REBUILD_SYMBOL_in_alter_partition1657  */
static	ANTLR3_BITWORD FOLLOW_REBUILD_SYMBOL_in_alter_partition1657_bits[]	= { ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_REBUILD_SYMBOL_in_alter_partition1657	= { FOLLOW_REBUILD_SYMBOL_in_alter_partition1657_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_alter_partition1659  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_alter_partition1659_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITION_SYMBOL_in_alter_partition1659	= { FOLLOW_PARTITION_SYMBOL_in_alter_partition1659_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_no_write_to_bin_log_in_alter_partition1661  */
static	ANTLR3_BITWORD FOLLOW_no_write_to_bin_log_in_alter_partition1661_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_no_write_to_bin_log_in_alter_partition1661	= { FOLLOW_no_write_to_bin_log_in_alter_partition1661_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_all_or_partition_name_list_in_alter_partition1664  */
static	ANTLR3_BITWORD FOLLOW_all_or_partition_name_list_in_alter_partition1664_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_all_or_partition_name_list_in_alter_partition1664	= { FOLLOW_all_or_partition_name_list_in_alter_partition1664_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPTIMIZE_SYMBOL_in_alter_partition1669  */
static	ANTLR3_BITWORD FOLLOW_OPTIMIZE_SYMBOL_in_alter_partition1669_bits[]	= { ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPTIMIZE_SYMBOL_in_alter_partition1669	= { FOLLOW_OPTIMIZE_SYMBOL_in_alter_partition1669_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_alter_partition1671  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_alter_partition1671_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITION_SYMBOL_in_alter_partition1671	= { FOLLOW_PARTITION_SYMBOL_in_alter_partition1671_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_no_write_to_bin_log_in_alter_partition1673  */
static	ANTLR3_BITWORD FOLLOW_no_write_to_bin_log_in_alter_partition1673_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_no_write_to_bin_log_in_alter_partition1673	= { FOLLOW_no_write_to_bin_log_in_alter_partition1673_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_all_or_partition_name_list_in_alter_partition1676  */
static	ANTLR3_BITWORD FOLLOW_all_or_partition_name_list_in_alter_partition1676_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(0x0000002000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_all_or_partition_name_list_in_alter_partition1676	= { FOLLOW_all_or_partition_name_list_in_alter_partition1676_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_no_write_to_bin_log_in_alter_partition1678  */
static	ANTLR3_BITWORD FOLLOW_no_write_to_bin_log_in_alter_partition1678_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_no_write_to_bin_log_in_alter_partition1678	= { FOLLOW_no_write_to_bin_log_in_alter_partition1678_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ANALYZE_SYMBOL_in_alter_partition1685  */
static	ANTLR3_BITWORD FOLLOW_ANALYZE_SYMBOL_in_alter_partition1685_bits[]	= { ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ANALYZE_SYMBOL_in_alter_partition1685	= { FOLLOW_ANALYZE_SYMBOL_in_alter_partition1685_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_alter_partition1687  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_alter_partition1687_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITION_SYMBOL_in_alter_partition1687	= { FOLLOW_PARTITION_SYMBOL_in_alter_partition1687_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_no_write_to_bin_log_in_alter_partition1689  */
static	ANTLR3_BITWORD FOLLOW_no_write_to_bin_log_in_alter_partition1689_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_no_write_to_bin_log_in_alter_partition1689	= { FOLLOW_no_write_to_bin_log_in_alter_partition1689_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_all_or_partition_name_list_in_alter_partition1692  */
static	ANTLR3_BITWORD FOLLOW_all_or_partition_name_list_in_alter_partition1692_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_all_or_partition_name_list_in_alter_partition1692	= { FOLLOW_all_or_partition_name_list_in_alter_partition1692_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHECK_SYMBOL_in_alter_partition1697  */
static	ANTLR3_BITWORD FOLLOW_CHECK_SYMBOL_in_alter_partition1697_bits[]	= { ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CHECK_SYMBOL_in_alter_partition1697	= { FOLLOW_CHECK_SYMBOL_in_alter_partition1697_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_alter_partition1699  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_alter_partition1699_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITION_SYMBOL_in_alter_partition1699	= { FOLLOW_PARTITION_SYMBOL_in_alter_partition1699_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_all_or_partition_name_list_in_alter_partition1701  */
static	ANTLR3_BITWORD FOLLOW_all_or_partition_name_list_in_alter_partition1701_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(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_all_or_partition_name_list_in_alter_partition1701	= { FOLLOW_all_or_partition_name_list_in_alter_partition1701_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_check_option_in_alter_partition1703  */
static	ANTLR3_BITWORD FOLLOW_check_option_in_alter_partition1703_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(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_check_option_in_alter_partition1703	= { FOLLOW_check_option_in_alter_partition1703_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REPAIR_SYMBOL_in_alter_partition1709  */
static	ANTLR3_BITWORD FOLLOW_REPAIR_SYMBOL_in_alter_partition1709_bits[]	= { ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_REPAIR_SYMBOL_in_alter_partition1709	= { FOLLOW_REPAIR_SYMBOL_in_alter_partition1709_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_alter_partition1711  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_alter_partition1711_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITION_SYMBOL_in_alter_partition1711	= { FOLLOW_PARTITION_SYMBOL_in_alter_partition1711_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_no_write_to_bin_log_in_alter_partition1713  */
static	ANTLR3_BITWORD FOLLOW_no_write_to_bin_log_in_alter_partition1713_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_no_write_to_bin_log_in_alter_partition1713	= { FOLLOW_no_write_to_bin_log_in_alter_partition1713_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_all_or_partition_name_list_in_alter_partition1716  */
static	ANTLR3_BITWORD FOLLOW_all_or_partition_name_list_in_alter_partition1716_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_partition1716	= { FOLLOW_all_or_partition_name_list_in_alter_partition1716_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_repair_option_in_alter_partition1718  */
static	ANTLR3_BITWORD FOLLOW_repair_option_in_alter_partition1718_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_partition1718	= { FOLLOW_repair_option_in_alter_partition1718_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COALESCE_SYMBOL_in_alter_partition1724  */
static	ANTLR3_BITWORD FOLLOW_COALESCE_SYMBOL_in_alter_partition1724_bits[]	= { ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COALESCE_SYMBOL_in_alter_partition1724	= { FOLLOW_COALESCE_SYMBOL_in_alter_partition1724_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_alter_partition1726  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_alter_partition1726_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(0x0000002000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010800000000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITION_SYMBOL_in_alter_partition1726	= { FOLLOW_PARTITION_SYMBOL_in_alter_partition1726_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_no_write_to_bin_log_in_alter_partition1728  */
static	ANTLR3_BITWORD FOLLOW_no_write_to_bin_log_in_alter_partition1728_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010800000000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_no_write_to_bin_log_in_alter_partition1728	= { FOLLOW_no_write_to_bin_log_in_alter_partition1728_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_real_ulong_number_in_alter_partition1731  */
static	ANTLR3_BITWORD FOLLOW_real_ulong_number_in_alter_partition1731_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_real_ulong_number_in_alter_partition1731	= { FOLLOW_real_ulong_number_in_alter_partition1731_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TRUNCATE_SYMBOL_in_alter_partition1738  */
static	ANTLR3_BITWORD FOLLOW_TRUNCATE_SYMBOL_in_alter_partition1738_bits[]	= { ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_TRUNCATE_SYMBOL_in_alter_partition1738	= { FOLLOW_TRUNCATE_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITION_SYMBOL_in_alter_partition1740	= { FOLLOW_PARTITION_SYMBOL_in_alter_partition1740_bits, 12	};
/** 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(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_all_or_partition_name_list_in_alter_partition1742	= { FOLLOW_all_or_partition_name_list_in_alter_partition1742_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EXCHANGE_SYMBOL_in_alter_partition1747  */
static	ANTLR3_BITWORD FOLLOW_EXCHANGE_SYMBOL_in_alter_partition1747_bits[]	= { ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EXCHANGE_SYMBOL_in_alter_partition1747	= { FOLLOW_EXCHANGE_SYMBOL_in_alter_partition1747_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_alter_partition1749  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_alter_partition1749_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITION_SYMBOL_in_alter_partition1749	= { FOLLOW_PARTITION_SYMBOL_in_alter_partition1749_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_partition1751  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_partition1751_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_identifier_in_alter_partition1751	= { FOLLOW_identifier_in_alter_partition1751_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WITH_SYMBOL_in_alter_partition1753  */
static	ANTLR3_BITWORD FOLLOW_WITH_SYMBOL_in_alter_partition1753_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_WITH_SYMBOL_in_alter_partition1753	= { FOLLOW_WITH_SYMBOL_in_alter_partition1753_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLE_SYMBOL_in_alter_partition1755  */
static	ANTLR3_BITWORD FOLLOW_TABLE_SYMBOL_in_alter_partition1755_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLE_SYMBOL_in_alter_partition1755	= { FOLLOW_TABLE_SYMBOL_in_alter_partition1755_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_alter_partition1757  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_alter_partition1757_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000012000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_in_alter_partition1757	= { FOLLOW_table_ref_in_alter_partition1757_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_validation_in_alter_partition1759  */
static	ANTLR3_BITWORD FOLLOW_validation_in_alter_partition1759_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_validation_in_alter_partition1759	= { FOLLOW_validation_in_alter_partition1759_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REORGANIZE_SYMBOL_in_alter_partition1765  */
static	ANTLR3_BITWORD FOLLOW_REORGANIZE_SYMBOL_in_alter_partition1765_bits[]	= { ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_REORGANIZE_SYMBOL_in_alter_partition1765	= { FOLLOW_REORGANIZE_SYMBOL_in_alter_partition1765_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_alter_partition1767  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_alter_partition1767_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITION_SYMBOL_in_alter_partition1767	= { FOLLOW_PARTITION_SYMBOL_in_alter_partition1767_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_no_write_to_bin_log_in_alter_partition1769  */
static	ANTLR3_BITWORD FOLLOW_no_write_to_bin_log_in_alter_partition1769_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_no_write_to_bin_log_in_alter_partition1769	= { FOLLOW_no_write_to_bin_log_in_alter_partition1769_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_in_alter_partition1773  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_in_alter_partition1773_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_list_in_alter_partition1773	= { FOLLOW_identifier_list_in_alter_partition1773_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTO_SYMBOL_in_alter_partition1775  */
static	ANTLR3_BITWORD FOLLOW_INTO_SYMBOL_in_alter_partition1775_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_INTO_SYMBOL_in_alter_partition1775	= { FOLLOW_INTO_SYMBOL_in_alter_partition1775_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partition_definitions_in_alter_partition1777  */
static	ANTLR3_BITWORD FOLLOW_partition_definitions_in_alter_partition1777_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_partition_definitions_in_alter_partition1777	= { FOLLOW_partition_definitions_in_alter_partition1777_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DISCARD_SYMBOL_in_alter_partition1786  */
static	ANTLR3_BITWORD FOLLOW_DISCARD_SYMBOL_in_alter_partition1786_bits[]	= { ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DISCARD_SYMBOL_in_alter_partition1786	= { FOLLOW_DISCARD_SYMBOL_in_alter_partition1786_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_alter_partition1788  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_alter_partition1788_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITION_SYMBOL_in_alter_partition1788	= { FOLLOW_PARTITION_SYMBOL_in_alter_partition1788_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_all_or_partition_name_list_in_alter_partition1790  */
static	ANTLR3_BITWORD FOLLOW_all_or_partition_name_list_in_alter_partition1790_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_partition1790	= { FOLLOW_all_or_partition_name_list_in_alter_partition1790_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLESPACE_SYMBOL_in_alter_partition1792  */
static	ANTLR3_BITWORD FOLLOW_TABLESPACE_SYMBOL_in_alter_partition1792_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLESPACE_SYMBOL_in_alter_partition1792	= { FOLLOW_TABLESPACE_SYMBOL_in_alter_partition1792_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IMPORT_SYMBOL_in_alter_partition1799  */
static	ANTLR3_BITWORD FOLLOW_IMPORT_SYMBOL_in_alter_partition1799_bits[]	= { ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_IMPORT_SYMBOL_in_alter_partition1799	= { FOLLOW_IMPORT_SYMBOL_in_alter_partition1799_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_alter_partition1801  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_alter_partition1801_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITION_SYMBOL_in_alter_partition1801	= { FOLLOW_PARTITION_SYMBOL_in_alter_partition1801_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_all_or_partition_name_list_in_alter_partition1803  */
static	ANTLR3_BITWORD FOLLOW_all_or_partition_name_list_in_alter_partition1803_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_partition1803	= { FOLLOW_all_or_partition_name_list_in_alter_partition1803_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLESPACE_SYMBOL_in_alter_partition1805  */
static	ANTLR3_BITWORD FOLLOW_TABLESPACE_SYMBOL_in_alter_partition1805_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLESPACE_SYMBOL_in_alter_partition1805	= { FOLLOW_TABLESPACE_SYMBOL_in_alter_partition1805_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_validation1818  */
static	ANTLR3_BITWORD FOLLOW_set_in_validation1818_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_set_in_validation1818	= { FOLLOW_set_in_validation1818_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VALIDATION_SYMBOL_in_validation1826  */
static	ANTLR3_BITWORD FOLLOW_VALIDATION_SYMBOL_in_validation1826_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_VALIDATION_SYMBOL_in_validation1826	= { FOLLOW_VALIDATION_SYMBOL_in_validation1826_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REMOVE_SYMBOL_in_remove_partitioning1839  */
static	ANTLR3_BITWORD FOLLOW_REMOVE_SYMBOL_in_remove_partitioning1839_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_partitioning1839	= { FOLLOW_REMOVE_SYMBOL_in_remove_partitioning1839_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITIONING_SYMBOL_in_remove_partitioning1841  */
static	ANTLR3_BITWORD FOLLOW_PARTITIONING_SYMBOL_in_remove_partitioning1841_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITIONING_SYMBOL_in_remove_partitioning1841	= { FOLLOW_PARTITIONING_SYMBOL_in_remove_partitioning1841_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALL_SYMBOL_in_all_or_partition_name_list1850  */
static	ANTLR3_BITWORD FOLLOW_ALL_SYMBOL_in_all_or_partition_name_list1850_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ALL_SYMBOL_in_all_or_partition_name_list1850	= { FOLLOW_ALL_SYMBOL_in_all_or_partition_name_list1850_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_in_all_or_partition_name_list1855  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_in_all_or_partition_name_list1855_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_list_in_all_or_partition_name_list1855	= { FOLLOW_identifier_list_in_all_or_partition_name_list1855_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLESPACE_SYMBOL_in_alter_tablespace1864  */
static	ANTLR3_BITWORD FOLLOW_TABLESPACE_SYMBOL_in_alter_tablespace1864_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLESPACE_SYMBOL_in_alter_tablespace1864	= { FOLLOW_TABLESPACE_SYMBOL_in_alter_tablespace1864_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_tablespace_ref_in_alter_tablespace1866  */
static	ANTLR3_BITWORD FOLLOW_tablespace_ref_in_alter_tablespace1866_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(0x0200000000004000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000800000000), ANTLR3_UINT64_LIT(0x0000000000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_tablespace_ref_in_alter_tablespace1866	= { FOLLOW_tablespace_ref_in_alter_tablespace1866_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_alter_tablespace1873  */
static	ANTLR3_BITWORD FOLLOW_set_in_alter_tablespace1873_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000800000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_alter_tablespace1873	= { FOLLOW_set_in_alter_tablespace1873_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATAFILE_SYMBOL_in_alter_tablespace1881  */
static	ANTLR3_BITWORD FOLLOW_DATAFILE_SYMBOL_in_alter_tablespace1881_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DATAFILE_SYMBOL_in_alter_tablespace1881	= { FOLLOW_DATAFILE_SYMBOL_in_alter_tablespace1881_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_alter_tablespace1883  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_alter_tablespace1883_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_tablespace1883	= { FOLLOW_string_literal_in_alter_tablespace1883_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_tablespace_option_in_alter_tablespace1886  */
static	ANTLR3_BITWORD FOLLOW_alter_tablespace_option_in_alter_tablespace1886_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(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_alter_tablespace_option_in_alter_tablespace1886	= { FOLLOW_alter_tablespace_option_in_alter_tablespace1886_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_alter_tablespace1889  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_alter_tablespace1889_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_tablespace1889	= { FOLLOW_COMMA_SYMBOL_in_alter_tablespace1889_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_tablespace_option_in_alter_tablespace1892  */
static	ANTLR3_BITWORD FOLLOW_alter_tablespace_option_in_alter_tablespace1892_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(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_alter_tablespace_option_in_alter_tablespace1892	= { FOLLOW_alter_tablespace_option_in_alter_tablespace1892_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHANGE_SYMBOL_in_alter_tablespace1905  */
static	ANTLR3_BITWORD FOLLOW_CHANGE_SYMBOL_in_alter_tablespace1905_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000800000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CHANGE_SYMBOL_in_alter_tablespace1905	= { FOLLOW_CHANGE_SYMBOL_in_alter_tablespace1905_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATAFILE_SYMBOL_in_alter_tablespace1907  */
static	ANTLR3_BITWORD FOLLOW_DATAFILE_SYMBOL_in_alter_tablespace1907_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DATAFILE_SYMBOL_in_alter_tablespace1907	= { FOLLOW_DATAFILE_SYMBOL_in_alter_tablespace1907_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_alter_tablespace1909  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_alter_tablespace1909_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_tablespace1909	= { FOLLOW_string_literal_in_alter_tablespace1909_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_change_tablespace_option_in_alter_tablespace1912  */
static	ANTLR3_BITWORD FOLLOW_change_tablespace_option_in_alter_tablespace1912_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(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_change_tablespace_option_in_alter_tablespace1912	= { FOLLOW_change_tablespace_option_in_alter_tablespace1912_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_alter_tablespace1915  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_alter_tablespace1915_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_tablespace1915	= { FOLLOW_COMMA_SYMBOL_in_alter_tablespace1915_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_change_tablespace_option_in_alter_tablespace1918  */
static	ANTLR3_BITWORD FOLLOW_change_tablespace_option_in_alter_tablespace1918_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(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_change_tablespace_option_in_alter_tablespace1918	= { FOLLOW_change_tablespace_option_in_alter_tablespace1918_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_READ_ONLY_SYMBOL_in_alter_tablespace1928  */
static	ANTLR3_BITWORD FOLLOW_READ_ONLY_SYMBOL_in_alter_tablespace1928_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_READ_ONLY_SYMBOL_in_alter_tablespace1928	= { FOLLOW_READ_ONLY_SYMBOL_in_alter_tablespace1928_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_READ_WRITE_SYMBOL_in_alter_tablespace1934  */
static	ANTLR3_BITWORD FOLLOW_READ_WRITE_SYMBOL_in_alter_tablespace1934_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_READ_WRITE_SYMBOL_in_alter_tablespace1934	= { FOLLOW_READ_WRITE_SYMBOL_in_alter_tablespace1934_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NOT_SYMBOL_in_alter_tablespace1940  */
static	ANTLR3_BITWORD FOLLOW_NOT_SYMBOL_in_alter_tablespace1940_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_tablespace1940	= { FOLLOW_NOT_SYMBOL_in_alter_tablespace1940_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ACCESSIBLE_SYMBOL_in_alter_tablespace1942  */
static	ANTLR3_BITWORD FOLLOW_ACCESSIBLE_SYMBOL_in_alter_tablespace1942_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ACCESSIBLE_SYMBOL_in_alter_tablespace1942	= { FOLLOW_ACCESSIBLE_SYMBOL_in_alter_tablespace1942_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INITIAL_SIZE_SYMBOL_in_alter_tablespace_option1954  */
static	ANTLR3_BITWORD FOLLOW_INITIAL_SIZE_SYMBOL_in_alter_tablespace_option1954_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0400011000900000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INITIAL_SIZE_SYMBOL_in_alter_tablespace_option1954	= { FOLLOW_INITIAL_SIZE_SYMBOL_in_alter_tablespace_option1954_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_alter_tablespace_option1956  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_alter_tablespace_option1956_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0400011000100000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_alter_tablespace_option1956	= { FOLLOW_EQUAL_OPERATOR_in_alter_tablespace_option1956_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_size_number_in_alter_tablespace_option1959  */
static	ANTLR3_BITWORD FOLLOW_size_number_in_alter_tablespace_option1959_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_size_number_in_alter_tablespace_option1959	= { FOLLOW_size_number_in_alter_tablespace_option1959_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AUTOEXTEND_SIZE_SYMBOL_in_alter_tablespace_option1964  */
static	ANTLR3_BITWORD FOLLOW_AUTOEXTEND_SIZE_SYMBOL_in_alter_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0400011000900000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_AUTOEXTEND_SIZE_SYMBOL_in_alter_tablespace_option1964	= { FOLLOW_AUTOEXTEND_SIZE_SYMBOL_in_alter_tablespace_option1964_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_alter_tablespace_option1966  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_alter_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0400011000100000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_alter_tablespace_option1966	= { FOLLOW_EQUAL_OPERATOR_in_alter_tablespace_option1966_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_size_number_in_alter_tablespace_option1969  */
static	ANTLR3_BITWORD FOLLOW_size_number_in_alter_tablespace_option1969_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_size_number_in_alter_tablespace_option1969	= { FOLLOW_size_number_in_alter_tablespace_option1969_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MAX_SIZE_SYMBOL_in_alter_tablespace_option1974  */
static	ANTLR3_BITWORD FOLLOW_MAX_SIZE_SYMBOL_in_alter_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0400011000900000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MAX_SIZE_SYMBOL_in_alter_tablespace_option1974	= { FOLLOW_MAX_SIZE_SYMBOL_in_alter_tablespace_option1974_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_alter_tablespace_option1976  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_alter_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0400011000100000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_alter_tablespace_option1976	= { FOLLOW_EQUAL_OPERATOR_in_alter_tablespace_option1976_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_size_number_in_alter_tablespace_option1979  */
static	ANTLR3_BITWORD FOLLOW_size_number_in_alter_tablespace_option1979_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_size_number_in_alter_tablespace_option1979	= { FOLLOW_size_number_in_alter_tablespace_option1979_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STORAGE_SYMBOL_in_alter_tablespace_option1984  */
static	ANTLR3_BITWORD FOLLOW_STORAGE_SYMBOL_in_alter_tablespace_option1984_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_STORAGE_SYMBOL_in_alter_tablespace_option1984	= { FOLLOW_STORAGE_SYMBOL_in_alter_tablespace_option1984_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ENGINE_SYMBOL_in_alter_tablespace_option1987  */
static	ANTLR3_BITWORD FOLLOW_ENGINE_SYMBOL_in_alter_tablespace_option1987_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000900000) };
static  ANTLR3_BITSET_LIST FOLLOW_ENGINE_SYMBOL_in_alter_tablespace_option1987	= { FOLLOW_ENGINE_SYMBOL_in_alter_tablespace_option1987_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_alter_tablespace_option1989  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_alter_tablespace_option1989_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_alter_tablespace_option1989	= { FOLLOW_EQUAL_OPERATOR_in_alter_tablespace_option1989_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_engine_ref_in_alter_tablespace_option1992  */
static	ANTLR3_BITWORD FOLLOW_engine_ref_in_alter_tablespace_option1992_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_engine_ref_in_alter_tablespace_option1992	= { FOLLOW_engine_ref_in_alter_tablespace_option1992_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_alter_tablespace_option1997  */
static	ANTLR3_BITWORD FOLLOW_set_in_alter_tablespace_option1997_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_alter_tablespace_option1997	= { FOLLOW_set_in_alter_tablespace_option1997_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INITIAL_SIZE_SYMBOL_in_change_tablespace_option2012  */
static	ANTLR3_BITWORD FOLLOW_INITIAL_SIZE_SYMBOL_in_change_tablespace_option2012_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0400011000900000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INITIAL_SIZE_SYMBOL_in_change_tablespace_option2012	= { FOLLOW_INITIAL_SIZE_SYMBOL_in_change_tablespace_option2012_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_change_tablespace_option2014  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_change_tablespace_option2014_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0400011000100000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_change_tablespace_option2014	= { FOLLOW_EQUAL_OPERATOR_in_change_tablespace_option2014_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_size_number_in_change_tablespace_option2017  */
static	ANTLR3_BITWORD FOLLOW_size_number_in_change_tablespace_option2017_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_size_number_in_change_tablespace_option2017	= { FOLLOW_size_number_in_change_tablespace_option2017_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AUTOEXTEND_SIZE_SYMBOL_in_change_tablespace_option2022  */
static	ANTLR3_BITWORD FOLLOW_AUTOEXTEND_SIZE_SYMBOL_in_change_tablespace_option2022_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0400011000900000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_AUTOEXTEND_SIZE_SYMBOL_in_change_tablespace_option2022	= { FOLLOW_AUTOEXTEND_SIZE_SYMBOL_in_change_tablespace_option2022_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_change_tablespace_option2024  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_change_tablespace_option2024_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0400011000100000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_change_tablespace_option2024	= { FOLLOW_EQUAL_OPERATOR_in_change_tablespace_option2024_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_size_number_in_change_tablespace_option2027  */
static	ANTLR3_BITWORD FOLLOW_size_number_in_change_tablespace_option2027_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_size_number_in_change_tablespace_option2027	= { FOLLOW_size_number_in_change_tablespace_option2027_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MAX_SIZE_SYMBOL_in_change_tablespace_option2032  */
static	ANTLR3_BITWORD FOLLOW_MAX_SIZE_SYMBOL_in_change_tablespace_option2032_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0400011000900000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MAX_SIZE_SYMBOL_in_change_tablespace_option2032	= { FOLLOW_MAX_SIZE_SYMBOL_in_change_tablespace_option2032_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_change_tablespace_option2034  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_change_tablespace_option2034_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0400011000100000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_change_tablespace_option2034	= { FOLLOW_EQUAL_OPERATOR_in_change_tablespace_option2034_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_size_number_in_change_tablespace_option2037  */
static	ANTLR3_BITWORD FOLLOW_size_number_in_change_tablespace_option2037_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_size_number_in_change_tablespace_option2037	= { FOLLOW_size_number_in_change_tablespace_option2037_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALGORITHM_SYMBOL_in_alter_view2047  */
static	ANTLR3_BITWORD FOLLOW_ALGORITHM_SYMBOL_in_alter_view2047_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_ALGORITHM_SYMBOL_in_alter_view2047	= { FOLLOW_ALGORITHM_SYMBOL_in_alter_view2047_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_alter_view2049  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_alter_view2049_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_view2049	= { FOLLOW_EQUAL_OPERATOR_in_alter_view2049_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_alter_view2051  */
static	ANTLR3_BITWORD FOLLOW_set_in_alter_view2051_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(0x0000010000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_alter_view2051	= { FOLLOW_set_in_alter_view2051_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_definer_clause_in_alter_view2067  */
static	ANTLR3_BITWORD FOLLOW_definer_clause_in_alter_view2067_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(0x0000010000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_definer_clause_in_alter_view2067	= { FOLLOW_definer_clause_in_alter_view2067_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SQL_SYMBOL_in_alter_view2073  */
static	ANTLR3_BITWORD FOLLOW_SQL_SYMBOL_in_alter_view2073_bits[]	= { ANTLR3_UINT64_LIT(0x0000200000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SQL_SYMBOL_in_alter_view2073	= { FOLLOW_SQL_SYMBOL_in_alter_view2073_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SECURITY_SYMBOL_in_alter_view2075  */
static	ANTLR3_BITWORD FOLLOW_SECURITY_SYMBOL_in_alter_view2075_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SECURITY_SYMBOL_in_alter_view2075	= { FOLLOW_SECURITY_SYMBOL_in_alter_view2075_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_alter_view2077  */
static	ANTLR3_BITWORD FOLLOW_set_in_alter_view2077_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_view2077	= { FOLLOW_set_in_alter_view2077_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VIEW_SYMBOL_in_alter_view2089  */
static	ANTLR3_BITWORD FOLLOW_VIEW_SYMBOL_in_alter_view2089_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_VIEW_SYMBOL_in_alter_view2089	= { FOLLOW_VIEW_SYMBOL_in_alter_view2089_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_view_ref_in_alter_view2091  */
static	ANTLR3_BITWORD FOLLOW_view_ref_in_alter_view2091_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000800000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_view_ref_in_alter_view2091	= { FOLLOW_view_ref_in_alter_view2091_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_with_parentheses_in_alter_view2093  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_with_parentheses_in_alter_view2093_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_identifier_list_with_parentheses_in_alter_view2093	= { FOLLOW_identifier_list_with_parentheses_in_alter_view2093_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AS_SYMBOL_in_alter_view2096  */
static	ANTLR3_BITWORD FOLLOW_AS_SYMBOL_in_alter_view2096_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_AS_SYMBOL_in_alter_view2096	= { FOLLOW_AS_SYMBOL_in_alter_view2096_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_statement_in_alter_view2098  */
static	ANTLR3_BITWORD FOLLOW_select_statement_in_alter_view2098_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000010000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_select_statement_in_alter_view2098	= { FOLLOW_select_statement_in_alter_view2098_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WITH_SYMBOL_in_alter_view2103  */
static	ANTLR3_BITWORD FOLLOW_WITH_SYMBOL_in_alter_view2103_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(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_WITH_SYMBOL_in_alter_view2103	= { FOLLOW_WITH_SYMBOL_in_alter_view2103_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHECK_SYMBOL_in_alter_view2114  */
static	ANTLR3_BITWORD FOLLOW_CHECK_SYMBOL_in_alter_view2114_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_CHECK_SYMBOL_in_alter_view2114	= { FOLLOW_CHECK_SYMBOL_in_alter_view2114_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPTION_SYMBOL_in_alter_view2116  */
static	ANTLR3_BITWORD FOLLOW_OPTION_SYMBOL_in_alter_view2116_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_OPTION_SYMBOL_in_alter_view2116	= { FOLLOW_OPTION_SYMBOL_in_alter_view2116_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CREATE_SYMBOL_in_create_statement2132  */
static	ANTLR3_BITWORD FOLLOW_CREATE_SYMBOL_in_create_statement2132_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(0x0000000800000000), ANTLR3_UINT64_LIT(0x0000000080040000), ANTLR3_UINT64_LIT(0x2010060000000000), ANTLR3_UINT64_LIT(0x0000010100000000), ANTLR3_UINT64_LIT(0x0000000000004101) };
static  ANTLR3_BITSET_LIST FOLLOW_CREATE_SYMBOL_in_create_statement2132	= { FOLLOW_CREATE_SYMBOL_in_create_statement2132_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_table_tail_in_create_statement2140  */
static	ANTLR3_BITWORD FOLLOW_create_table_tail_in_create_statement2140_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_create_table_tail_in_create_statement2140	= { FOLLOW_create_table_tail_in_create_statement2140_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_index_tail_in_create_statement2146  */
static	ANTLR3_BITWORD FOLLOW_create_index_tail_in_create_statement2146_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_create_index_tail_in_create_statement2146	= { FOLLOW_create_index_tail_in_create_statement2146_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_database_tail_in_create_statement2152  */
static	ANTLR3_BITWORD FOLLOW_create_database_tail_in_create_statement2152_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_create_database_tail_in_create_statement2152	= { FOLLOW_create_database_tail_in_create_statement2152_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_definer_clause_in_create_statement2158  */
static	ANTLR3_BITWORD FOLLOW_definer_clause_in_create_statement2158_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(0x2000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000100) };
static  ANTLR3_BITSET_LIST FOLLOW_definer_clause_in_create_statement2158	= { FOLLOW_definer_clause_in_create_statement2158_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_event_tail_in_create_statement2172  */
static	ANTLR3_BITWORD FOLLOW_create_event_tail_in_create_statement2172_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_create_event_tail_in_create_statement2172	= { FOLLOW_create_event_tail_in_create_statement2172_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_view_tail_in_create_statement2180  */
static	ANTLR3_BITWORD FOLLOW_create_view_tail_in_create_statement2180_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_create_view_tail_in_create_statement2180	= { FOLLOW_create_view_tail_in_create_statement2180_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_routine_or_udf_in_create_statement2188  */
static	ANTLR3_BITWORD FOLLOW_create_routine_or_udf_in_create_statement2188_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_create_routine_or_udf_in_create_statement2188	= { FOLLOW_create_routine_or_udf_in_create_statement2188_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_trigger_tail_in_create_statement2196  */
static	ANTLR3_BITWORD FOLLOW_create_trigger_tail_in_create_statement2196_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_create_trigger_tail_in_create_statement2196	= { FOLLOW_create_trigger_tail_in_create_statement2196_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_view_replace_or_algorithm_in_create_statement2207  */
static	ANTLR3_BITWORD FOLLOW_view_replace_or_algorithm_in_create_statement2207_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(0x0000010000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_view_replace_or_algorithm_in_create_statement2207	= { FOLLOW_view_replace_or_algorithm_in_create_statement2207_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_definer_clause_in_create_statement2209  */
static	ANTLR3_BITWORD FOLLOW_definer_clause_in_create_statement2209_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(0x0000010000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_definer_clause_in_create_statement2209	= { FOLLOW_definer_clause_in_create_statement2209_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_view_tail_in_create_statement2212  */
static	ANTLR3_BITWORD FOLLOW_create_view_tail_in_create_statement2212_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_create_view_tail_in_create_statement2212	= { FOLLOW_create_view_tail_in_create_statement2212_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_logfile_group_tail_in_create_statement2218  */
static	ANTLR3_BITWORD FOLLOW_create_logfile_group_tail_in_create_statement2218_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_create_logfile_group_tail_in_create_statement2218	= { FOLLOW_create_logfile_group_tail_in_create_statement2218_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_server_tail_in_create_statement2224  */
static	ANTLR3_BITWORD FOLLOW_create_server_tail_in_create_statement2224_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_create_server_tail_in_create_statement2224	= { FOLLOW_create_server_tail_in_create_statement2224_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_tablespace_tail_in_create_statement2230  */
static	ANTLR3_BITWORD FOLLOW_create_tablespace_tail_in_create_statement2230_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_create_tablespace_tail_in_create_statement2230	= { FOLLOW_create_tablespace_tail_in_create_statement2230_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CREATE_SYMBOL_in_create_database2243  */
static	ANTLR3_BITWORD FOLLOW_CREATE_SYMBOL_in_create_database2243_bits[]	= { ANTLR3_UINT64_LIT(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_CREATE_SYMBOL_in_create_database2243	= { FOLLOW_CREATE_SYMBOL_in_create_database2243_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_database_tail_in_create_database2246  */
static	ANTLR3_BITWORD FOLLOW_create_database_tail_in_create_database2246_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000200000) };
static  ANTLR3_BITSET_LIST FOLLOW_create_database_tail_in_create_database2246	= { FOLLOW_create_database_tail_in_create_database2246_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SEMICOLON_SYMBOL_in_create_database2248  */
static	ANTLR3_BITWORD FOLLOW_SEMICOLON_SYMBOL_in_create_database2248_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SEMICOLON_SYMBOL_in_create_database2248	= { FOLLOW_SEMICOLON_SYMBOL_in_create_database2248_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EOF_in_create_database2251  */
static	ANTLR3_BITWORD FOLLOW_EOF_in_create_database2251_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EOF_in_create_database2251	= { FOLLOW_EOF_in_create_database2251_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATABASE_SYMBOL_in_create_database_tail2260  */
static	ANTLR3_BITWORD FOLLOW_DATABASE_SYMBOL_in_create_database_tail2260_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_DATABASE_SYMBOL_in_create_database_tail2260	= { FOLLOW_DATABASE_SYMBOL_in_create_database_tail2260_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_if_not_exists_in_create_database_tail2262  */
static	ANTLR3_BITWORD FOLLOW_if_not_exists_in_create_database_tail2262_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_if_not_exists_in_create_database_tail2262	= { FOLLOW_if_not_exists_in_create_database_tail2262_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_schema_name_in_create_database_tail2265  */
static	ANTLR3_BITWORD FOLLOW_schema_name_in_create_database_tail2265_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(0x0002000000050000) };
static  ANTLR3_BITSET_LIST FOLLOW_schema_name_in_create_database_tail2265	= { FOLLOW_schema_name_in_create_database_tail2265_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_database_option_in_create_database_tail2267  */
static	ANTLR3_BITWORD FOLLOW_database_option_in_create_database_tail2267_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(0x0002000000050000) };
static  ANTLR3_BITSET_LIST FOLLOW_database_option_in_create_database_tail2267	= { FOLLOW_database_option_in_create_database_tail2267_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CREATE_SYMBOL_in_create_with_definer2277  */
static	ANTLR3_BITWORD FOLLOW_CREATE_SYMBOL_in_create_with_definer2277_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0010000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CREATE_SYMBOL_in_create_with_definer2277	= { FOLLOW_CREATE_SYMBOL_in_create_with_definer2277_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_definer_clause_in_create_with_definer2280  */
static	ANTLR3_BITWORD FOLLOW_definer_clause_in_create_with_definer2280_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_definer_clause_in_create_with_definer2280	= { FOLLOW_definer_clause_in_create_with_definer2280_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_with_definer_in_create_event2291  */
static	ANTLR3_BITWORD FOLLOW_create_with_definer_in_create_event2291_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_create_with_definer_in_create_event2291	= { FOLLOW_create_with_definer_in_create_event2291_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_event_tail_in_create_event2293  */
static	ANTLR3_BITWORD FOLLOW_create_event_tail_in_create_event2293_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000200000) };
static  ANTLR3_BITSET_LIST FOLLOW_create_event_tail_in_create_event2293	= { FOLLOW_create_event_tail_in_create_event2293_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SEMICOLON_SYMBOL_in_create_event2295  */
static	ANTLR3_BITWORD FOLLOW_SEMICOLON_SYMBOL_in_create_event2295_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SEMICOLON_SYMBOL_in_create_event2295	= { FOLLOW_SEMICOLON_SYMBOL_in_create_event2295_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EOF_in_create_event2298  */
static	ANTLR3_BITWORD FOLLOW_EOF_in_create_event2298_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EOF_in_create_event2298	= { FOLLOW_EOF_in_create_event2298_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EVENT_SYMBOL_in_create_event_tail2307  */
static	ANTLR3_BITWORD FOLLOW_EVENT_SYMBOL_in_create_event_tail2307_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_EVENT_SYMBOL_in_create_event_tail2307	= { FOLLOW_EVENT_SYMBOL_in_create_event_tail2307_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_if_not_exists_in_create_event_tail2309  */
static	ANTLR3_BITWORD FOLLOW_if_not_exists_in_create_event_tail2309_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_if_not_exists_in_create_event_tail2309	= { FOLLOW_if_not_exists_in_create_event_tail2309_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_event_name_in_create_event_tail2312  */
static	ANTLR3_BITWORD FOLLOW_event_name_in_create_event_tail2312_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_event_name_in_create_event_tail2312	= { FOLLOW_event_name_in_create_event_tail2312_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_create_event_tail2314  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_create_event_tail2314_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_tail2314	= { FOLLOW_ON_SYMBOL_in_create_event_tail2314_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SCHEDULE_SYMBOL_in_create_event_tail2316  */
static	ANTLR3_BITWORD FOLLOW_SCHEDULE_SYMBOL_in_create_event_tail2316_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000008), ANTLR3_UINT64_LIT(0x0000000000000100) };
static  ANTLR3_BITSET_LIST FOLLOW_SCHEDULE_SYMBOL_in_create_event_tail2316	= { FOLLOW_SCHEDULE_SYMBOL_in_create_event_tail2316_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_schedule_in_create_event_tail2318  */
static	ANTLR3_BITWORD FOLLOW_schedule_in_create_event_tail2318_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_schedule_in_create_event_tail2318	= { FOLLOW_schedule_in_create_event_tail2318_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_create_event_tail2323  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_create_event_tail2323_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ON_SYMBOL_in_create_event_tail2323	= { FOLLOW_ON_SYMBOL_in_create_event_tail2323_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMPLETION_SYMBOL_in_create_event_tail2325  */
static	ANTLR3_BITWORD FOLLOW_COMPLETION_SYMBOL_in_create_event_tail2325_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(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMPLETION_SYMBOL_in_create_event_tail2325	= { FOLLOW_COMPLETION_SYMBOL_in_create_event_tail2325_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NOT_SYMBOL_in_create_event_tail2327  */
static	ANTLR3_BITWORD FOLLOW_NOT_SYMBOL_in_create_event_tail2327_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_tail2327	= { FOLLOW_NOT_SYMBOL_in_create_event_tail2327_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PRESERVE_SYMBOL_in_create_event_tail2330  */
static	ANTLR3_BITWORD FOLLOW_PRESERVE_SYMBOL_in_create_event_tail2330_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000044000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_PRESERVE_SYMBOL_in_create_event_tail2330	= { FOLLOW_PRESERVE_SYMBOL_in_create_event_tail2330_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ENABLE_SYMBOL_in_create_event_tail2337  */
static	ANTLR3_BITWORD FOLLOW_ENABLE_SYMBOL_in_create_event_tail2337_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000044000) };
static  ANTLR3_BITSET_LIST FOLLOW_ENABLE_SYMBOL_in_create_event_tail2337	= { FOLLOW_ENABLE_SYMBOL_in_create_event_tail2337_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DISABLE_SYMBOL_in_create_event_tail2341  */
static	ANTLR3_BITWORD FOLLOW_DISABLE_SYMBOL_in_create_event_tail2341_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DISABLE_SYMBOL_in_create_event_tail2341	= { FOLLOW_DISABLE_SYMBOL_in_create_event_tail2341_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_create_event_tail2344  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_create_event_tail2344_bits[]	= { ANTLR3_UINT64_LIT(0x0001000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ON_SYMBOL_in_create_event_tail2344	= { FOLLOW_ON_SYMBOL_in_create_event_tail2344_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SLAVE_SYMBOL_in_create_event_tail2346  */
static	ANTLR3_BITWORD FOLLOW_SLAVE_SYMBOL_in_create_event_tail2346_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000044000) };
static  ANTLR3_BITSET_LIST FOLLOW_SLAVE_SYMBOL_in_create_event_tail2346	= { FOLLOW_SLAVE_SYMBOL_in_create_event_tail2346_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMENT_SYMBOL_in_create_event_tail2355  */
static	ANTLR3_BITWORD FOLLOW_COMMENT_SYMBOL_in_create_event_tail2355_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMENT_SYMBOL_in_create_event_tail2355	= { FOLLOW_COMMENT_SYMBOL_in_create_event_tail2355_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_create_event_tail2357  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_create_event_tail2357_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_create_event_tail2357	= { FOLLOW_string_literal_in_create_event_tail2357_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DO_SYMBOL_in_create_event_tail2363  */
static	ANTLR3_BITWORD FOLLOW_DO_SYMBOL_in_create_event_tail2363_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(0x0238000004025400), ANTLR3_UINT64_LIT(0x0508001020300100), ANTLR3_UINT64_LIT(0x4001400000000211), ANTLR3_UINT64_LIT(0x0000000034106BC0), ANTLR3_UINT64_LIT(0x00100010000A8000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_DO_SYMBOL_in_create_event_tail2363	= { FOLLOW_DO_SYMBOL_in_create_event_tail2363_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_compound_statement_in_create_event_tail2365  */
static	ANTLR3_BITWORD FOLLOW_compound_statement_in_create_event_tail2365_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_compound_statement_in_create_event_tail2365	= { FOLLOW_compound_statement_in_create_event_tail2365_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_with_definer_in_create_routine2375  */
static	ANTLR3_BITWORD FOLLOW_create_with_definer_in_create_routine2375_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(0x2000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_create_with_definer_in_create_routine2375	= { FOLLOW_create_with_definer_in_create_routine2375_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_routine_or_udf_in_create_routine2377  */
static	ANTLR3_BITWORD FOLLOW_create_routine_or_udf_in_create_routine2377_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000200000) };
static  ANTLR3_BITSET_LIST FOLLOW_create_routine_or_udf_in_create_routine2377	= { FOLLOW_create_routine_or_udf_in_create_routine2377_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SEMICOLON_SYMBOL_in_create_routine2379  */
static	ANTLR3_BITWORD FOLLOW_SEMICOLON_SYMBOL_in_create_routine2379_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SEMICOLON_SYMBOL_in_create_routine2379	= { FOLLOW_SEMICOLON_SYMBOL_in_create_routine2379_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EOF_in_create_routine2382  */
static	ANTLR3_BITWORD FOLLOW_EOF_in_create_routine2382_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EOF_in_create_routine2382	= { FOLLOW_EOF_in_create_routine2382_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_with_definer_in_create_procedure2392  */
static	ANTLR3_BITWORD FOLLOW_create_with_definer_in_create_procedure2392_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_create_with_definer_in_create_procedure2392	= { FOLLOW_create_with_definer_in_create_procedure2392_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_procedure_body_in_create_procedure2394  */
static	ANTLR3_BITWORD FOLLOW_procedure_body_in_create_procedure2394_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000200000) };
static  ANTLR3_BITSET_LIST FOLLOW_procedure_body_in_create_procedure2394	= { FOLLOW_procedure_body_in_create_procedure2394_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SEMICOLON_SYMBOL_in_create_procedure2396  */
static	ANTLR3_BITWORD FOLLOW_SEMICOLON_SYMBOL_in_create_procedure2396_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SEMICOLON_SYMBOL_in_create_procedure2396	= { FOLLOW_SEMICOLON_SYMBOL_in_create_procedure2396_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EOF_in_create_procedure2399  */
static	ANTLR3_BITWORD FOLLOW_EOF_in_create_procedure2399_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EOF_in_create_procedure2399	= { FOLLOW_EOF_in_create_procedure2399_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_with_definer_in_create_function2409  */
static	ANTLR3_BITWORD FOLLOW_create_with_definer_in_create_function2409_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_function2409	= { FOLLOW_create_with_definer_in_create_function2409_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_function_body_in_create_function2411  */
static	ANTLR3_BITWORD FOLLOW_function_body_in_create_function2411_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000200000) };
static  ANTLR3_BITSET_LIST FOLLOW_function_body_in_create_function2411	= { FOLLOW_function_body_in_create_function2411_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SEMICOLON_SYMBOL_in_create_function2413  */
static	ANTLR3_BITWORD FOLLOW_SEMICOLON_SYMBOL_in_create_function2413_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SEMICOLON_SYMBOL_in_create_function2413	= { FOLLOW_SEMICOLON_SYMBOL_in_create_function2413_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EOF_in_create_function2416  */
static	ANTLR3_BITWORD FOLLOW_EOF_in_create_function2416_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EOF_in_create_function2416	= { FOLLOW_EOF_in_create_function2416_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_procedure_body_in_create_routine_or_udf2425  */
static	ANTLR3_BITWORD FOLLOW_procedure_body_in_create_routine_or_udf2425_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_procedure_body_in_create_routine_or_udf2425	= { FOLLOW_procedure_body_in_create_routine_or_udf2425_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_function_body_in_create_routine_or_udf2430  */
static	ANTLR3_BITWORD FOLLOW_function_body_in_create_routine_or_udf2430_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_function_body_in_create_routine_or_udf2430	= { FOLLOW_function_body_in_create_routine_or_udf2430_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PROCEDURE_SYMBOL_in_procedure_body2439  */
static	ANTLR3_BITWORD FOLLOW_PROCEDURE_SYMBOL_in_procedure_body2439_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_PROCEDURE_SYMBOL_in_procedure_body2439	= { FOLLOW_PROCEDURE_SYMBOL_in_procedure_body2439_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_procedure_name_in_procedure_body2441  */
static	ANTLR3_BITWORD FOLLOW_procedure_name_in_procedure_body2441_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_procedure_name_in_procedure_body2441	= { FOLLOW_procedure_name_in_procedure_body2441_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_procedure_body2443  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_procedure_body2443_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400400000000), ANTLR3_UINT64_LIT(0x0080000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_procedure_body2443	= { FOLLOW_OPEN_PAR_SYMBOL_in_procedure_body2443_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_procedure_parameter_in_procedure_body2446  */
static	ANTLR3_BITWORD FOLLOW_procedure_parameter_in_procedure_body2446_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_procedure_parameter_in_procedure_body2446	= { FOLLOW_procedure_parameter_in_procedure_body2446_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_procedure_body2449  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_procedure_body2449_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400400000000), ANTLR3_UINT64_LIT(0x0080000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_procedure_body2449	= { FOLLOW_COMMA_SYMBOL_in_procedure_body2449_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_procedure_parameter_in_procedure_body2451  */
static	ANTLR3_BITWORD FOLLOW_procedure_parameter_in_procedure_body2451_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_procedure_parameter_in_procedure_body2451	= { FOLLOW_procedure_parameter_in_procedure_body2451_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_procedure_body2457  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_procedure_body2457_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(0x0278000004025400), ANTLR3_UINT64_LIT(0x0508001020300100), ANTLR3_UINT64_LIT(0x4001400804000211), ANTLR3_UINT64_LIT(0x0000010034106BC1), ANTLR3_UINT64_LIT(0x00100010000A8000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_procedure_body2457	= { FOLLOW_CLOSE_PAR_SYMBOL_in_procedure_body2457_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_routine_create_options_in_procedure_body2461  */
static	ANTLR3_BITWORD FOLLOW_routine_create_options_in_procedure_body2461_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(0x0238000004025400), ANTLR3_UINT64_LIT(0x0508001020300100), ANTLR3_UINT64_LIT(0x4001400000000211), ANTLR3_UINT64_LIT(0x0000000034106BC0), ANTLR3_UINT64_LIT(0x00100010000A8000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_routine_create_options_in_procedure_body2461	= { FOLLOW_routine_create_options_in_procedure_body2461_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_compound_statement_in_procedure_body2464  */
static	ANTLR3_BITWORD FOLLOW_compound_statement_in_procedure_body2464_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_compound_statement_in_procedure_body2464	= { FOLLOW_compound_statement_in_procedure_body2464_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FUNCTION_SYMBOL_in_function_body2474  */
static	ANTLR3_BITWORD FOLLOW_FUNCTION_SYMBOL_in_function_body2474_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_FUNCTION_SYMBOL_in_function_body2474	= { FOLLOW_FUNCTION_SYMBOL_in_function_body2474_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_function_name_in_function_body2481  */
static	ANTLR3_BITWORD FOLLOW_function_name_in_function_body2481_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_function_name_in_function_body2481	= { FOLLOW_function_name_in_function_body2481_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_function_body2483  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_function_body2483_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_function_body2483	= { FOLLOW_OPEN_PAR_SYMBOL_in_function_body2483_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_function_parameter_in_function_body2486  */
static	ANTLR3_BITWORD FOLLOW_function_parameter_in_function_body2486_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_function_parameter_in_function_body2486	= { FOLLOW_function_parameter_in_function_body2486_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_function_body2489  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_function_body2489_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_function_body2489	= { FOLLOW_COMMA_SYMBOL_in_function_body2489_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_function_parameter_in_function_body2491  */
static	ANTLR3_BITWORD FOLLOW_function_parameter_in_function_body2491_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_function_parameter_in_function_body2491	= { FOLLOW_function_parameter_in_function_body2491_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_function_body2497  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_function_body2497_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_body2497	= { FOLLOW_CLOSE_PAR_SYMBOL_in_function_body2497_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RETURNS_SYMBOL_in_function_body2499  */
static	ANTLR3_BITWORD FOLLOW_RETURNS_SYMBOL_in_function_body2499_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(0x0000400000010058), ANTLR3_UINT64_LIT(0x0000200000001000), ANTLR3_UINT64_LIT(0x0000010000070160), ANTLR3_UINT64_LIT(0x0000000084000008), ANTLR3_UINT64_LIT(0x0000000014000038), ANTLR3_UINT64_LIT(0x0000000000200000) };
static  ANTLR3_BITSET_LIST FOLLOW_RETURNS_SYMBOL_in_function_body2499	= { FOLLOW_RETURNS_SYMBOL_in_function_body2499_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_data_type_in_function_body2504  */
static	ANTLR3_BITWORD FOLLOW_data_type_in_function_body2504_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(0x0278000004025400), ANTLR3_UINT64_LIT(0x0508001020300100), ANTLR3_UINT64_LIT(0x4001400804000211), ANTLR3_UINT64_LIT(0x0000010034106BC1), ANTLR3_UINT64_LIT(0x00100010000A8000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_data_type_in_function_body2504	= { FOLLOW_data_type_in_function_body2504_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_routine_create_options_in_function_body2506  */
static	ANTLR3_BITWORD FOLLOW_routine_create_options_in_function_body2506_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(0x0238000004025400), ANTLR3_UINT64_LIT(0x0508001020300100), ANTLR3_UINT64_LIT(0x4001400000000211), ANTLR3_UINT64_LIT(0x0000000034106BC0), ANTLR3_UINT64_LIT(0x00100010000A8000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_routine_create_options_in_function_body2506	= { FOLLOW_routine_create_options_in_function_body2506_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_compound_statement_in_function_body2509  */
static	ANTLR3_BITWORD FOLLOW_compound_statement_in_function_body2509_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_compound_statement_in_function_body2509	= { FOLLOW_compound_statement_in_function_body2509_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_udf_tail_in_function_body2515  */
static	ANTLR3_BITWORD FOLLOW_udf_tail_in_function_body2515_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_udf_tail_in_function_body2515	= { FOLLOW_udf_tail_in_function_body2515_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AGGREGATE_SYMBOL_in_function_body2523  */
static	ANTLR3_BITWORD FOLLOW_AGGREGATE_SYMBOL_in_function_body2523_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_body2523	= { FOLLOW_AGGREGATE_SYMBOL_in_function_body2523_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FUNCTION_SYMBOL_in_function_body2525  */
static	ANTLR3_BITWORD FOLLOW_FUNCTION_SYMBOL_in_function_body2525_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_FUNCTION_SYMBOL_in_function_body2525	= { FOLLOW_FUNCTION_SYMBOL_in_function_body2525_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_udf_tail_in_function_body2527  */
static	ANTLR3_BITWORD FOLLOW_udf_tail_in_function_body2527_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_udf_tail_in_function_body2527	= { FOLLOW_udf_tail_in_function_body2527_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_udf_name_in_udf_tail2537  */
static	ANTLR3_BITWORD FOLLOW_udf_name_in_udf_tail2537_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_tail2537	= { FOLLOW_udf_name_in_udf_tail2537_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RETURNS_SYMBOL_in_udf_tail2539  */
static	ANTLR3_BITWORD FOLLOW_RETURNS_SYMBOL_in_udf_tail2539_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(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000200000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000008) };
static  ANTLR3_BITSET_LIST FOLLOW_RETURNS_SYMBOL_in_udf_tail2539	= { FOLLOW_RETURNS_SYMBOL_in_udf_tail2539_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_udf_tail2541  */
static	ANTLR3_BITWORD FOLLOW_set_in_udf_tail2541_bits[]	= { ANTLR3_UINT64_LIT(0x0004000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_udf_tail2541	= { FOLLOW_set_in_udf_tail2541_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SONAME_SYMBOL_in_udf_tail2557  */
static	ANTLR3_BITWORD FOLLOW_SONAME_SYMBOL_in_udf_tail2557_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SONAME_SYMBOL_in_udf_tail2557	= { FOLLOW_SONAME_SYMBOL_in_udf_tail2557_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_udf_tail2559  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_udf_tail2559_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_udf_tail2559	= { FOLLOW_string_literal_in_udf_tail2559_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_routine_create_option_in_routine_create_options2568  */
static	ANTLR3_BITWORD FOLLOW_routine_create_option_in_routine_create_options2568_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(0x0040000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000804000000), ANTLR3_UINT64_LIT(0x0000010000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_routine_create_option_in_routine_create_options2568	= { FOLLOW_routine_create_option_in_routine_create_options2568_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_routine_option_in_routine_create_option2588  */
static	ANTLR3_BITWORD FOLLOW_routine_option_in_routine_create_option2588_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_routine_option_in_routine_create_option2588	= { FOLLOW_routine_option_in_routine_create_option2588_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NOT_SYMBOL_in_routine_create_option2593  */
static	ANTLR3_BITWORD FOLLOW_NOT_SYMBOL_in_routine_create_option2593_bits[]	= { ANTLR3_UINT64_LIT(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_NOT_SYMBOL_in_routine_create_option2593	= { FOLLOW_NOT_SYMBOL_in_routine_create_option2593_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DETERMINISTIC_SYMBOL_in_routine_create_option2596  */
static	ANTLR3_BITWORD FOLLOW_DETERMINISTIC_SYMBOL_in_routine_create_option2596_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DETERMINISTIC_SYMBOL_in_routine_create_option2596	= { FOLLOW_DETERMINISTIC_SYMBOL_in_routine_create_option2596_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_routine_create_option_in_routine_alter_options2605  */
static	ANTLR3_BITWORD FOLLOW_routine_create_option_in_routine_alter_options2605_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(0x0040000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000804000000), ANTLR3_UINT64_LIT(0x0000010000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_routine_create_option_in_routine_alter_options2605	= { FOLLOW_routine_create_option_in_routine_alter_options2605_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMENT_SYMBOL_in_routine_option2625  */
static	ANTLR3_BITWORD FOLLOW_COMMENT_SYMBOL_in_routine_option2625_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMENT_SYMBOL_in_routine_option2625	= { FOLLOW_COMMENT_SYMBOL_in_routine_option2625_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_routine_option2627  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_routine_option2627_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_routine_option2627	= { FOLLOW_string_literal_in_routine_option2627_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LANGUAGE_SYMBOL_in_routine_option2632  */
static	ANTLR3_BITWORD FOLLOW_LANGUAGE_SYMBOL_in_routine_option2632_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_LANGUAGE_SYMBOL_in_routine_option2632	= { FOLLOW_LANGUAGE_SYMBOL_in_routine_option2632_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SQL_SYMBOL_in_routine_option2634  */
static	ANTLR3_BITWORD FOLLOW_SQL_SYMBOL_in_routine_option2634_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SQL_SYMBOL_in_routine_option2634	= { FOLLOW_SQL_SYMBOL_in_routine_option2634_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NO_SYMBOL_in_routine_option2639  */
static	ANTLR3_BITWORD FOLLOW_NO_SYMBOL_in_routine_option2639_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_NO_SYMBOL_in_routine_option2639	= { FOLLOW_NO_SYMBOL_in_routine_option2639_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SQL_SYMBOL_in_routine_option2641  */
static	ANTLR3_BITWORD FOLLOW_SQL_SYMBOL_in_routine_option2641_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SQL_SYMBOL_in_routine_option2641	= { FOLLOW_SQL_SYMBOL_in_routine_option2641_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CONTAINS_SYMBOL_in_routine_option2646  */
static	ANTLR3_BITWORD FOLLOW_CONTAINS_SYMBOL_in_routine_option2646_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_CONTAINS_SYMBOL_in_routine_option2646	= { FOLLOW_CONTAINS_SYMBOL_in_routine_option2646_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SQL_SYMBOL_in_routine_option2648  */
static	ANTLR3_BITWORD FOLLOW_SQL_SYMBOL_in_routine_option2648_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SQL_SYMBOL_in_routine_option2648	= { FOLLOW_SQL_SYMBOL_in_routine_option2648_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_READS_SYMBOL_in_routine_option2653  */
static	ANTLR3_BITWORD FOLLOW_READS_SYMBOL_in_routine_option2653_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_READS_SYMBOL_in_routine_option2653	= { FOLLOW_READS_SYMBOL_in_routine_option2653_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SQL_SYMBOL_in_routine_option2655  */
static	ANTLR3_BITWORD FOLLOW_SQL_SYMBOL_in_routine_option2655_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SQL_SYMBOL_in_routine_option2655	= { FOLLOW_SQL_SYMBOL_in_routine_option2655_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATA_SYMBOL_in_routine_option2657  */
static	ANTLR3_BITWORD FOLLOW_DATA_SYMBOL_in_routine_option2657_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DATA_SYMBOL_in_routine_option2657	= { FOLLOW_DATA_SYMBOL_in_routine_option2657_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MODIFIES_SYMBOL_in_routine_option2662  */
static	ANTLR3_BITWORD FOLLOW_MODIFIES_SYMBOL_in_routine_option2662_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MODIFIES_SYMBOL_in_routine_option2662	= { FOLLOW_MODIFIES_SYMBOL_in_routine_option2662_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SQL_SYMBOL_in_routine_option2664  */
static	ANTLR3_BITWORD FOLLOW_SQL_SYMBOL_in_routine_option2664_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SQL_SYMBOL_in_routine_option2664	= { FOLLOW_SQL_SYMBOL_in_routine_option2664_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATA_SYMBOL_in_routine_option2666  */
static	ANTLR3_BITWORD FOLLOW_DATA_SYMBOL_in_routine_option2666_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DATA_SYMBOL_in_routine_option2666	= { FOLLOW_DATA_SYMBOL_in_routine_option2666_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SQL_SYMBOL_in_routine_option2671  */
static	ANTLR3_BITWORD FOLLOW_SQL_SYMBOL_in_routine_option2671_bits[]	= { ANTLR3_UINT64_LIT(0x0000200000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SQL_SYMBOL_in_routine_option2671	= { FOLLOW_SQL_SYMBOL_in_routine_option2671_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SECURITY_SYMBOL_in_routine_option2673  */
static	ANTLR3_BITWORD FOLLOW_SECURITY_SYMBOL_in_routine_option2673_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SECURITY_SYMBOL_in_routine_option2673	= { FOLLOW_SECURITY_SYMBOL_in_routine_option2673_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_routine_option2675  */
static	ANTLR3_BITWORD FOLLOW_set_in_routine_option2675_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_routine_option2675	= { FOLLOW_set_in_routine_option2675_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CREATE_SYMBOL_in_create_index2691  */
static	ANTLR3_BITWORD FOLLOW_CREATE_SYMBOL_in_create_index2691_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080040000), ANTLR3_UINT64_LIT(0x0000060000000000), ANTLR3_UINT64_LIT(0x0000000100000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_CREATE_SYMBOL_in_create_index2691	= { FOLLOW_CREATE_SYMBOL_in_create_index2691_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_index_tail_in_create_index2694  */
static	ANTLR3_BITWORD FOLLOW_create_index_tail_in_create_index2694_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000200000) };
static  ANTLR3_BITSET_LIST FOLLOW_create_index_tail_in_create_index2694	= { FOLLOW_create_index_tail_in_create_index2694_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SEMICOLON_SYMBOL_in_create_index2696  */
static	ANTLR3_BITWORD FOLLOW_SEMICOLON_SYMBOL_in_create_index2696_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SEMICOLON_SYMBOL_in_create_index2696	= { FOLLOW_SEMICOLON_SYMBOL_in_create_index2696_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EOF_in_create_index2699  */
static	ANTLR3_BITWORD FOLLOW_EOF_in_create_index2699_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EOF_in_create_index2699	= { FOLLOW_EOF_in_create_index2699_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_online_option_in_create_index_tail2708  */
static	ANTLR3_BITWORD FOLLOW_online_option_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(0x0000000080040000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000100000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_online_option_in_create_index_tail2708	= { FOLLOW_online_option_in_create_index_tail2708_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNIQUE_SYMBOL_in_create_index_tail2716  */
static	ANTLR3_BITWORD FOLLOW_UNIQUE_SYMBOL_in_create_index_tail2716_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_UNIQUE_SYMBOL_in_create_index_tail2716	= { FOLLOW_UNIQUE_SYMBOL_in_create_index_tail2716_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INDEX_SYMBOL_in_create_index_tail2719  */
static	ANTLR3_BITWORD FOLLOW_INDEX_SYMBOL_in_create_index_tail2719_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_INDEX_SYMBOL_in_create_index_tail2719	= { FOLLOW_INDEX_SYMBOL_in_create_index_tail2719_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_name_in_create_index_tail2721  */
static	ANTLR3_BITWORD FOLLOW_index_name_in_create_index_tail2721_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(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_name_in_create_index_tail2721	= { FOLLOW_index_name_in_create_index_tail2721_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_type_in_create_index_tail2723  */
static	ANTLR3_BITWORD FOLLOW_index_type_in_create_index_tail2723_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_index_type_in_create_index_tail2723	= { FOLLOW_index_type_in_create_index_tail2723_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_index_target_in_create_index_tail2726  */
static	ANTLR3_BITWORD FOLLOW_create_index_target_in_create_index_tail2726_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(0x0000000000000010), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_create_index_target_in_create_index_tail2726	= { FOLLOW_create_index_target_in_create_index_tail2726_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_normal_index_option_in_create_index_tail2728  */
static	ANTLR3_BITWORD FOLLOW_normal_index_option_in_create_index_tail2728_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(0x0000000000000010), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_normal_index_option_in_create_index_tail2728	= { FOLLOW_normal_index_option_in_create_index_tail2728_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_lock_algorithm_in_create_index_tail2731  */
static	ANTLR3_BITWORD FOLLOW_index_lock_algorithm_in_create_index_tail2731_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_index_lock_algorithm_in_create_index_tail2731	= { FOLLOW_index_lock_algorithm_in_create_index_tail2731_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FULLTEXT_SYMBOL_in_create_index_tail2738  */
static	ANTLR3_BITWORD FOLLOW_FULLTEXT_SYMBOL_in_create_index_tail2738_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_FULLTEXT_SYMBOL_in_create_index_tail2738	= { FOLLOW_FULLTEXT_SYMBOL_in_create_index_tail2738_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INDEX_SYMBOL_in_create_index_tail2740  */
static	ANTLR3_BITWORD FOLLOW_INDEX_SYMBOL_in_create_index_tail2740_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_INDEX_SYMBOL_in_create_index_tail2740	= { FOLLOW_INDEX_SYMBOL_in_create_index_tail2740_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_name_in_create_index_tail2742  */
static	ANTLR3_BITWORD FOLLOW_index_name_in_create_index_tail2742_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_index_name_in_create_index_tail2742	= { FOLLOW_index_name_in_create_index_tail2742_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_index_target_in_create_index_tail2744  */
static	ANTLR3_BITWORD FOLLOW_create_index_target_in_create_index_tail2744_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(0x0000000000000010), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_create_index_target_in_create_index_tail2744	= { FOLLOW_create_index_target_in_create_index_tail2744_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_fulltext_index_option_in_create_index_tail2746  */
static	ANTLR3_BITWORD FOLLOW_fulltext_index_option_in_create_index_tail2746_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(0x0000000000000010), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_fulltext_index_option_in_create_index_tail2746	= { FOLLOW_fulltext_index_option_in_create_index_tail2746_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_lock_algorithm_in_create_index_tail2749  */
static	ANTLR3_BITWORD FOLLOW_index_lock_algorithm_in_create_index_tail2749_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_index_lock_algorithm_in_create_index_tail2749	= { FOLLOW_index_lock_algorithm_in_create_index_tail2749_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SPATIAL_SYMBOL_in_create_index_tail2756  */
static	ANTLR3_BITWORD FOLLOW_SPATIAL_SYMBOL_in_create_index_tail2756_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_SPATIAL_SYMBOL_in_create_index_tail2756	= { FOLLOW_SPATIAL_SYMBOL_in_create_index_tail2756_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INDEX_SYMBOL_in_create_index_tail2758  */
static	ANTLR3_BITWORD FOLLOW_INDEX_SYMBOL_in_create_index_tail2758_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_INDEX_SYMBOL_in_create_index_tail2758	= { FOLLOW_INDEX_SYMBOL_in_create_index_tail2758_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_name_in_create_index_tail2760  */
static	ANTLR3_BITWORD FOLLOW_index_name_in_create_index_tail2760_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_index_name_in_create_index_tail2760	= { FOLLOW_index_name_in_create_index_tail2760_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_index_target_in_create_index_tail2762  */
static	ANTLR3_BITWORD FOLLOW_create_index_target_in_create_index_tail2762_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(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_create_index_target_in_create_index_tail2762	= { FOLLOW_create_index_target_in_create_index_tail2762_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_spatial_index_option_in_create_index_tail2764  */
static	ANTLR3_BITWORD FOLLOW_spatial_index_option_in_create_index_tail2764_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(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_spatial_index_option_in_create_index_tail2764	= { FOLLOW_spatial_index_option_in_create_index_tail2764_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_lock_algorithm_in_create_index_tail2767  */
static	ANTLR3_BITWORD FOLLOW_index_lock_algorithm_in_create_index_tail2767_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_index_lock_algorithm_in_create_index_tail2767	= { FOLLOW_index_lock_algorithm_in_create_index_tail2767_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_create_index_target2780  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_create_index_target2780_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_ON_SYMBOL_in_create_index_target2780	= { FOLLOW_ON_SYMBOL_in_create_index_target2780_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_create_index_target2783  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_create_index_target2783_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_in_create_index_target2783	= { FOLLOW_table_ref_in_create_index_target2783_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_columns_in_create_index_target2785  */
static	ANTLR3_BITWORD FOLLOW_index_columns_in_create_index_target2785_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_index_columns_in_create_index_target2785	= { FOLLOW_index_columns_in_create_index_target2785_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CREATE_SYMBOL_in_create_logfile_group2795  */
static	ANTLR3_BITWORD FOLLOW_CREATE_SYMBOL_in_create_logfile_group2795_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0040000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CREATE_SYMBOL_in_create_logfile_group2795	= { FOLLOW_CREATE_SYMBOL_in_create_logfile_group2795_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_logfile_group_tail_in_create_logfile_group2798  */
static	ANTLR3_BITWORD FOLLOW_create_logfile_group_tail_in_create_logfile_group2798_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000200000) };
static  ANTLR3_BITSET_LIST FOLLOW_create_logfile_group_tail_in_create_logfile_group2798	= { FOLLOW_create_logfile_group_tail_in_create_logfile_group2798_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SEMICOLON_SYMBOL_in_create_logfile_group2800  */
static	ANTLR3_BITWORD FOLLOW_SEMICOLON_SYMBOL_in_create_logfile_group2800_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SEMICOLON_SYMBOL_in_create_logfile_group2800	= { FOLLOW_SEMICOLON_SYMBOL_in_create_logfile_group2800_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EOF_in_create_logfile_group2803  */
static	ANTLR3_BITWORD FOLLOW_EOF_in_create_logfile_group2803_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EOF_in_create_logfile_group2803	= { FOLLOW_EOF_in_create_logfile_group2803_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOGFILE_SYMBOL_in_create_logfile_group_tail2812  */
static	ANTLR3_BITWORD FOLLOW_LOGFILE_SYMBOL_in_create_logfile_group_tail2812_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_LOGFILE_SYMBOL_in_create_logfile_group_tail2812	= { FOLLOW_LOGFILE_SYMBOL_in_create_logfile_group_tail2812_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GROUP_SYMBOL_in_create_logfile_group_tail2814  */
static	ANTLR3_BITWORD FOLLOW_GROUP_SYMBOL_in_create_logfile_group_tail2814_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_GROUP_SYMBOL_in_create_logfile_group_tail2814	= { FOLLOW_GROUP_SYMBOL_in_create_logfile_group_tail2814_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_logfile_group_name_in_create_logfile_group_tail2816  */
static	ANTLR3_BITWORD FOLLOW_logfile_group_name_in_create_logfile_group_tail2816_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_tail2816	= { FOLLOW_logfile_group_name_in_create_logfile_group_tail2816_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ADD_SYMBOL_in_create_logfile_group_tail2818  */
static	ANTLR3_BITWORD FOLLOW_ADD_SYMBOL_in_create_logfile_group_tail2818_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_tail2818	= { FOLLOW_ADD_SYMBOL_in_create_logfile_group_tail2818_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_create_logfile_group_tail2820  */
static	ANTLR3_BITWORD FOLLOW_set_in_create_logfile_group_tail2820_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_create_logfile_group_tail2820	= { FOLLOW_set_in_create_logfile_group_tail2820_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_create_logfile_group_tail2828  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_create_logfile_group_tail2828_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_tail2828	= { FOLLOW_string_literal_in_create_logfile_group_tail2828_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_logfile_group_options_in_create_logfile_group_tail2832  */
static	ANTLR3_BITWORD FOLLOW_logfile_group_options_in_create_logfile_group_tail2832_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_logfile_group_options_in_create_logfile_group_tail2832	= { FOLLOW_logfile_group_options_in_create_logfile_group_tail2832_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_logfile_group_option_in_logfile_group_options2843  */
static	ANTLR3_BITWORD FOLLOW_logfile_group_option_in_logfile_group_options2843_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(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_logfile_group_option_in_logfile_group_options2843	= { FOLLOW_logfile_group_option_in_logfile_group_options2843_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_logfile_group_options2846  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_logfile_group_options2846_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_options2846	= { FOLLOW_COMMA_SYMBOL_in_logfile_group_options2846_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_logfile_group_option_in_logfile_group_options2849  */
static	ANTLR3_BITWORD FOLLOW_logfile_group_option_in_logfile_group_options2849_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(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_logfile_group_option_in_logfile_group_options2849	= { FOLLOW_logfile_group_option_in_logfile_group_options2849_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INITIAL_SIZE_SYMBOL_in_logfile_group_option2879  */
static	ANTLR3_BITWORD FOLLOW_INITIAL_SIZE_SYMBOL_in_logfile_group_option2879_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0400011000900000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INITIAL_SIZE_SYMBOL_in_logfile_group_option2879	= { FOLLOW_INITIAL_SIZE_SYMBOL_in_logfile_group_option2879_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_logfile_group_option2881  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_logfile_group_option2881_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0400011000100000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_logfile_group_option2881	= { FOLLOW_EQUAL_OPERATOR_in_logfile_group_option2881_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_size_number_in_logfile_group_option2884  */
static	ANTLR3_BITWORD FOLLOW_size_number_in_logfile_group_option2884_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_size_number_in_logfile_group_option2884	= { FOLLOW_size_number_in_logfile_group_option2884_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_logfile_group_option2889  */
static	ANTLR3_BITWORD FOLLOW_set_in_logfile_group_option2889_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0400011000900000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_logfile_group_option2889	= { FOLLOW_set_in_logfile_group_option2889_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_logfile_group_option2897  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_logfile_group_option2897_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0400011000100000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_logfile_group_option2897	= { FOLLOW_EQUAL_OPERATOR_in_logfile_group_option2897_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_size_number_in_logfile_group_option2900  */
static	ANTLR3_BITWORD FOLLOW_size_number_in_logfile_group_option2900_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_size_number_in_logfile_group_option2900	= { FOLLOW_size_number_in_logfile_group_option2900_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NODEGROUP_SYMBOL_in_logfile_group_option2905  */
static	ANTLR3_BITWORD FOLLOW_NODEGROUP_SYMBOL_in_logfile_group_option2905_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010800800000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_NODEGROUP_SYMBOL_in_logfile_group_option2905	= { FOLLOW_NODEGROUP_SYMBOL_in_logfile_group_option2905_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_logfile_group_option2907  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_logfile_group_option2907_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010800000000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_logfile_group_option2907	= { FOLLOW_EQUAL_OPERATOR_in_logfile_group_option2907_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_real_ulong_number_in_logfile_group_option2910  */
static	ANTLR3_BITWORD FOLLOW_real_ulong_number_in_logfile_group_option2910_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_real_ulong_number_in_logfile_group_option2910	= { FOLLOW_real_ulong_number_in_logfile_group_option2910_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_logfile_group_option2915  */
static	ANTLR3_BITWORD FOLLOW_set_in_logfile_group_option2915_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_logfile_group_option2915	= { FOLLOW_set_in_logfile_group_option2915_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMENT_SYMBOL_in_logfile_group_option2926  */
static	ANTLR3_BITWORD FOLLOW_COMMENT_SYMBOL_in_logfile_group_option2926_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000900000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMENT_SYMBOL_in_logfile_group_option2926	= { FOLLOW_COMMENT_SYMBOL_in_logfile_group_option2926_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_logfile_group_option2928  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_logfile_group_option2928_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_logfile_group_option2928	= { FOLLOW_EQUAL_OPERATOR_in_logfile_group_option2928_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_logfile_group_option2931  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_logfile_group_option2931_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_logfile_group_option2931	= { FOLLOW_string_literal_in_logfile_group_option2931_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STORAGE_SYMBOL_in_logfile_group_option2936  */
static	ANTLR3_BITWORD FOLLOW_STORAGE_SYMBOL_in_logfile_group_option2936_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_STORAGE_SYMBOL_in_logfile_group_option2936	= { FOLLOW_STORAGE_SYMBOL_in_logfile_group_option2936_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ENGINE_SYMBOL_in_logfile_group_option2939  */
static	ANTLR3_BITWORD FOLLOW_ENGINE_SYMBOL_in_logfile_group_option2939_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000900000) };
static  ANTLR3_BITSET_LIST FOLLOW_ENGINE_SYMBOL_in_logfile_group_option2939	= { FOLLOW_ENGINE_SYMBOL_in_logfile_group_option2939_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_logfile_group_option2941  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_logfile_group_option2941_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_logfile_group_option2941	= { FOLLOW_EQUAL_OPERATOR_in_logfile_group_option2941_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_engine_ref_in_logfile_group_option2944  */
static	ANTLR3_BITWORD FOLLOW_engine_ref_in_logfile_group_option2944_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_engine_ref_in_logfile_group_option2944	= { FOLLOW_engine_ref_in_logfile_group_option2944_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CREATE_SYMBOL_in_create_server2955  */
static	ANTLR3_BITWORD FOLLOW_CREATE_SYMBOL_in_create_server2955_bits[]	= { ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CREATE_SYMBOL_in_create_server2955	= { FOLLOW_CREATE_SYMBOL_in_create_server2955_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_server_tail_in_create_server2958  */
static	ANTLR3_BITWORD FOLLOW_create_server_tail_in_create_server2958_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000200000) };
static  ANTLR3_BITSET_LIST FOLLOW_create_server_tail_in_create_server2958	= { FOLLOW_create_server_tail_in_create_server2958_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SEMICOLON_SYMBOL_in_create_server2960  */
static	ANTLR3_BITWORD FOLLOW_SEMICOLON_SYMBOL_in_create_server2960_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SEMICOLON_SYMBOL_in_create_server2960	= { FOLLOW_SEMICOLON_SYMBOL_in_create_server2960_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EOF_in_create_server2963  */
static	ANTLR3_BITWORD FOLLOW_EOF_in_create_server2963_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EOF_in_create_server2963	= { FOLLOW_EOF_in_create_server2963_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SERVER_SYMBOL_in_create_server_tail2972  */
static	ANTLR3_BITWORD FOLLOW_SERVER_SYMBOL_in_create_server_tail2972_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_SERVER_SYMBOL_in_create_server_tail2972	= { FOLLOW_SERVER_SYMBOL_in_create_server_tail2972_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_server_name_in_create_server_tail2974  */
static	ANTLR3_BITWORD FOLLOW_server_name_in_create_server_tail2974_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_server_name_in_create_server_tail2974	= { FOLLOW_server_name_in_create_server_tail2974_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOREIGN_SYMBOL_in_create_server_tail2978  */
static	ANTLR3_BITWORD FOLLOW_FOREIGN_SYMBOL_in_create_server_tail2978_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FOREIGN_SYMBOL_in_create_server_tail2978	= { FOLLOW_FOREIGN_SYMBOL_in_create_server_tail2978_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATA_SYMBOL_in_create_server_tail2980  */
static	ANTLR3_BITWORD FOLLOW_DATA_SYMBOL_in_create_server_tail2980_bits[]	= { ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DATA_SYMBOL_in_create_server_tail2980	= { FOLLOW_DATA_SYMBOL_in_create_server_tail2980_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WRAPPER_SYMBOL_in_create_server_tail2982  */
static	ANTLR3_BITWORD FOLLOW_WRAPPER_SYMBOL_in_create_server_tail2982_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_WRAPPER_SYMBOL_in_create_server_tail2982	= { FOLLOW_WRAPPER_SYMBOL_in_create_server_tail2982_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_identifier_in_create_server_tail2984  */
static	ANTLR3_BITWORD FOLLOW_text_or_identifier_in_create_server_tail2984_bits[]	= { ANTLR3_UINT64_LIT(0x0000000100000000) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_identifier_in_create_server_tail2984	= { FOLLOW_text_or_identifier_in_create_server_tail2984_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_server_options_in_create_server_tail2986  */
static	ANTLR3_BITWORD FOLLOW_server_options_in_create_server_tail2986_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_server_options_in_create_server_tail2986	= { FOLLOW_server_options_in_create_server_tail2986_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPTIONS_SYMBOL_in_server_options2995  */
static	ANTLR3_BITWORD FOLLOW_OPTIONS_SYMBOL_in_server_options2995_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_OPTIONS_SYMBOL_in_server_options2995	= { FOLLOW_OPTIONS_SYMBOL_in_server_options2995_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_server_options2998  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_server_options2998_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(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_server_options2998	= { FOLLOW_OPEN_PAR_SYMBOL_in_server_options2998_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_server_option_in_server_options3000  */
static	ANTLR3_BITWORD FOLLOW_server_option_in_server_options3000_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_server_option_in_server_options3000	= { FOLLOW_server_option_in_server_options3000_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_server_options3003  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_server_options3003_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(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_server_options3003	= { FOLLOW_COMMA_SYMBOL_in_server_options3003_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_server_option_in_server_options3005  */
static	ANTLR3_BITWORD FOLLOW_server_option_in_server_options3005_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_server_option_in_server_options3005	= { FOLLOW_server_option_in_server_options3005_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_server_options3009  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_server_options3009_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_server_options3009	= { FOLLOW_CLOSE_PAR_SYMBOL_in_server_options3009_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_HOST_SYMBOL_in_server_option3019  */
static	ANTLR3_BITWORD FOLLOW_HOST_SYMBOL_in_server_option3019_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_HOST_SYMBOL_in_server_option3019	= { FOLLOW_HOST_SYMBOL_in_server_option3019_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_server_option3021  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_server_option3021_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_server_option3021	= { FOLLOW_string_literal_in_server_option3021_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATABASE_SYMBOL_in_server_option3026  */
static	ANTLR3_BITWORD FOLLOW_DATABASE_SYMBOL_in_server_option3026_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DATABASE_SYMBOL_in_server_option3026	= { FOLLOW_DATABASE_SYMBOL_in_server_option3026_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_server_option3028  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_server_option3028_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_server_option3028	= { FOLLOW_string_literal_in_server_option3028_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USER_SYMBOL_in_server_option3033  */
static	ANTLR3_BITWORD FOLLOW_USER_SYMBOL_in_server_option3033_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_USER_SYMBOL_in_server_option3033	= { FOLLOW_USER_SYMBOL_in_server_option3033_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_server_option3035  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_server_option3035_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_server_option3035	= { FOLLOW_string_literal_in_server_option3035_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PASSWORD_SYMBOL_in_server_option3040  */
static	ANTLR3_BITWORD FOLLOW_PASSWORD_SYMBOL_in_server_option3040_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PASSWORD_SYMBOL_in_server_option3040	= { FOLLOW_PASSWORD_SYMBOL_in_server_option3040_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_server_option3042  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_server_option3042_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_server_option3042	= { FOLLOW_string_literal_in_server_option3042_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SOCKET_SYMBOL_in_server_option3047  */
static	ANTLR3_BITWORD FOLLOW_SOCKET_SYMBOL_in_server_option3047_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SOCKET_SYMBOL_in_server_option3047	= { FOLLOW_SOCKET_SYMBOL_in_server_option3047_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_server_option3049  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_server_option3049_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_server_option3049	= { FOLLOW_string_literal_in_server_option3049_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OWNER_SYMBOL_in_server_option3054  */
static	ANTLR3_BITWORD FOLLOW_OWNER_SYMBOL_in_server_option3054_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OWNER_SYMBOL_in_server_option3054	= { FOLLOW_OWNER_SYMBOL_in_server_option3054_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_server_option3056  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_server_option3056_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_server_option3056	= { FOLLOW_string_literal_in_server_option3056_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PORT_SYMBOL_in_server_option3061  */
static	ANTLR3_BITWORD FOLLOW_PORT_SYMBOL_in_server_option3061_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010810000800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PORT_SYMBOL_in_server_option3061	= { FOLLOW_PORT_SYMBOL_in_server_option3061_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_server_option3063  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_server_option3063_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_server_option3063	= { FOLLOW_ulong_number_in_server_option3063_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CREATE_SYMBOL_in_create_table3073  */
static	ANTLR3_BITWORD FOLLOW_CREATE_SYMBOL_in_create_table3073_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(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_CREATE_SYMBOL_in_create_table3073	= { FOLLOW_CREATE_SYMBOL_in_create_table3073_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_table_tail_in_create_table3076  */
static	ANTLR3_BITWORD FOLLOW_create_table_tail_in_create_table3076_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000200000) };
static  ANTLR3_BITSET_LIST FOLLOW_create_table_tail_in_create_table3076	= { FOLLOW_create_table_tail_in_create_table3076_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SEMICOLON_SYMBOL_in_create_table3078  */
static	ANTLR3_BITWORD FOLLOW_SEMICOLON_SYMBOL_in_create_table3078_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SEMICOLON_SYMBOL_in_create_table3078	= { FOLLOW_SEMICOLON_SYMBOL_in_create_table3078_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EOF_in_create_table3081  */
static	ANTLR3_BITWORD FOLLOW_EOF_in_create_table3081_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EOF_in_create_table3081	= { FOLLOW_EOF_in_create_table3081_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TEMPORARY_SYMBOL_in_create_table_tail3090  */
static	ANTLR3_BITWORD FOLLOW_TEMPORARY_SYMBOL_in_create_table_tail3090_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_TEMPORARY_SYMBOL_in_create_table_tail3090	= { FOLLOW_TEMPORARY_SYMBOL_in_create_table_tail3090_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLE_SYMBOL_in_create_table_tail3093  */
static	ANTLR3_BITWORD FOLLOW_TABLE_SYMBOL_in_create_table_tail3093_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLE_SYMBOL_in_create_table_tail3093	= { FOLLOW_TABLE_SYMBOL_in_create_table_tail3093_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_if_not_exists_in_create_table_tail3095  */
static	ANTLR3_BITWORD FOLLOW_if_not_exists_in_create_table_tail3095_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_if_not_exists_in_create_table_tail3095	= { FOLLOW_if_not_exists_in_create_table_tail3095_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_name_in_create_table_tail3098  */
static	ANTLR3_BITWORD FOLLOW_table_name_in_create_table_tail3098_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(0x0002000000050000), ANTLR3_UINT64_LIT(0x10000000C0000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000100200), ANTLR3_UINT64_LIT(0x0000800000002000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_name_in_create_table_tail3098	= { FOLLOW_table_name_in_create_table_tail3098_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_create_table_tail3107  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_create_table_tail3107_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000420000), ANTLR3_UINT64_LIT(0x0080000080044000), ANTLR3_UINT64_LIT(0x1000000000000000), ANTLR3_UINT64_LIT(0x0000000100000000), ANTLR3_UINT64_LIT(0x0010000000004000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_create_table_tail3107	= { FOLLOW_OPEN_PAR_SYMBOL_in_create_table_tail3107_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_field_list_in_create_table_tail3120  */
static	ANTLR3_BITWORD FOLLOW_create_field_list_in_create_table_tail3120_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_field_list_in_create_table_tail3120	= { FOLLOW_create_field_list_in_create_table_tail3120_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_create_table_tail3122  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_create_table_tail3122_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(0x0002000000050000), ANTLR3_UINT64_LIT(0x00000000C0000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000100200), ANTLR3_UINT64_LIT(0x0000800000002000) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_create_table_tail3122	= { FOLLOW_CLOSE_PAR_SYMBOL_in_create_table_tail3122_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_table_options_in_create_table_tail3124  */
static	ANTLR3_BITWORD FOLLOW_create_table_options_in_create_table_tail3124_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(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000100200), ANTLR3_UINT64_LIT(0x0000800000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_create_table_options_in_create_table_tail3124	= { FOLLOW_create_table_options_in_create_table_tail3124_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partitioning_in_create_table_tail3127  */
static	ANTLR3_BITWORD FOLLOW_partitioning_in_create_table_tail3127_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000100200), ANTLR3_UINT64_LIT(0x0000800000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_partitioning_in_create_table_tail3127	= { FOLLOW_partitioning_in_create_table_tail3127_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_creation_source_in_create_table_tail3130  */
static	ANTLR3_BITWORD FOLLOW_table_creation_source_in_create_table_tail3130_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_creation_source_in_create_table_tail3130	= { FOLLOW_table_creation_source_in_create_table_tail3130_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partitioning_in_create_table_tail3140  */
static	ANTLR3_BITWORD FOLLOW_partitioning_in_create_table_tail3140_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_partitioning_in_create_table_tail3140	= { FOLLOW_partitioning_in_create_table_tail3140_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_select_in_create_table_tail3142  */
static	ANTLR3_BITWORD FOLLOW_create_select_in_create_table_tail3142_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_create_table_tail3142	= { FOLLOW_create_select_in_create_table_tail3142_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_create_table_tail3144  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_create_table_tail3144_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000002000) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_create_table_tail3144	= { FOLLOW_CLOSE_PAR_SYMBOL_in_create_table_tail3144_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_union_clause_in_create_table_tail3146  */
static	ANTLR3_BITWORD FOLLOW_union_clause_in_create_table_tail3146_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_union_clause_in_create_table_tail3146	= { FOLLOW_union_clause_in_create_table_tail3146_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_table_options_in_create_table_tail3160  */
static	ANTLR3_BITWORD FOLLOW_create_table_options_in_create_table_tail3160_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000100200), ANTLR3_UINT64_LIT(0x0000800000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_create_table_options_in_create_table_tail3160	= { FOLLOW_create_table_options_in_create_table_tail3160_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partitioning_in_create_table_tail3163  */
static	ANTLR3_BITWORD FOLLOW_partitioning_in_create_table_tail3163_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000100200), ANTLR3_UINT64_LIT(0x0000800000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_partitioning_in_create_table_tail3163	= { FOLLOW_partitioning_in_create_table_tail3163_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_creation_source_in_create_table_tail3166  */
static	ANTLR3_BITWORD FOLLOW_table_creation_source_in_create_table_tail3166_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_creation_source_in_create_table_tail3166	= { FOLLOW_table_creation_source_in_create_table_tail3166_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LIKE_SYMBOL_in_create_table_tail3173  */
static	ANTLR3_BITWORD FOLLOW_LIKE_SYMBOL_in_create_table_tail3173_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_LIKE_SYMBOL_in_create_table_tail3173	= { FOLLOW_LIKE_SYMBOL_in_create_table_tail3173_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_create_table_tail3175  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_create_table_tail3175_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_in_create_table_tail3175	= { FOLLOW_table_ref_in_create_table_tail3175_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_create_table_tail3182  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_create_table_tail3182_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_create_table_tail3182	= { FOLLOW_OPEN_PAR_SYMBOL_in_create_table_tail3182_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LIKE_SYMBOL_in_create_table_tail3184  */
static	ANTLR3_BITWORD FOLLOW_LIKE_SYMBOL_in_create_table_tail3184_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_LIKE_SYMBOL_in_create_table_tail3184	= { FOLLOW_LIKE_SYMBOL_in_create_table_tail3184_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_create_table_tail3186  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_create_table_tail3186_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_table_ref_in_create_table_tail3186	= { FOLLOW_table_ref_in_create_table_tail3186_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_create_table_tail3188  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_create_table_tail3188_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_create_table_tail3188	= { FOLLOW_CLOSE_PAR_SYMBOL_in_create_table_tail3188_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_item_in_create_field_list3201  */
static	ANTLR3_BITWORD FOLLOW_create_item_in_create_field_list3201_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_create_item_in_create_field_list3201	= { FOLLOW_create_item_in_create_field_list3201_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_create_field_list3204  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_create_field_list3204_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000420000), ANTLR3_UINT64_LIT(0x0080000080044000), ANTLR3_UINT64_LIT(0x1000000000000000), ANTLR3_UINT64_LIT(0x0000000100000000), ANTLR3_UINT64_LIT(0x0010000000004000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_create_field_list3204	= { FOLLOW_COMMA_SYMBOL_in_create_field_list3204_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_item_in_create_field_list3206  */
static	ANTLR3_BITWORD FOLLOW_create_item_in_create_field_list3206_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_create_item_in_create_field_list3206	= { FOLLOW_create_item_in_create_field_list3206_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_field_list_item_in_create_item3217  */
static	ANTLR3_BITWORD FOLLOW_create_field_list_item_in_create_item3217_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_create_field_list_item_in_create_item3217	= { FOLLOW_create_field_list_item_in_create_item3217_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_definition_in_create_field_list_item3234  */
static	ANTLR3_BITWORD FOLLOW_column_definition_in_create_field_list_item3234_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_column_definition_in_create_field_list_item3234	= { FOLLOW_column_definition_in_create_field_list_item3234_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_key_def_in_create_field_list_item3239  */
static	ANTLR3_BITWORD FOLLOW_key_def_in_create_field_list_item3239_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_key_def_in_create_field_list_item3239	= { FOLLOW_key_def_in_create_field_list_item3239_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AS_SYMBOL_in_table_creation_source3258  */
static	ANTLR3_BITWORD FOLLOW_AS_SYMBOL_in_table_creation_source3258_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_AS_SYMBOL_in_table_creation_source3258	= { FOLLOW_AS_SYMBOL_in_table_creation_source3258_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_select_in_table_creation_source3266  */
static	ANTLR3_BITWORD FOLLOW_create_select_in_table_creation_source3266_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000002000) };
static  ANTLR3_BITSET_LIST FOLLOW_create_select_in_table_creation_source3266	= { FOLLOW_create_select_in_table_creation_source3266_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_union_clause_in_table_creation_source3268  */
static	ANTLR3_BITWORD FOLLOW_union_clause_in_table_creation_source3268_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_union_clause_in_table_creation_source3268	= { FOLLOW_union_clause_in_table_creation_source3268_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_table_creation_source3275  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_table_creation_source3275_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_OPEN_PAR_SYMBOL_in_table_creation_source3275	= { FOLLOW_OPEN_PAR_SYMBOL_in_table_creation_source3275_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_select_in_table_creation_source3277  */
static	ANTLR3_BITWORD FOLLOW_create_select_in_table_creation_source3277_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_source3277	= { FOLLOW_create_select_in_table_creation_source3277_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_table_creation_source3279  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_table_creation_source3279_bits[]	= { ANTLR3_UINT64_LIT(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(0x2000000000000000), ANTLR3_UINT64_LIT(0x0008000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000002000) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_table_creation_source3279	= { FOLLOW_CLOSE_PAR_SYMBOL_in_table_creation_source3279_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_union_or_order_by_or_limit_in_table_creation_source3281  */
static	ANTLR3_BITWORD FOLLOW_union_or_order_by_or_limit_in_table_creation_source3281_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_union_or_order_by_or_limit_in_table_creation_source3281	= { FOLLOW_union_or_order_by_or_limit_in_table_creation_source3281_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SELECT_SYMBOL_in_create_select3295  */
static	ANTLR3_BITWORD FOLLOW_SELECT_SYMBOL_in_create_select3295_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(0x010000A953013010), ANTLR3_UINT64_LIT(0x08000810224000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x36A000E040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x4D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_SELECT_SYMBOL_in_create_select3295	= { FOLLOW_SELECT_SYMBOL_in_create_select3295_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_option_in_create_select3311  */
static	ANTLR3_BITWORD FOLLOW_select_option_in_create_select3311_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(0x010000A953013010), ANTLR3_UINT64_LIT(0x08000810224000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x36A000E040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x4D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_select_option_in_create_select3311	= { FOLLOW_select_option_in_create_select3311_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_item_list_in_create_select3315  */
static	ANTLR3_BITWORD FOLLOW_select_item_list_in_create_select3315_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000001828000), ANTLR3_UINT64_LIT(0x2008000000000010), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_select_item_list_in_create_select3315	= { FOLLOW_select_item_list_in_create_select3315_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_expression_in_create_select3317  */
static	ANTLR3_BITWORD FOLLOW_table_expression_in_create_select3317_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_expression_in_create_select3317	= { FOLLOW_table_expression_in_create_select3317_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CREATE_SYMBOL_in_create_tablespace3327  */
static	ANTLR3_BITWORD FOLLOW_CREATE_SYMBOL_in_create_tablespace3327_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_tablespace3327	= { FOLLOW_CREATE_SYMBOL_in_create_tablespace3327_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_tablespace_tail_in_create_tablespace3330  */
static	ANTLR3_BITWORD FOLLOW_create_tablespace_tail_in_create_tablespace3330_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000200000) };
static  ANTLR3_BITSET_LIST FOLLOW_create_tablespace_tail_in_create_tablespace3330	= { FOLLOW_create_tablespace_tail_in_create_tablespace3330_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SEMICOLON_SYMBOL_in_create_tablespace3332  */
static	ANTLR3_BITWORD FOLLOW_SEMICOLON_SYMBOL_in_create_tablespace3332_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SEMICOLON_SYMBOL_in_create_tablespace3332	= { FOLLOW_SEMICOLON_SYMBOL_in_create_tablespace3332_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EOF_in_create_tablespace3335  */
static	ANTLR3_BITWORD FOLLOW_EOF_in_create_tablespace3335_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EOF_in_create_tablespace3335	= { FOLLOW_EOF_in_create_tablespace3335_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLESPACE_SYMBOL_in_create_tablespace_tail3344  */
static	ANTLR3_BITWORD FOLLOW_TABLESPACE_SYMBOL_in_create_tablespace_tail3344_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLESPACE_SYMBOL_in_create_tablespace_tail3344	= { FOLLOW_TABLESPACE_SYMBOL_in_create_tablespace_tail3344_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_tablespace_name_in_create_tablespace_tail3346  */
static	ANTLR3_BITWORD FOLLOW_tablespace_name_in_create_tablespace_tail3346_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_tail3346	= { FOLLOW_tablespace_name_in_create_tablespace_tail3346_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ADD_SYMBOL_in_create_tablespace_tail3348  */
static	ANTLR3_BITWORD FOLLOW_ADD_SYMBOL_in_create_tablespace_tail3348_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000800000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ADD_SYMBOL_in_create_tablespace_tail3348	= { FOLLOW_ADD_SYMBOL_in_create_tablespace_tail3348_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATAFILE_SYMBOL_in_create_tablespace_tail3350  */
static	ANTLR3_BITWORD FOLLOW_DATAFILE_SYMBOL_in_create_tablespace_tail3350_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DATAFILE_SYMBOL_in_create_tablespace_tail3350	= { FOLLOW_DATAFILE_SYMBOL_in_create_tablespace_tail3350_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_create_tablespace_tail3352  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_create_tablespace_tail3352_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(0x0000000000080000) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_create_tablespace_tail3352	= { FOLLOW_string_literal_in_create_tablespace_tail3352_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USE_SYMBOL_in_create_tablespace_tail3357  */
static	ANTLR3_BITWORD FOLLOW_USE_SYMBOL_in_create_tablespace_tail3357_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0040000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_USE_SYMBOL_in_create_tablespace_tail3357	= { FOLLOW_USE_SYMBOL_in_create_tablespace_tail3357_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOGFILE_SYMBOL_in_create_tablespace_tail3359  */
static	ANTLR3_BITWORD FOLLOW_LOGFILE_SYMBOL_in_create_tablespace_tail3359_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_LOGFILE_SYMBOL_in_create_tablespace_tail3359	= { FOLLOW_LOGFILE_SYMBOL_in_create_tablespace_tail3359_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GROUP_SYMBOL_in_create_tablespace_tail3361  */
static	ANTLR3_BITWORD FOLLOW_GROUP_SYMBOL_in_create_tablespace_tail3361_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_GROUP_SYMBOL_in_create_tablespace_tail3361	= { FOLLOW_GROUP_SYMBOL_in_create_tablespace_tail3361_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_logfile_group_ref_in_create_tablespace_tail3363  */
static	ANTLR3_BITWORD FOLLOW_logfile_group_ref_in_create_tablespace_tail3363_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_tail3363	= { FOLLOW_logfile_group_ref_in_create_tablespace_tail3363_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_tablespace_options_in_create_tablespace_tail3367  */
static	ANTLR3_BITWORD FOLLOW_tablespace_options_in_create_tablespace_tail3367_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_tablespace_options_in_create_tablespace_tail3367	= { FOLLOW_tablespace_options_in_create_tablespace_tail3367_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_tablespace_option_in_tablespace_options3378  */
static	ANTLR3_BITWORD FOLLOW_tablespace_option_in_tablespace_options3378_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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_tablespace_option_in_tablespace_options3378	= { FOLLOW_tablespace_option_in_tablespace_options3378_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_tablespace_options3381  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_tablespace_options3381_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_options3381	= { FOLLOW_COMMA_SYMBOL_in_tablespace_options3381_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_tablespace_option_in_tablespace_options3384  */
static	ANTLR3_BITWORD FOLLOW_tablespace_option_in_tablespace_options3384_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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_tablespace_option_in_tablespace_options3384	= { FOLLOW_tablespace_option_in_tablespace_options3384_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INITIAL_SIZE_SYMBOL_in_tablespace_option3414  */
static	ANTLR3_BITWORD FOLLOW_INITIAL_SIZE_SYMBOL_in_tablespace_option3414_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0400011000900000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INITIAL_SIZE_SYMBOL_in_tablespace_option3414	= { FOLLOW_INITIAL_SIZE_SYMBOL_in_tablespace_option3414_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_tablespace_option3416  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_tablespace_option3416_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0400011000100000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_tablespace_option3416	= { FOLLOW_EQUAL_OPERATOR_in_tablespace_option3416_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_size_number_in_tablespace_option3419  */
static	ANTLR3_BITWORD FOLLOW_size_number_in_tablespace_option3419_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_size_number_in_tablespace_option3419	= { FOLLOW_size_number_in_tablespace_option3419_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AUTOEXTEND_SIZE_SYMBOL_in_tablespace_option3424  */
static	ANTLR3_BITWORD FOLLOW_AUTOEXTEND_SIZE_SYMBOL_in_tablespace_option3424_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0400011000900000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_AUTOEXTEND_SIZE_SYMBOL_in_tablespace_option3424	= { FOLLOW_AUTOEXTEND_SIZE_SYMBOL_in_tablespace_option3424_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_tablespace_option3426  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_tablespace_option3426_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0400011000100000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_tablespace_option3426	= { FOLLOW_EQUAL_OPERATOR_in_tablespace_option3426_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_size_number_in_tablespace_option3429  */
static	ANTLR3_BITWORD FOLLOW_size_number_in_tablespace_option3429_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_size_number_in_tablespace_option3429	= { FOLLOW_size_number_in_tablespace_option3429_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MAX_SIZE_SYMBOL_in_tablespace_option3434  */
static	ANTLR3_BITWORD FOLLOW_MAX_SIZE_SYMBOL_in_tablespace_option3434_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0400011000900000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MAX_SIZE_SYMBOL_in_tablespace_option3434	= { FOLLOW_MAX_SIZE_SYMBOL_in_tablespace_option3434_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_tablespace_option3436  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_tablespace_option3436_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0400011000100000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_tablespace_option3436	= { FOLLOW_EQUAL_OPERATOR_in_tablespace_option3436_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_size_number_in_tablespace_option3439  */
static	ANTLR3_BITWORD FOLLOW_size_number_in_tablespace_option3439_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_size_number_in_tablespace_option3439	= { FOLLOW_size_number_in_tablespace_option3439_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EXTENT_SIZE_SYMBOL_in_tablespace_option3444  */
static	ANTLR3_BITWORD FOLLOW_EXTENT_SIZE_SYMBOL_in_tablespace_option3444_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0400011000900000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EXTENT_SIZE_SYMBOL_in_tablespace_option3444	= { FOLLOW_EXTENT_SIZE_SYMBOL_in_tablespace_option3444_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_tablespace_option3446  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_tablespace_option3446_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0400011000100000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_tablespace_option3446	= { FOLLOW_EQUAL_OPERATOR_in_tablespace_option3446_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_size_number_in_tablespace_option3449  */
static	ANTLR3_BITWORD FOLLOW_size_number_in_tablespace_option3449_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_size_number_in_tablespace_option3449	= { FOLLOW_size_number_in_tablespace_option3449_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NODEGROUP_SYMBOL_in_tablespace_option3454  */
static	ANTLR3_BITWORD FOLLOW_NODEGROUP_SYMBOL_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010800800000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_NODEGROUP_SYMBOL_in_tablespace_option3454	= { FOLLOW_NODEGROUP_SYMBOL_in_tablespace_option3454_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_tablespace_option3456  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_tablespace_option3456_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010800000000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_tablespace_option3456	= { FOLLOW_EQUAL_OPERATOR_in_tablespace_option3456_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_real_ulong_number_in_tablespace_option3459  */
static	ANTLR3_BITWORD FOLLOW_real_ulong_number_in_tablespace_option3459_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_real_ulong_number_in_tablespace_option3459	= { FOLLOW_real_ulong_number_in_tablespace_option3459_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STORAGE_SYMBOL_in_tablespace_option3464  */
static	ANTLR3_BITWORD FOLLOW_STORAGE_SYMBOL_in_tablespace_option3464_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_STORAGE_SYMBOL_in_tablespace_option3464	= { FOLLOW_STORAGE_SYMBOL_in_tablespace_option3464_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ENGINE_SYMBOL_in_tablespace_option3467  */
static	ANTLR3_BITWORD FOLLOW_ENGINE_SYMBOL_in_tablespace_option3467_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000900000) };
static  ANTLR3_BITSET_LIST FOLLOW_ENGINE_SYMBOL_in_tablespace_option3467	= { FOLLOW_ENGINE_SYMBOL_in_tablespace_option3467_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_tablespace_option3469  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_tablespace_option3469_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_tablespace_option3469	= { FOLLOW_EQUAL_OPERATOR_in_tablespace_option3469_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_engine_ref_in_tablespace_option3472  */
static	ANTLR3_BITWORD FOLLOW_engine_ref_in_tablespace_option3472_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_engine_ref_in_tablespace_option3472	= { FOLLOW_engine_ref_in_tablespace_option3472_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_tablespace_option3477  */
static	ANTLR3_BITWORD FOLLOW_set_in_tablespace_option3477_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_tablespace_option3477	= { FOLLOW_set_in_tablespace_option3477_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMENT_SYMBOL_in_tablespace_option3488  */
static	ANTLR3_BITWORD FOLLOW_COMMENT_SYMBOL_in_tablespace_option3488_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000900000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMENT_SYMBOL_in_tablespace_option3488	= { FOLLOW_COMMENT_SYMBOL_in_tablespace_option3488_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_tablespace_option3490  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_tablespace_option3490_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_tablespace_option3490	= { FOLLOW_EQUAL_OPERATOR_in_tablespace_option3490_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_tablespace_option3493  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_tablespace_option3493_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_tablespace_option3493	= { FOLLOW_string_literal_in_tablespace_option3493_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FILE_BLOCK_SIZE_SYMBOL_in_tablespace_option3500  */
static	ANTLR3_BITWORD FOLLOW_FILE_BLOCK_SIZE_SYMBOL_in_tablespace_option3500_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0400011000900000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FILE_BLOCK_SIZE_SYMBOL_in_tablespace_option3500	= { FOLLOW_FILE_BLOCK_SIZE_SYMBOL_in_tablespace_option3500_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_tablespace_option3502  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_tablespace_option3502_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0400011000100000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_tablespace_option3502	= { FOLLOW_EQUAL_OPERATOR_in_tablespace_option3502_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_size_number_in_tablespace_option3505  */
static	ANTLR3_BITWORD FOLLOW_size_number_in_tablespace_option3505_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_size_number_in_tablespace_option3505	= { FOLLOW_size_number_in_tablespace_option3505_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_with_definer_in_create_trigger3515  */
static	ANTLR3_BITWORD FOLLOW_create_with_definer_in_create_trigger3515_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000100) };
static  ANTLR3_BITSET_LIST FOLLOW_create_with_definer_in_create_trigger3515	= { FOLLOW_create_with_definer_in_create_trigger3515_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_trigger_tail_in_create_trigger3517  */
static	ANTLR3_BITWORD FOLLOW_create_trigger_tail_in_create_trigger3517_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000200000) };
static  ANTLR3_BITSET_LIST FOLLOW_create_trigger_tail_in_create_trigger3517	= { FOLLOW_create_trigger_tail_in_create_trigger3517_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SEMICOLON_SYMBOL_in_create_trigger3519  */
static	ANTLR3_BITWORD FOLLOW_SEMICOLON_SYMBOL_in_create_trigger3519_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SEMICOLON_SYMBOL_in_create_trigger3519	= { FOLLOW_SEMICOLON_SYMBOL_in_create_trigger3519_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EOF_in_create_trigger3522  */
static	ANTLR3_BITWORD FOLLOW_EOF_in_create_trigger3522_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EOF_in_create_trigger3522	= { FOLLOW_EOF_in_create_trigger3522_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TRIGGER_SYMBOL_in_create_trigger_tail3531  */
static	ANTLR3_BITWORD FOLLOW_TRIGGER_SYMBOL_in_create_trigger_tail3531_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_TRIGGER_SYMBOL_in_create_trigger_tail3531	= { FOLLOW_TRIGGER_SYMBOL_in_create_trigger_tail3531_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_trigger_name_in_create_trigger_tail3533  */
static	ANTLR3_BITWORD FOLLOW_trigger_name_in_create_trigger_tail3533_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(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_trigger_name_in_create_trigger_tail3533	= { FOLLOW_trigger_name_in_create_trigger_tail3533_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_create_trigger_tail3535  */
static	ANTLR3_BITWORD FOLLOW_set_in_create_trigger_tail3535_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0008000000000000), ANTLR3_UINT64_LIT(0x0000001000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_create_trigger_tail3535	= { FOLLOW_set_in_create_trigger_tail3535_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_create_trigger_tail3543  */
static	ANTLR3_BITWORD FOLLOW_set_in_create_trigger_tail3543_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_set_in_create_trigger_tail3543	= { FOLLOW_set_in_create_trigger_tail3543_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_create_trigger_tail3557  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_create_trigger_tail3557_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_ON_SYMBOL_in_create_trigger_tail3557	= { FOLLOW_ON_SYMBOL_in_create_trigger_tail3557_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_create_trigger_tail3559  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_create_trigger_tail3559_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_table_ref_in_create_trigger_tail3559	= { FOLLOW_table_ref_in_create_trigger_tail3559_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOR_SYMBOL_in_create_trigger_tail3561  */
static	ANTLR3_BITWORD FOLLOW_FOR_SYMBOL_in_create_trigger_tail3561_bits[]	= { ANTLR3_UINT64_LIT(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_FOR_SYMBOL_in_create_trigger_tail3561	= { FOLLOW_FOR_SYMBOL_in_create_trigger_tail3561_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EACH_SYMBOL_in_create_trigger_tail3563  */
static	ANTLR3_BITWORD FOLLOW_EACH_SYMBOL_in_create_trigger_tail3563_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_tail3563	= { FOLLOW_EACH_SYMBOL_in_create_trigger_tail3563_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ROW_SYMBOL_in_create_trigger_tail3565  */
static	ANTLR3_BITWORD FOLLOW_ROW_SYMBOL_in_create_trigger_tail3565_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(0x0238000004025400), ANTLR3_UINT64_LIT(0x0508001020300100), ANTLR3_UINT64_LIT(0x4001400000000211), ANTLR3_UINT64_LIT(0x0000000034106BC0), ANTLR3_UINT64_LIT(0x00100010000A8000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_ROW_SYMBOL_in_create_trigger_tail3565	= { FOLLOW_ROW_SYMBOL_in_create_trigger_tail3565_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_trigger_follows_precedes_clause_in_create_trigger_tail3567  */
static	ANTLR3_BITWORD FOLLOW_trigger_follows_precedes_clause_in_create_trigger_tail3567_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(0x0238000004025400), ANTLR3_UINT64_LIT(0x0508001020300100), ANTLR3_UINT64_LIT(0x4001400000000211), ANTLR3_UINT64_LIT(0x0000000034106BC0), ANTLR3_UINT64_LIT(0x00100010000A8000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_trigger_follows_precedes_clause_in_create_trigger_tail3567	= { FOLLOW_trigger_follows_precedes_clause_in_create_trigger_tail3567_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_compound_statement_in_create_trigger_tail3570  */
static	ANTLR3_BITWORD FOLLOW_compound_statement_in_create_trigger_tail3570_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_compound_statement_in_create_trigger_tail3570	= { FOLLOW_compound_statement_in_create_trigger_tail3570_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_trigger_follows_precedes_clause3581  */
static	ANTLR3_BITWORD FOLLOW_set_in_trigger_follows_precedes_clause3581_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_trigger_follows_precedes_clause3581	= { FOLLOW_set_in_trigger_follows_precedes_clause3581_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_identifier_in_trigger_follows_precedes_clause3589  */
static	ANTLR3_BITWORD FOLLOW_text_or_identifier_in_trigger_follows_precedes_clause3589_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_identifier_in_trigger_follows_precedes_clause3589	= { FOLLOW_text_or_identifier_in_trigger_follows_precedes_clause3589_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CREATE_SYMBOL_in_create_view3601  */
static	ANTLR3_BITWORD FOLLOW_CREATE_SYMBOL_in_create_view3601_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(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000010000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CREATE_SYMBOL_in_create_view3601	= { FOLLOW_CREATE_SYMBOL_in_create_view3601_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OR_SYMBOL_in_create_view3605  */
static	ANTLR3_BITWORD FOLLOW_OR_SYMBOL_in_create_view3605_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_OR_SYMBOL_in_create_view3605	= { FOLLOW_OR_SYMBOL_in_create_view3605_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REPLACE_SYMBOL_in_create_view3607  */
static	ANTLR3_BITWORD FOLLOW_REPLACE_SYMBOL_in_create_view3607_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(0x0000010000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_REPLACE_SYMBOL_in_create_view3607	= { FOLLOW_REPLACE_SYMBOL_in_create_view3607_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_view_algorithm_in_create_view3611  */
static	ANTLR3_BITWORD FOLLOW_view_algorithm_in_create_view3611_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(0x0000010000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_view_algorithm_in_create_view3611	= { FOLLOW_view_algorithm_in_create_view3611_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_definer_clause_in_create_view3615  */
static	ANTLR3_BITWORD FOLLOW_definer_clause_in_create_view3615_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(0x0000010000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_definer_clause_in_create_view3615	= { FOLLOW_definer_clause_in_create_view3615_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_view_tail_in_create_view3618  */
static	ANTLR3_BITWORD FOLLOW_create_view_tail_in_create_view3618_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000200000) };
static  ANTLR3_BITSET_LIST FOLLOW_create_view_tail_in_create_view3618	= { FOLLOW_create_view_tail_in_create_view3618_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SEMICOLON_SYMBOL_in_create_view3620  */
static	ANTLR3_BITWORD FOLLOW_SEMICOLON_SYMBOL_in_create_view3620_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SEMICOLON_SYMBOL_in_create_view3620	= { FOLLOW_SEMICOLON_SYMBOL_in_create_view3620_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EOF_in_create_view3623  */
static	ANTLR3_BITWORD FOLLOW_EOF_in_create_view3623_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EOF_in_create_view3623	= { FOLLOW_EOF_in_create_view3623_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SQL_SYMBOL_in_create_view_tail3633  */
static	ANTLR3_BITWORD FOLLOW_SQL_SYMBOL_in_create_view_tail3633_bits[]	= { ANTLR3_UINT64_LIT(0x0000200000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SQL_SYMBOL_in_create_view_tail3633	= { FOLLOW_SQL_SYMBOL_in_create_view_tail3633_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SECURITY_SYMBOL_in_create_view_tail3635  */
static	ANTLR3_BITWORD FOLLOW_SECURITY_SYMBOL_in_create_view_tail3635_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SECURITY_SYMBOL_in_create_view_tail3635	= { FOLLOW_SECURITY_SYMBOL_in_create_view_tail3635_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_create_view_tail3637  */
static	ANTLR3_BITWORD FOLLOW_set_in_create_view_tail3637_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_tail3637	= { FOLLOW_set_in_create_view_tail3637_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VIEW_SYMBOL_in_create_view_tail3649  */
static	ANTLR3_BITWORD FOLLOW_VIEW_SYMBOL_in_create_view_tail3649_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_VIEW_SYMBOL_in_create_view_tail3649	= { FOLLOW_VIEW_SYMBOL_in_create_view_tail3649_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_view_name_in_create_view_tail3651  */
static	ANTLR3_BITWORD FOLLOW_view_name_in_create_view_tail3651_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000800000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_view_name_in_create_view_tail3651	= { FOLLOW_view_name_in_create_view_tail3651_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_with_parentheses_in_create_view_tail3653  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_with_parentheses_in_create_view_tail3653_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_identifier_list_with_parentheses_in_create_view_tail3653	= { FOLLOW_identifier_list_with_parentheses_in_create_view_tail3653_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AS_SYMBOL_in_create_view_tail3658  */
static	ANTLR3_BITWORD FOLLOW_AS_SYMBOL_in_create_view_tail3658_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_AS_SYMBOL_in_create_view_tail3658	= { FOLLOW_AS_SYMBOL_in_create_view_tail3658_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_statement_in_create_view_tail3660  */
static	ANTLR3_BITWORD FOLLOW_select_statement_in_create_view_tail3660_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000010000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_select_statement_in_create_view_tail3660	= { FOLLOW_select_statement_in_create_view_tail3660_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WITH_SYMBOL_in_create_view_tail3665  */
static	ANTLR3_BITWORD FOLLOW_WITH_SYMBOL_in_create_view_tail3665_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(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_WITH_SYMBOL_in_create_view_tail3665	= { FOLLOW_WITH_SYMBOL_in_create_view_tail3665_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHECK_SYMBOL_in_create_view_tail3676  */
static	ANTLR3_BITWORD FOLLOW_CHECK_SYMBOL_in_create_view_tail3676_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_CHECK_SYMBOL_in_create_view_tail3676	= { FOLLOW_CHECK_SYMBOL_in_create_view_tail3676_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPTION_SYMBOL_in_create_view_tail3678  */
static	ANTLR3_BITWORD FOLLOW_OPTION_SYMBOL_in_create_view_tail3678_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_OPTION_SYMBOL_in_create_view_tail3678	= { FOLLOW_OPTION_SYMBOL_in_create_view_tail3678_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OR_SYMBOL_in_view_replace_or_algorithm3689  */
static	ANTLR3_BITWORD FOLLOW_OR_SYMBOL_in_view_replace_or_algorithm3689_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_OR_SYMBOL_in_view_replace_or_algorithm3689	= { FOLLOW_OR_SYMBOL_in_view_replace_or_algorithm3689_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REPLACE_SYMBOL_in_view_replace_or_algorithm3691  */
static	ANTLR3_BITWORD FOLLOW_REPLACE_SYMBOL_in_view_replace_or_algorithm3691_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_REPLACE_SYMBOL_in_view_replace_or_algorithm3691	= { FOLLOW_REPLACE_SYMBOL_in_view_replace_or_algorithm3691_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_view_algorithm_in_view_replace_or_algorithm3693  */
static	ANTLR3_BITWORD FOLLOW_view_algorithm_in_view_replace_or_algorithm3693_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_view_algorithm_in_view_replace_or_algorithm3693	= { FOLLOW_view_algorithm_in_view_replace_or_algorithm3693_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_view_algorithm_in_view_replace_or_algorithm3699  */
static	ANTLR3_BITWORD FOLLOW_view_algorithm_in_view_replace_or_algorithm3699_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_view_algorithm_in_view_replace_or_algorithm3699	= { FOLLOW_view_algorithm_in_view_replace_or_algorithm3699_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALGORITHM_SYMBOL_in_view_algorithm3708  */
static	ANTLR3_BITWORD FOLLOW_ALGORITHM_SYMBOL_in_view_algorithm3708_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_ALGORITHM_SYMBOL_in_view_algorithm3708	= { FOLLOW_ALGORITHM_SYMBOL_in_view_algorithm3708_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_view_algorithm3710  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_view_algorithm3710_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_algorithm3710	= { FOLLOW_EQUAL_OPERATOR_in_view_algorithm3710_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_view_algorithm3712  */
static	ANTLR3_BITWORD FOLLOW_set_in_view_algorithm3712_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_view_algorithm3712	= { FOLLOW_set_in_view_algorithm3712_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DROP_SYMBOL_in_drop_statement3733  */
static	ANTLR3_BITWORD FOLLOW_DROP_SYMBOL_in_drop_statement3733_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(0x0000000800000000), ANTLR3_UINT64_LIT(0x0000000080000000), ANTLR3_UINT64_LIT(0x2000060000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000101) };
static  ANTLR3_BITSET_LIST FOLLOW_DROP_SYMBOL_in_drop_statement3733	= { FOLLOW_DROP_SYMBOL_in_drop_statement3733_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATABASE_SYMBOL_in_drop_statement3741  */
static	ANTLR3_BITWORD FOLLOW_DATABASE_SYMBOL_in_drop_statement3741_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_DATABASE_SYMBOL_in_drop_statement3741	= { FOLLOW_DATABASE_SYMBOL_in_drop_statement3741_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_if_exists_in_drop_statement3743  */
static	ANTLR3_BITWORD FOLLOW_if_exists_in_drop_statement3743_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_if_exists_in_drop_statement3743	= { FOLLOW_if_exists_in_drop_statement3743_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_schema_ref_in_drop_statement3746  */
static	ANTLR3_BITWORD FOLLOW_schema_ref_in_drop_statement3746_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_schema_ref_in_drop_statement3746	= { FOLLOW_schema_ref_in_drop_statement3746_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EVENT_SYMBOL_in_drop_statement3754  */
static	ANTLR3_BITWORD FOLLOW_EVENT_SYMBOL_in_drop_statement3754_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_EVENT_SYMBOL_in_drop_statement3754	= { FOLLOW_EVENT_SYMBOL_in_drop_statement3754_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_if_exists_in_drop_statement3756  */
static	ANTLR3_BITWORD FOLLOW_if_exists_in_drop_statement3756_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_if_exists_in_drop_statement3756	= { FOLLOW_if_exists_in_drop_statement3756_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_event_ref_in_drop_statement3759  */
static	ANTLR3_BITWORD FOLLOW_event_ref_in_drop_statement3759_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_event_ref_in_drop_statement3759	= { FOLLOW_event_ref_in_drop_statement3759_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FUNCTION_SYMBOL_in_drop_statement3774  */
static	ANTLR3_BITWORD FOLLOW_FUNCTION_SYMBOL_in_drop_statement3774_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_FUNCTION_SYMBOL_in_drop_statement3774	= { FOLLOW_FUNCTION_SYMBOL_in_drop_statement3774_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_if_exists_in_drop_statement3776  */
static	ANTLR3_BITWORD FOLLOW_if_exists_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_if_exists_in_drop_statement3776	= { FOLLOW_if_exists_in_drop_statement3776_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_function_ref_in_drop_statement3779  */
static	ANTLR3_BITWORD FOLLOW_function_ref_in_drop_statement3779_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_function_ref_in_drop_statement3779	= { FOLLOW_function_ref_in_drop_statement3779_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PROCEDURE_SYMBOL_in_drop_statement3788  */
static	ANTLR3_BITWORD FOLLOW_PROCEDURE_SYMBOL_in_drop_statement3788_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_PROCEDURE_SYMBOL_in_drop_statement3788	= { FOLLOW_PROCEDURE_SYMBOL_in_drop_statement3788_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_if_exists_in_drop_statement3790  */
static	ANTLR3_BITWORD FOLLOW_if_exists_in_drop_statement3790_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_if_exists_in_drop_statement3790	= { FOLLOW_if_exists_in_drop_statement3790_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_procedure_ref_in_drop_statement3793  */
static	ANTLR3_BITWORD FOLLOW_procedure_ref_in_drop_statement3793_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_procedure_ref_in_drop_statement3793	= { FOLLOW_procedure_ref_in_drop_statement3793_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_online_option_in_drop_statement3804  */
static	ANTLR3_BITWORD FOLLOW_online_option_in_drop_statement3804_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_online_option_in_drop_statement3804	= { FOLLOW_online_option_in_drop_statement3804_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INDEX_SYMBOL_in_drop_statement3807  */
static	ANTLR3_BITWORD FOLLOW_INDEX_SYMBOL_in_drop_statement3807_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_INDEX_SYMBOL_in_drop_statement3807	= { FOLLOW_INDEX_SYMBOL_in_drop_statement3807_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_ref_in_drop_statement3809  */
static	ANTLR3_BITWORD FOLLOW_index_ref_in_drop_statement3809_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_index_ref_in_drop_statement3809	= { FOLLOW_index_ref_in_drop_statement3809_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_drop_statement3811  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_ON_SYMBOL_in_drop_statement3811	= { FOLLOW_ON_SYMBOL_in_drop_statement3811_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_drop_statement3813  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_drop_statement3813_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(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_in_drop_statement3813	= { FOLLOW_table_ref_in_drop_statement3813_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_lock_algorithm_in_drop_statement3815  */
static	ANTLR3_BITWORD FOLLOW_index_lock_algorithm_in_drop_statement3815_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_index_lock_algorithm_in_drop_statement3815	= { FOLLOW_index_lock_algorithm_in_drop_statement3815_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOGFILE_SYMBOL_in_drop_statement3822  */
static	ANTLR3_BITWORD FOLLOW_LOGFILE_SYMBOL_in_drop_statement3822_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_LOGFILE_SYMBOL_in_drop_statement3822	= { FOLLOW_LOGFILE_SYMBOL_in_drop_statement3822_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GROUP_SYMBOL_in_drop_statement3824  */
static	ANTLR3_BITWORD FOLLOW_GROUP_SYMBOL_in_drop_statement3824_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_GROUP_SYMBOL_in_drop_statement3824	= { FOLLOW_GROUP_SYMBOL_in_drop_statement3824_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_logfile_group_ref_in_drop_statement3826  */
static	ANTLR3_BITWORD FOLLOW_logfile_group_ref_in_drop_statement3826_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_statement3826	= { FOLLOW_logfile_group_ref_in_drop_statement3826_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_drop_logfile_group_option_in_drop_statement3829  */
static	ANTLR3_BITWORD FOLLOW_drop_logfile_group_option_in_drop_statement3829_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(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_drop_logfile_group_option_in_drop_statement3829	= { FOLLOW_drop_logfile_group_option_in_drop_statement3829_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_drop_statement3832  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_drop_statement3832_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_statement3832	= { FOLLOW_COMMA_SYMBOL_in_drop_statement3832_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_drop_logfile_group_option_in_drop_statement3835  */
static	ANTLR3_BITWORD FOLLOW_drop_logfile_group_option_in_drop_statement3835_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(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_drop_logfile_group_option_in_drop_statement3835	= { FOLLOW_drop_logfile_group_option_in_drop_statement3835_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SERVER_SYMBOL_in_drop_statement3845  */
static	ANTLR3_BITWORD FOLLOW_SERVER_SYMBOL_in_drop_statement3845_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_SERVER_SYMBOL_in_drop_statement3845	= { FOLLOW_SERVER_SYMBOL_in_drop_statement3845_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_if_exists_in_drop_statement3847  */
static	ANTLR3_BITWORD FOLLOW_if_exists_in_drop_statement3847_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_if_exists_in_drop_statement3847	= { FOLLOW_if_exists_in_drop_statement3847_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_server_ref_in_drop_statement3850  */
static	ANTLR3_BITWORD FOLLOW_server_ref_in_drop_statement3850_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_server_ref_in_drop_statement3850	= { FOLLOW_server_ref_in_drop_statement3850_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TEMPORARY_SYMBOL_in_drop_statement3856  */
static	ANTLR3_BITWORD FOLLOW_TEMPORARY_SYMBOL_in_drop_statement3856_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(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_TEMPORARY_SYMBOL_in_drop_statement3856	= { FOLLOW_TEMPORARY_SYMBOL_in_drop_statement3856_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_drop_statement3859  */
static	ANTLR3_BITWORD FOLLOW_set_in_drop_statement3859_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_drop_statement3859	= { FOLLOW_set_in_drop_statement3859_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_if_exists_in_drop_statement3867  */
static	ANTLR3_BITWORD FOLLOW_if_exists_in_drop_statement3867_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_if_exists_in_drop_statement3867	= { FOLLOW_if_exists_in_drop_statement3867_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_list_in_drop_statement3870  */
static	ANTLR3_BITWORD FOLLOW_table_ref_list_in_drop_statement3870_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_list_in_drop_statement3870	= { FOLLOW_table_ref_list_in_drop_statement3870_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLESPACE_SYMBOL_in_drop_statement3885  */
static	ANTLR3_BITWORD FOLLOW_TABLESPACE_SYMBOL_in_drop_statement3885_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLESPACE_SYMBOL_in_drop_statement3885	= { FOLLOW_TABLESPACE_SYMBOL_in_drop_statement3885_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_tablespace_ref_in_drop_statement3887  */
static	ANTLR3_BITWORD FOLLOW_tablespace_ref_in_drop_statement3887_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_statement3887	= { FOLLOW_tablespace_ref_in_drop_statement3887_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_drop_logfile_group_option_in_drop_statement3890  */
static	ANTLR3_BITWORD FOLLOW_drop_logfile_group_option_in_drop_statement3890_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(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_drop_logfile_group_option_in_drop_statement3890	= { FOLLOW_drop_logfile_group_option_in_drop_statement3890_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_drop_statement3893  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_drop_statement3893_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_statement3893	= { FOLLOW_COMMA_SYMBOL_in_drop_statement3893_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_drop_logfile_group_option_in_drop_statement3896  */
static	ANTLR3_BITWORD FOLLOW_drop_logfile_group_option_in_drop_statement3896_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(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_drop_logfile_group_option_in_drop_statement3896	= { FOLLOW_drop_logfile_group_option_in_drop_statement3896_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TRIGGER_SYMBOL_in_drop_statement3906  */
static	ANTLR3_BITWORD FOLLOW_TRIGGER_SYMBOL_in_drop_statement3906_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_TRIGGER_SYMBOL_in_drop_statement3906	= { FOLLOW_TRIGGER_SYMBOL_in_drop_statement3906_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_if_exists_in_drop_statement3908  */
static	ANTLR3_BITWORD FOLLOW_if_exists_in_drop_statement3908_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_if_exists_in_drop_statement3908	= { FOLLOW_if_exists_in_drop_statement3908_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_trigger_ref_in_drop_statement3911  */
static	ANTLR3_BITWORD FOLLOW_trigger_ref_in_drop_statement3911_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_trigger_ref_in_drop_statement3911	= { FOLLOW_trigger_ref_in_drop_statement3911_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VIEW_SYMBOL_in_drop_statement3917  */
static	ANTLR3_BITWORD FOLLOW_VIEW_SYMBOL_in_drop_statement3917_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_VIEW_SYMBOL_in_drop_statement3917	= { FOLLOW_VIEW_SYMBOL_in_drop_statement3917_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_if_exists_in_drop_statement3919  */
static	ANTLR3_BITWORD FOLLOW_if_exists_in_drop_statement3919_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_if_exists_in_drop_statement3919	= { FOLLOW_if_exists_in_drop_statement3919_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_view_identifier_list_in_drop_statement3922  */
static	ANTLR3_BITWORD FOLLOW_view_identifier_list_in_drop_statement3922_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000) };
static  ANTLR3_BITSET_LIST FOLLOW_view_identifier_list_in_drop_statement3922	= { FOLLOW_view_identifier_list_in_drop_statement3922_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_drop_logfile_group_option3943  */
static	ANTLR3_BITWORD FOLLOW_set_in_drop_logfile_group_option3943_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_drop_logfile_group_option3943	= { FOLLOW_set_in_drop_logfile_group_option3943_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STORAGE_SYMBOL_in_drop_logfile_group_option3954  */
static	ANTLR3_BITWORD FOLLOW_STORAGE_SYMBOL_in_drop_logfile_group_option3954_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_STORAGE_SYMBOL_in_drop_logfile_group_option3954	= { FOLLOW_STORAGE_SYMBOL_in_drop_logfile_group_option3954_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ENGINE_SYMBOL_in_drop_logfile_group_option3957  */
static	ANTLR3_BITWORD FOLLOW_ENGINE_SYMBOL_in_drop_logfile_group_option3957_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000900000) };
static  ANTLR3_BITSET_LIST FOLLOW_ENGINE_SYMBOL_in_drop_logfile_group_option3957	= { FOLLOW_ENGINE_SYMBOL_in_drop_logfile_group_option3957_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_drop_logfile_group_option3959  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_drop_logfile_group_option3959_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_drop_logfile_group_option3959	= { FOLLOW_EQUAL_OPERATOR_in_drop_logfile_group_option3959_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_engine_ref_in_drop_logfile_group_option3962  */
static	ANTLR3_BITWORD FOLLOW_engine_ref_in_drop_logfile_group_option3962_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_engine_ref_in_drop_logfile_group_option3962	= { FOLLOW_engine_ref_in_drop_logfile_group_option3962_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RENAME_SYMBOL_in_rename_table_statement3972  */
static	ANTLR3_BITWORD FOLLOW_RENAME_SYMBOL_in_rename_table_statement3972_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(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_RENAME_SYMBOL_in_rename_table_statement3972	= { FOLLOW_RENAME_SYMBOL_in_rename_table_statement3972_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_rename_table_statement3975  */
static	ANTLR3_BITWORD FOLLOW_set_in_rename_table_statement3975_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_rename_table_statement3975	= { FOLLOW_set_in_rename_table_statement3975_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_rename_table_statement3985  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_rename_table_statement3985_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_in_rename_table_statement3985	= { FOLLOW_table_ref_in_rename_table_statement3985_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TO_SYMBOL_in_rename_table_statement3987  */
static	ANTLR3_BITWORD FOLLOW_TO_SYMBOL_in_rename_table_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_TO_SYMBOL_in_rename_table_statement3987	= { FOLLOW_TO_SYMBOL_in_rename_table_statement3987_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_name_in_rename_table_statement3989  */
static	ANTLR3_BITWORD FOLLOW_table_name_in_rename_table_statement3989_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_table_name_in_rename_table_statement3989	= { FOLLOW_table_name_in_rename_table_statement3989_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_rename_table_statement3992  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_rename_table_statement3992_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_rename_table_statement3992	= { FOLLOW_COMMA_SYMBOL_in_rename_table_statement3992_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_rename_table_statement3994  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_rename_table_statement3994_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_in_rename_table_statement3994	= { FOLLOW_table_ref_in_rename_table_statement3994_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TO_SYMBOL_in_rename_table_statement3996  */
static	ANTLR3_BITWORD FOLLOW_TO_SYMBOL_in_rename_table_statement3996_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_TO_SYMBOL_in_rename_table_statement3996	= { FOLLOW_TO_SYMBOL_in_rename_table_statement3996_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_name_in_rename_table_statement3998  */
static	ANTLR3_BITWORD FOLLOW_table_name_in_rename_table_statement3998_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_table_name_in_rename_table_statement3998	= { FOLLOW_table_name_in_rename_table_statement3998_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TRUNCATE_SYMBOL_in_truncate_table_statement4012  */
static	ANTLR3_BITWORD FOLLOW_TRUNCATE_SYMBOL_in_truncate_table_statement4012_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000001), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_TRUNCATE_SYMBOL_in_truncate_table_statement4012	= { FOLLOW_TRUNCATE_SYMBOL_in_truncate_table_statement4012_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLE_SYMBOL_in_truncate_table_statement4015  */
static	ANTLR3_BITWORD FOLLOW_TABLE_SYMBOL_in_truncate_table_statement4015_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLE_SYMBOL_in_truncate_table_statement4015	= { FOLLOW_TABLE_SYMBOL_in_truncate_table_statement4015_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_truncate_table_statement4018  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_truncate_table_statement4018_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_in_truncate_table_statement4018	= { FOLLOW_table_ref_in_truncate_table_statement4018_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CALL_SYMBOL_in_call_statement4029  */
static	ANTLR3_BITWORD FOLLOW_CALL_SYMBOL_in_call_statement4029_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_CALL_SYMBOL_in_call_statement4029	= { FOLLOW_CALL_SYMBOL_in_call_statement4029_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_procedure_ref_in_call_statement4032  */
static	ANTLR3_BITWORD FOLLOW_procedure_ref_in_call_statement4032_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_procedure_ref_in_call_statement4032	= { FOLLOW_procedure_ref_in_call_statement4032_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_optional_expression_list_with_parentheses_in_call_statement4034  */
static	ANTLR3_BITWORD FOLLOW_optional_expression_list_with_parentheses_in_call_statement4034_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_optional_expression_list_with_parentheses_in_call_statement4034	= { FOLLOW_optional_expression_list_with_parentheses_in_call_statement4034_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DELETE_SYMBOL_in_delete_statement4044  */
static	ANTLR3_BITWORD FOLLOW_DELETE_SYMBOL_in_delete_statement4044_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040020000), ANTLR3_UINT64_LIT(0x0000000000000400), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_DELETE_SYMBOL_in_delete_statement4044	= { FOLLOW_DELETE_SYMBOL_in_delete_statement4044_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_delete_option_in_delete_statement4061  */
static	ANTLR3_BITWORD FOLLOW_delete_option_in_delete_statement4061_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040020000), ANTLR3_UINT64_LIT(0x0000000000000400), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_delete_option_in_delete_statement4061	= { FOLLOW_delete_option_in_delete_statement4061_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_delete_statement4072  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_delete_statement4072_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_delete_statement4072	= { FOLLOW_FROM_SYMBOL_in_delete_statement4072_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_list_with_wildcard_in_delete_statement4103  */
static	ANTLR3_BITWORD FOLLOW_table_ref_list_with_wildcard_in_delete_statement4103_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_table_ref_list_with_wildcard_in_delete_statement4103	= { FOLLOW_table_ref_list_with_wildcard_in_delete_statement4103_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USING_SYMBOL_in_delete_statement4105  */
static	ANTLR3_BITWORD FOLLOW_USING_SYMBOL_in_delete_statement4105_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000600000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_USING_SYMBOL_in_delete_statement4105	= { FOLLOW_USING_SYMBOL_in_delete_statement4105_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_join_table_list_in_delete_statement4107  */
static	ANTLR3_BITWORD FOLLOW_join_table_list_in_delete_statement4107_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_join_table_list_in_delete_statement4107	= { FOLLOW_join_table_list_in_delete_statement4107_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_where_clause_in_delete_statement4109  */
static	ANTLR3_BITWORD FOLLOW_where_clause_in_delete_statement4109_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_where_clause_in_delete_statement4109	= { FOLLOW_where_clause_in_delete_statement4109_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_delete_statement4120  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_delete_statement4120_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(0x2000000000000000), ANTLR3_UINT64_LIT(0x0008000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_in_delete_statement4120	= { FOLLOW_table_ref_in_delete_statement4120_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partition_delete_in_delete_statement4122  */
static	ANTLR3_BITWORD FOLLOW_partition_delete_in_delete_statement4122_bits[]	= { ANTLR3_UINT64_LIT(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(0x2000000000000000), ANTLR3_UINT64_LIT(0x0008000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_partition_delete_in_delete_statement4122	= { FOLLOW_partition_delete_in_delete_statement4122_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_where_clause_in_delete_statement4125  */
static	ANTLR3_BITWORD FOLLOW_where_clause_in_delete_statement4125_bits[]	= { ANTLR3_UINT64_LIT(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(0x2000000000000000), ANTLR3_UINT64_LIT(0x0008000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_where_clause_in_delete_statement4125	= { FOLLOW_where_clause_in_delete_statement4125_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_order_by_clause_in_delete_statement4128  */
static	ANTLR3_BITWORD FOLLOW_order_by_clause_in_delete_statement4128_bits[]	= { ANTLR3_UINT64_LIT(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(0x2000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_order_by_clause_in_delete_statement4128	= { FOLLOW_order_by_clause_in_delete_statement4128_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_simple_limit_clause_in_delete_statement4131  */
static	ANTLR3_BITWORD FOLLOW_simple_limit_clause_in_delete_statement4131_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_simple_limit_clause_in_delete_statement4131	= { FOLLOW_simple_limit_clause_in_delete_statement4131_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_list_with_wildcard_in_delete_statement4147  */
static	ANTLR3_BITWORD FOLLOW_table_ref_list_with_wildcard_in_delete_statement4147_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_table_ref_list_with_wildcard_in_delete_statement4147	= { FOLLOW_table_ref_list_with_wildcard_in_delete_statement4147_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_delete_statement4149  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_delete_statement4149_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000600000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_delete_statement4149	= { FOLLOW_FROM_SYMBOL_in_delete_statement4149_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_join_table_list_in_delete_statement4151  */
static	ANTLR3_BITWORD FOLLOW_join_table_list_in_delete_statement4151_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_join_table_list_in_delete_statement4151	= { FOLLOW_join_table_list_in_delete_statement4151_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_where_clause_in_delete_statement4153  */
static	ANTLR3_BITWORD FOLLOW_where_clause_in_delete_statement4153_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_where_clause_in_delete_statement4153	= { FOLLOW_where_clause_in_delete_statement4153_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_partition_delete4172  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_partition_delete4172_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_PARTITION_SYMBOL_in_partition_delete4172	= { FOLLOW_PARTITION_SYMBOL_in_partition_delete4172_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_partition_delete4174  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_partition_delete4174_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_partition_delete4174	= { FOLLOW_OPEN_PAR_SYMBOL_in_partition_delete4174_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_in_partition_delete4176  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_in_partition_delete4176_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_identifier_list_in_partition_delete4176	= { FOLLOW_identifier_list_in_partition_delete4176_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_partition_delete4178  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_partition_delete4178_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_partition_delete4178	= { FOLLOW_CLOSE_PAR_SYMBOL_in_partition_delete4178_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DO_SYMBOL_in_do_statement4204  */
static	ANTLR3_BITWORD FOLLOW_DO_SYMBOL_in_do_statement4204_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x4D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_DO_SYMBOL_in_do_statement4204	= { FOLLOW_DO_SYMBOL_in_do_statement4204_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_in_do_statement4217  */
static	ANTLR3_BITWORD FOLLOW_expression_list_in_do_statement4217_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_list_in_do_statement4217	= { FOLLOW_expression_list_in_do_statement4217_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_item_list_in_do_statement4227  */
static	ANTLR3_BITWORD FOLLOW_select_item_list_in_do_statement4227_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_select_item_list_in_do_statement4227	= { FOLLOW_select_item_list_in_do_statement4227_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_HANDLER_SYMBOL_in_handler_statement4239  */
static	ANTLR3_BITWORD FOLLOW_HANDLER_SYMBOL_in_handler_statement4239_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_HANDLER_SYMBOL_in_handler_statement4239	= { FOLLOW_HANDLER_SYMBOL_in_handler_statement4239_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_handler_statement4260  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_handler_statement4260_bits[]	= { ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_in_handler_statement4260	= { FOLLOW_table_ref_in_handler_statement4260_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_SYMBOL_in_handler_statement4262  */
static	ANTLR3_BITWORD FOLLOW_OPEN_SYMBOL_in_handler_statement4262_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010800000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_SYMBOL_in_handler_statement4262	= { FOLLOW_OPEN_SYMBOL_in_handler_statement4262_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AS_SYMBOL_in_handler_statement4265  */
static	ANTLR3_BITWORD FOLLOW_AS_SYMBOL_in_handler_statement4265_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_AS_SYMBOL_in_handler_statement4265	= { FOLLOW_AS_SYMBOL_in_handler_statement4265_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_handler_statement4268  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_handler_statement4268_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_handler_statement4268	= { FOLLOW_identifier_in_handler_statement4268_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_no_db_in_handler_statement4276  */
static	ANTLR3_BITWORD FOLLOW_table_ref_no_db_in_handler_statement4276_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(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_no_db_in_handler_statement4276	= { FOLLOW_table_ref_no_db_in_handler_statement4276_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_SYMBOL_in_handler_statement4289  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_SYMBOL_in_handler_statement4289_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_SYMBOL_in_handler_statement4289	= { FOLLOW_CLOSE_SYMBOL_in_handler_statement4289_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_READ_SYMBOL_in_handler_statement4297  */
static	ANTLR3_BITWORD FOLLOW_READ_SYMBOL_in_handler_statement4297_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_READ_SYMBOL_in_handler_statement4297	= { FOLLOW_READ_SYMBOL_in_handler_statement4297_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_handler_read_or_scan_in_handler_statement4299  */
static	ANTLR3_BITWORD FOLLOW_handler_read_or_scan_in_handler_statement4299_bits[]	= { ANTLR3_UINT64_LIT(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(0x2000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_handler_read_or_scan_in_handler_statement4299	= { FOLLOW_handler_read_or_scan_in_handler_statement4299_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_where_clause_in_handler_statement4301  */
static	ANTLR3_BITWORD FOLLOW_where_clause_in_handler_statement4301_bits[]	= { ANTLR3_UINT64_LIT(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(0x2000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_where_clause_in_handler_statement4301	= { FOLLOW_where_clause_in_handler_statement4301_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_limit_clause_in_handler_statement4304  */
static	ANTLR3_BITWORD FOLLOW_limit_clause_in_handler_statement4304_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_limit_clause_in_handler_statement4304	= { FOLLOW_limit_clause_in_handler_statement4304_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_handler_read_or_scan4322  */
static	ANTLR3_BITWORD FOLLOW_set_in_handler_read_or_scan4322_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_handler_read_or_scan4322	= { FOLLOW_set_in_handler_read_or_scan4322_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_handler_read_or_scan4334  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_handler_read_or_scan4334_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0001800300800000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_handler_read_or_scan4334	= { FOLLOW_identifier_in_handler_read_or_scan4334_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FIRST_SYMBOL_in_handler_read_or_scan4343  */
static	ANTLR3_BITWORD FOLLOW_FIRST_SYMBOL_in_handler_read_or_scan4343_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_FIRST_SYMBOL_in_handler_read_or_scan4343	= { FOLLOW_FIRST_SYMBOL_in_handler_read_or_scan4343_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NEXT_SYMBOL_in_handler_read_or_scan4350  */
static	ANTLR3_BITWORD FOLLOW_NEXT_SYMBOL_in_handler_read_or_scan4350_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_NEXT_SYMBOL_in_handler_read_or_scan4350	= { FOLLOW_NEXT_SYMBOL_in_handler_read_or_scan4350_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PREV_SYMBOL_in_handler_read_or_scan4357  */
static	ANTLR3_BITWORD FOLLOW_PREV_SYMBOL_in_handler_read_or_scan4357_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PREV_SYMBOL_in_handler_read_or_scan4357	= { FOLLOW_PREV_SYMBOL_in_handler_read_or_scan4357_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LAST_SYMBOL_in_handler_read_or_scan4364  */
static	ANTLR3_BITWORD FOLLOW_LAST_SYMBOL_in_handler_read_or_scan4364_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_LAST_SYMBOL_in_handler_read_or_scan4364	= { FOLLOW_LAST_SYMBOL_in_handler_read_or_scan4364_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_handler_read_or_scan4371  */
static	ANTLR3_BITWORD FOLLOW_set_in_handler_read_or_scan4371_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_set_in_handler_read_or_scan4371	= { FOLLOW_set_in_handler_read_or_scan4371_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_handler_read_or_scan4395  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_handler_read_or_scan4395_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000200A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_handler_read_or_scan4395	= { FOLLOW_OPEN_PAR_SYMBOL_in_handler_read_or_scan4395_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_values_in_handler_read_or_scan4397  */
static	ANTLR3_BITWORD FOLLOW_values_in_handler_read_or_scan4397_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_values_in_handler_read_or_scan4397	= { FOLLOW_values_in_handler_read_or_scan4397_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_handler_read_or_scan4399  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_handler_read_or_scan4399_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_handler_read_or_scan4399	= { FOLLOW_CLOSE_PAR_SYMBOL_in_handler_read_or_scan4399_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INSERT_SYMBOL_in_insert_statement4414  */
static	ANTLR3_BITWORD FOLLOW_INSERT_SYMBOL_in_insert_statement4414_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0004000000000000), ANTLR3_UINT64_LIT(0x0000100042000000), ANTLR3_UINT64_LIT(0x0000000000000400), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_INSERT_SYMBOL_in_insert_statement4414	= { FOLLOW_INSERT_SYMBOL_in_insert_statement4414_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_insert_lock_option_in_insert_statement4417  */
static	ANTLR3_BITWORD FOLLOW_insert_lock_option_in_insert_statement4417_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_insert_lock_option_in_insert_statement4417	= { FOLLOW_insert_lock_option_in_insert_statement4417_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IGNORE_SYMBOL_in_insert_statement4420  */
static	ANTLR3_BITWORD FOLLOW_IGNORE_SYMBOL_in_insert_statement4420_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_IGNORE_SYMBOL_in_insert_statement4420	= { FOLLOW_IGNORE_SYMBOL_in_insert_statement4420_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTO_SYMBOL_in_insert_statement4423  */
static	ANTLR3_BITWORD FOLLOW_INTO_SYMBOL_in_insert_statement4423_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_INTO_SYMBOL_in_insert_statement4423	= { FOLLOW_INTO_SYMBOL_in_insert_statement4423_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_insert_statement4426  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_insert_statement4426_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(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000004100000), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_in_insert_statement4426	= { FOLLOW_table_ref_in_insert_statement4426_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_use_partition_in_insert_statement4428  */
static	ANTLR3_BITWORD FOLLOW_use_partition_in_insert_statement4428_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(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000004100000), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_use_partition_in_insert_statement4428	= { FOLLOW_use_partition_in_insert_statement4428_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_insert_field_spec_in_insert_statement4433  */
static	ANTLR3_BITWORD FOLLOW_insert_field_spec_in_insert_statement4433_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_insert_field_spec_in_insert_statement4433	= { FOLLOW_insert_field_spec_in_insert_statement4433_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_duplicate_key_update_in_insert_statement4435  */
static	ANTLR3_BITWORD FOLLOW_duplicate_key_update_in_insert_statement4435_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_duplicate_key_update_in_insert_statement4435	= { FOLLOW_duplicate_key_update_in_insert_statement4435_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_insert_field_spec4467  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_insert_field_spec4467_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_insert_field_spec4467	= { FOLLOW_OPEN_PAR_SYMBOL_in_insert_field_spec4467_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_fields_in_insert_field_spec4469  */
static	ANTLR3_BITWORD FOLLOW_fields_in_insert_field_spec4469_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_fields_in_insert_field_spec4469	= { FOLLOW_fields_in_insert_field_spec4469_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_insert_field_spec4472  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_insert_field_spec4472_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(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_insert_field_spec4472	= { FOLLOW_CLOSE_PAR_SYMBOL_in_insert_field_spec4472_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_insert_values_in_insert_field_spec4484  */
static	ANTLR3_BITWORD FOLLOW_insert_values_in_insert_field_spec4484_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_insert_values_in_insert_field_spec4484	= { FOLLOW_insert_values_in_insert_field_spec4484_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_insert_query_expression_in_insert_field_spec4491  */
static	ANTLR3_BITWORD FOLLOW_insert_query_expression_in_insert_field_spec4491_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_insert_query_expression_in_insert_field_spec4491	= { FOLLOW_insert_query_expression_in_insert_field_spec4491_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SET_SYMBOL_in_insert_field_spec4500  */
static	ANTLR3_BITWORD FOLLOW_SET_SYMBOL_in_insert_field_spec4500_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_SET_SYMBOL_in_insert_field_spec4500	= { FOLLOW_SET_SYMBOL_in_insert_field_spec4500_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_assignment_list_with_default_in_insert_field_spec4502  */
static	ANTLR3_BITWORD FOLLOW_column_assignment_list_with_default_in_insert_field_spec4502_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_column_assignment_list_with_default_in_insert_field_spec4502	= { FOLLOW_column_assignment_list_with_default_in_insert_field_spec4502_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_ref_with_wildcard_in_fields4511  */
static	ANTLR3_BITWORD FOLLOW_column_ref_with_wildcard_in_fields4511_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_column_ref_with_wildcard_in_fields4511	= { FOLLOW_column_ref_with_wildcard_in_fields4511_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_fields4514  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_fields4514_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_fields4514	= { FOLLOW_COMMA_SYMBOL_in_fields4514_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_ref_with_wildcard_in_fields4516  */
static	ANTLR3_BITWORD FOLLOW_column_ref_with_wildcard_in_fields4516_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_column_ref_with_wildcard_in_fields4516	= { FOLLOW_column_ref_with_wildcard_in_fields4516_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_insert_values4527  */
static	ANTLR3_BITWORD FOLLOW_set_in_insert_values4527_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_set_in_insert_values4527	= { FOLLOW_set_in_insert_values4527_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_insert_value_list_in_insert_values4535  */
static	ANTLR3_BITWORD FOLLOW_insert_value_list_in_insert_values4535_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_insert_value_list_in_insert_values4535	= { FOLLOW_insert_value_list_in_insert_values4535_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_select_in_insert_query_expression4544  */
static	ANTLR3_BITWORD FOLLOW_create_select_in_insert_query_expression4544_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000002000) };
static  ANTLR3_BITSET_LIST FOLLOW_create_select_in_insert_query_expression4544	= { FOLLOW_create_select_in_insert_query_expression4544_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_union_clause_in_insert_query_expression4546  */
static	ANTLR3_BITWORD FOLLOW_union_clause_in_insert_query_expression4546_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_union_clause_in_insert_query_expression4546	= { FOLLOW_union_clause_in_insert_query_expression4546_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_insert_query_expression4552  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_insert_query_expression4552_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_OPEN_PAR_SYMBOL_in_insert_query_expression4552	= { FOLLOW_OPEN_PAR_SYMBOL_in_insert_query_expression4552_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_select_in_insert_query_expression4554  */
static	ANTLR3_BITWORD FOLLOW_create_select_in_insert_query_expression4554_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression4554	= { FOLLOW_create_select_in_insert_query_expression4554_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_insert_query_expression4556  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_insert_query_expression4556_bits[]	= { ANTLR3_UINT64_LIT(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(0x2000000000000000), ANTLR3_UINT64_LIT(0x0008000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000002000) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_insert_query_expression4556	= { FOLLOW_CLOSE_PAR_SYMBOL_in_insert_query_expression4556_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_union_or_order_by_or_limit_in_insert_query_expression4558  */
static	ANTLR3_BITWORD FOLLOW_union_or_order_by_or_limit_in_insert_query_expression4558_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_union_or_order_by_or_limit_in_insert_query_expression4558	= { FOLLOW_union_or_order_by_or_limit_in_insert_query_expression4558_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_insert_value_list4568  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_insert_value_list4568_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000200A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x9CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_insert_value_list4568	= { FOLLOW_OPEN_PAR_SYMBOL_in_insert_value_list4568_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_values_in_insert_value_list4570  */
static	ANTLR3_BITWORD FOLLOW_values_in_insert_value_list4570_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_values_in_insert_value_list4570	= { FOLLOW_values_in_insert_value_list4570_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_insert_value_list4573  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_insert_value_list4573_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_insert_value_list4573	= { FOLLOW_CLOSE_PAR_SYMBOL_in_insert_value_list4573_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_insert_value_list4576  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_insert_value_list4576_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_COMMA_SYMBOL_in_insert_value_list4576	= { FOLLOW_COMMA_SYMBOL_in_insert_value_list4576_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_insert_value_list4578  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_insert_value_list4578_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000200A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x9CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_insert_value_list4578	= { FOLLOW_OPEN_PAR_SYMBOL_in_insert_value_list4578_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_values_in_insert_value_list4580  */
static	ANTLR3_BITWORD FOLLOW_values_in_insert_value_list4580_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_values_in_insert_value_list4580	= { FOLLOW_values_in_insert_value_list4580_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_insert_value_list4583  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_insert_value_list4583_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_insert_value_list4583	= { FOLLOW_CLOSE_PAR_SYMBOL_in_insert_value_list4583_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_values4595  */
static	ANTLR3_BITWORD FOLLOW_expression_in_values4595_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_values4595	= { FOLLOW_expression_in_values4595_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_values4599  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_values4599_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_values4599	= { FOLLOW_DEFAULT_SYMBOL_in_values4599_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_values4603  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_values4603_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000200A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_values4603	= { FOLLOW_COMMA_SYMBOL_in_values4603_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_values4606  */
static	ANTLR3_BITWORD FOLLOW_expression_in_values4606_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_values4606	= { FOLLOW_expression_in_values4606_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_values4610  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_values4610_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_values4610	= { FOLLOW_DEFAULT_SYMBOL_in_values4610_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_duplicate_key_update4622  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_duplicate_key_update4622_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ON_SYMBOL_in_duplicate_key_update4622	= { FOLLOW_ON_SYMBOL_in_duplicate_key_update4622_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DUPLICATE_SYMBOL_in_duplicate_key_update4624  */
static	ANTLR3_BITWORD FOLLOW_DUPLICATE_SYMBOL_in_duplicate_key_update4624_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0080000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DUPLICATE_SYMBOL_in_duplicate_key_update4624	= { FOLLOW_DUPLICATE_SYMBOL_in_duplicate_key_update4624_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_KEY_SYMBOL_in_duplicate_key_update4626  */
static	ANTLR3_BITWORD FOLLOW_KEY_SYMBOL_in_duplicate_key_update4626_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_KEY_SYMBOL_in_duplicate_key_update4626	= { FOLLOW_KEY_SYMBOL_in_duplicate_key_update4626_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UPDATE_SYMBOL_in_duplicate_key_update4628  */
static	ANTLR3_BITWORD FOLLOW_UPDATE_SYMBOL_in_duplicate_key_update4628_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_UPDATE_SYMBOL_in_duplicate_key_update4628	= { FOLLOW_UPDATE_SYMBOL_in_duplicate_key_update4628_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_assignment_list_with_default_in_duplicate_key_update4630  */
static	ANTLR3_BITWORD FOLLOW_column_assignment_list_with_default_in_duplicate_key_update4630_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_column_assignment_list_with_default_in_duplicate_key_update4630	= { FOLLOW_column_assignment_list_with_default_in_duplicate_key_update4630_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOAD_SYMBOL_in_load_statement4641  */
static	ANTLR3_BITWORD FOLLOW_LOAD_SYMBOL_in_load_statement4641_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_statement4641	= { FOLLOW_LOAD_SYMBOL_in_load_statement4641_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_data_or_xml_in_load_statement4644  */
static	ANTLR3_BITWORD FOLLOW_data_or_xml_in_load_statement4644_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(0x0000000100000000), ANTLR3_UINT64_LIT(0x0000000000000400) };
static  ANTLR3_BITSET_LIST FOLLOW_data_or_xml_in_load_statement4644	= { FOLLOW_data_or_xml_in_load_statement4644_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOCAL_SYMBOL_in_load_statement4655  */
static	ANTLR3_BITWORD FOLLOW_LOCAL_SYMBOL_in_load_statement4655_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_LOCAL_SYMBOL_in_load_statement4655	= { FOLLOW_LOCAL_SYMBOL_in_load_statement4655_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INFILE_SYMBOL_in_load_statement4658  */
static	ANTLR3_BITWORD FOLLOW_INFILE_SYMBOL_in_load_statement4658_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INFILE_SYMBOL_in_load_statement4658	= { FOLLOW_INFILE_SYMBOL_in_load_statement4658_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_load_statement4660  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_load_statement4660_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000200) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_load_statement4660	= { FOLLOW_string_literal_in_load_statement4660_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTO_SYMBOL_in_load_statement4673  */
static	ANTLR3_BITWORD FOLLOW_INTO_SYMBOL_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_INTO_SYMBOL_in_load_statement4673	= { FOLLOW_INTO_SYMBOL_in_load_statement4673_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLE_SYMBOL_in_load_statement4675  */
static	ANTLR3_BITWORD FOLLOW_TABLE_SYMBOL_in_load_statement4675_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLE_SYMBOL_in_load_statement4675	= { FOLLOW_TABLE_SYMBOL_in_load_statement4675_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_load_statement4677  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_load_statement4677_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(0x0000000000010000), ANTLR3_UINT64_LIT(0x8000000040000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_in_load_statement4677	= { FOLLOW_table_ref_in_load_statement4677_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_use_partition_in_load_statement4681  */
static	ANTLR3_BITWORD FOLLOW_use_partition_in_load_statement4681_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(0x0000000000010000), ANTLR3_UINT64_LIT(0x8000000040000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_use_partition_in_load_statement4681	= { FOLLOW_use_partition_in_load_statement4681_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_clause_in_load_statement4684  */
static	ANTLR3_BITWORD FOLLOW_charset_clause_in_load_statement4684_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(0x8000000040000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_clause_in_load_statement4684	= { FOLLOW_charset_clause_in_load_statement4684_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_xml_rows_identified_by_in_load_statement4689  */
static	ANTLR3_BITWORD FOLLOW_xml_rows_identified_by_in_load_statement4689_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(0x8000000040000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_xml_rows_identified_by_in_load_statement4689	= { FOLLOW_xml_rows_identified_by_in_load_statement4689_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_fields_clause_in_load_statement4694  */
static	ANTLR3_BITWORD FOLLOW_fields_clause_in_load_statement4694_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8000000040000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_fields_clause_in_load_statement4694	= { FOLLOW_fields_clause_in_load_statement4694_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_lines_clause_in_load_statement4697  */
static	ANTLR3_BITWORD FOLLOW_lines_clause_in_load_statement4697_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_lines_clause_in_load_statement4697	= { FOLLOW_lines_clause_in_load_statement4697_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_load_data_file_tail_in_load_statement4702  */
static	ANTLR3_BITWORD FOLLOW_load_data_file_tail_in_load_statement4702_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_load_data_file_tail_in_load_statement4702	= { FOLLOW_load_data_file_tail_in_load_statement4702_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATA_SYMBOL_in_data_or_xml4711  */
static	ANTLR3_BITWORD FOLLOW_DATA_SYMBOL_in_data_or_xml4711_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DATA_SYMBOL_in_data_or_xml4711	= { FOLLOW_DATA_SYMBOL_in_data_or_xml4711_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_XML_SYMBOL_in_data_or_xml4718  */
static	ANTLR3_BITWORD FOLLOW_XML_SYMBOL_in_data_or_xml4718_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_XML_SYMBOL_in_data_or_xml4718	= { FOLLOW_XML_SYMBOL_in_data_or_xml4718_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ROWS_SYMBOL_in_xml_rows_identified_by4731  */
static	ANTLR3_BITWORD FOLLOW_ROWS_SYMBOL_in_xml_rows_identified_by4731_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000100000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ROWS_SYMBOL_in_xml_rows_identified_by4731	= { FOLLOW_ROWS_SYMBOL_in_xml_rows_identified_by4731_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IDENTIFIED_SYMBOL_in_xml_rows_identified_by4733  */
static	ANTLR3_BITWORD FOLLOW_IDENTIFIED_SYMBOL_in_xml_rows_identified_by4733_bits[]	= { ANTLR3_UINT64_LIT(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_IDENTIFIED_SYMBOL_in_xml_rows_identified_by4733	= { FOLLOW_IDENTIFIED_SYMBOL_in_xml_rows_identified_by4733_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BY_SYMBOL_in_xml_rows_identified_by4735  */
static	ANTLR3_BITWORD FOLLOW_BY_SYMBOL_in_xml_rows_identified_by4735_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_BY_SYMBOL_in_xml_rows_identified_by4735	= { FOLLOW_BY_SYMBOL_in_xml_rows_identified_by4735_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_xml_rows_identified_by4737  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_xml_rows_identified_by4737_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_xml_rows_identified_by4737	= { FOLLOW_text_string_in_xml_rows_identified_by4737_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IGNORE_SYMBOL_in_load_data_file_tail4747  */
static	ANTLR3_BITWORD FOLLOW_IGNORE_SYMBOL_in_load_data_file_tail4747_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_IGNORE_SYMBOL_in_load_data_file_tail4747	= { FOLLOW_IGNORE_SYMBOL_in_load_data_file_tail4747_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_NUMBER_in_load_data_file_tail4749  */
static	ANTLR3_BITWORD FOLLOW_INT_NUMBER_in_load_data_file_tail4749_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(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INT_NUMBER_in_load_data_file_tail4749	= { FOLLOW_INT_NUMBER_in_load_data_file_tail4749_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_load_data_file_tail4751  */
static	ANTLR3_BITWORD FOLLOW_set_in_load_data_file_tail4751_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_load_data_file_tail4751	= { FOLLOW_set_in_load_data_file_tail4751_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_load_data_file_target_list_in_load_data_file_tail4761  */
static	ANTLR3_BITWORD FOLLOW_load_data_file_target_list_in_load_data_file_tail4761_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_load_data_file_target_list_in_load_data_file_tail4761	= { FOLLOW_load_data_file_target_list_in_load_data_file_tail4761_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SET_SYMBOL_in_load_data_file_tail4765  */
static	ANTLR3_BITWORD FOLLOW_SET_SYMBOL_in_load_data_file_tail4765_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_SET_SYMBOL_in_load_data_file_tail4765	= { FOLLOW_SET_SYMBOL_in_load_data_file_tail4765_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_assignment_list_with_default_in_load_data_file_tail4767  */
static	ANTLR3_BITWORD FOLLOW_column_assignment_list_with_default_in_load_data_file_tail4767_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_column_assignment_list_with_default_in_load_data_file_tail4767	= { FOLLOW_column_assignment_list_with_default_in_load_data_file_tail4767_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_load_data_file_target_list4778  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_load_data_file_target_list4778_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8016000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_load_data_file_target_list4778	= { FOLLOW_OPEN_PAR_SYMBOL_in_load_data_file_target_list4778_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_or_variable_list_in_load_data_file_target_list4780  */
static	ANTLR3_BITWORD FOLLOW_field_or_variable_list_in_load_data_file_target_list4780_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_field_or_variable_list_in_load_data_file_target_list4780	= { FOLLOW_field_or_variable_list_in_load_data_file_target_list4780_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_load_data_file_target_list4783  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_load_data_file_target_list4783_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_load_data_file_target_list4783	= { FOLLOW_CLOSE_PAR_SYMBOL_in_load_data_file_target_list4783_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_ref_in_field_or_variable_list4793  */
static	ANTLR3_BITWORD FOLLOW_column_ref_in_field_or_variable_list4793_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_column_ref_in_field_or_variable_list4793	= { FOLLOW_column_ref_in_field_or_variable_list4793_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_variable_in_field_or_variable_list4797  */
static	ANTLR3_BITWORD FOLLOW_user_variable_in_field_or_variable_list4797_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_user_variable_in_field_or_variable_list4797	= { FOLLOW_user_variable_in_field_or_variable_list4797_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_field_or_variable_list4801  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_field_or_variable_list4801_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0016000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_field_or_variable_list4801	= { FOLLOW_COMMA_SYMBOL_in_field_or_variable_list4801_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_ref_in_field_or_variable_list4804  */
static	ANTLR3_BITWORD FOLLOW_column_ref_in_field_or_variable_list4804_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_column_ref_in_field_or_variable_list4804	= { FOLLOW_column_ref_in_field_or_variable_list4804_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_variable_in_field_or_variable_list4808  */
static	ANTLR3_BITWORD FOLLOW_user_variable_in_field_or_variable_list4808_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_user_variable_in_field_or_variable_list4808	= { FOLLOW_user_variable_in_field_or_variable_list4808_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REPLACE_SYMBOL_in_replace_statement4822  */
static	ANTLR3_BITWORD FOLLOW_REPLACE_SYMBOL_in_replace_statement4822_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0004000000000000), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000400), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_REPLACE_SYMBOL_in_replace_statement4822	= { FOLLOW_REPLACE_SYMBOL_in_replace_statement4822_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTO_SYMBOL_in_replace_statement4834  */
static	ANTLR3_BITWORD FOLLOW_INTO_SYMBOL_in_replace_statement4834_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_INTO_SYMBOL_in_replace_statement4834	= { FOLLOW_INTO_SYMBOL_in_replace_statement4834_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_replace_statement4837  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_replace_statement4837_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(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000004100000), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_in_replace_statement4837	= { FOLLOW_table_ref_in_replace_statement4837_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_use_partition_in_replace_statement4841  */
static	ANTLR3_BITWORD FOLLOW_use_partition_in_replace_statement4841_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(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000004100000), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_use_partition_in_replace_statement4841	= { FOLLOW_use_partition_in_replace_statement4841_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_insert_field_spec_in_replace_statement4844  */
static	ANTLR3_BITWORD FOLLOW_insert_field_spec_in_replace_statement4844_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_insert_field_spec_in_replace_statement4844	= { FOLLOW_insert_field_spec_in_replace_statement4844_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SELECT_SYMBOL_in_select_statement4855  */
static	ANTLR3_BITWORD FOLLOW_SELECT_SYMBOL_in_select_statement4855_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(0x010000A953013010), ANTLR3_UINT64_LIT(0x08000810224000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x36A000E040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x4D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_SELECT_SYMBOL_in_select_statement4855	= { FOLLOW_SELECT_SYMBOL_in_select_statement4855_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_part2_in_select_statement4858  */
static	ANTLR3_BITWORD FOLLOW_select_part2_in_select_statement4858_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000002000) };
static  ANTLR3_BITSET_LIST FOLLOW_select_part2_in_select_statement4858	= { FOLLOW_select_part2_in_select_statement4858_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_union_clause_in_select_statement4860  */
static	ANTLR3_BITWORD FOLLOW_union_clause_in_select_statement4860_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_union_clause_in_select_statement4860	= { FOLLOW_union_clause_in_select_statement4860_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_select_statement4866  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_select_statement4866_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_select_statement4866	= { FOLLOW_OPEN_PAR_SYMBOL_in_select_statement4866_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_paren_in_select_statement4868  */
static	ANTLR3_BITWORD FOLLOW_select_paren_in_select_statement4868_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_paren_in_select_statement4868	= { FOLLOW_select_paren_in_select_statement4868_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_select_statement4870  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_select_statement4870_bits[]	= { ANTLR3_UINT64_LIT(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(0x2000000000000000), ANTLR3_UINT64_LIT(0x0008000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000002000) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_select_statement4870	= { FOLLOW_CLOSE_PAR_SYMBOL_in_select_statement4870_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_union_or_order_by_or_limit_in_select_statement4872  */
static	ANTLR3_BITWORD FOLLOW_union_or_order_by_or_limit_in_select_statement4872_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_union_or_order_by_or_limit_in_select_statement4872	= { FOLLOW_union_or_order_by_or_limit_in_select_statement4872_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SELECT_SYMBOL_in_select_paren4882  */
static	ANTLR3_BITWORD FOLLOW_SELECT_SYMBOL_in_select_paren4882_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(0x010000A953013010), ANTLR3_UINT64_LIT(0x08000810224000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x36A000E040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x4D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_SELECT_SYMBOL_in_select_paren4882	= { FOLLOW_SELECT_SYMBOL_in_select_paren4882_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_part2_in_select_paren4885  */
static	ANTLR3_BITWORD FOLLOW_select_part2_in_select_paren4885_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_select_part2_in_select_paren4885	= { FOLLOW_select_part2_in_select_paren4885_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_select_paren4890  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_select_paren4890_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_select_paren4890	= { FOLLOW_OPEN_PAR_SYMBOL_in_select_paren4890_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_paren_in_select_paren4892  */
static	ANTLR3_BITWORD FOLLOW_select_paren_in_select_paren4892_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_paren_in_select_paren4892	= { FOLLOW_select_paren_in_select_paren4892_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_select_paren4894  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_select_paren4894_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_select_paren4894	= { FOLLOW_CLOSE_PAR_SYMBOL_in_select_paren4894_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_from_clause_in_select_from4903  */
static	ANTLR3_BITWORD FOLLOW_from_clause_in_select_from4903_bits[]	= { ANTLR3_UINT64_LIT(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(0x2000000001800000), ANTLR3_UINT64_LIT(0x2008000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_from_clause_in_select_from4903	= { FOLLOW_from_clause_in_select_from4903_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_where_clause_in_select_from4905  */
static	ANTLR3_BITWORD FOLLOW_where_clause_in_select_from4905_bits[]	= { ANTLR3_UINT64_LIT(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(0x2000000001800000), ANTLR3_UINT64_LIT(0x2008000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_where_clause_in_select_from4905	= { FOLLOW_where_clause_in_select_from4905_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_group_by_clause_in_select_from4908  */
static	ANTLR3_BITWORD FOLLOW_group_by_clause_in_select_from4908_bits[]	= { ANTLR3_UINT64_LIT(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(0x2000000001000000), ANTLR3_UINT64_LIT(0x2008000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_group_by_clause_in_select_from4908	= { FOLLOW_group_by_clause_in_select_from4908_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_having_clause_in_select_from4911  */
static	ANTLR3_BITWORD FOLLOW_having_clause_in_select_from4911_bits[]	= { ANTLR3_UINT64_LIT(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(0x2000000000000000), ANTLR3_UINT64_LIT(0x2008000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_having_clause_in_select_from4911	= { FOLLOW_having_clause_in_select_from4911_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_order_by_clause_in_select_from4914  */
static	ANTLR3_BITWORD FOLLOW_order_by_clause_in_select_from4914_bits[]	= { ANTLR3_UINT64_LIT(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(0x2000000000000000), ANTLR3_UINT64_LIT(0x2000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_order_by_clause_in_select_from4914	= { FOLLOW_order_by_clause_in_select_from4914_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_limit_clause_in_select_from4917  */
static	ANTLR3_BITWORD FOLLOW_limit_clause_in_select_from4917_bits[]	= { ANTLR3_UINT64_LIT(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(0x2000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_limit_clause_in_select_from4917	= { FOLLOW_limit_clause_in_select_from4917_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_procedure_analyse_clause_in_select_from4920  */
static	ANTLR3_BITWORD FOLLOW_procedure_analyse_clause_in_select_from4920_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_procedure_analyse_clause_in_select_from4920	= { FOLLOW_procedure_analyse_clause_in_select_from4920_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_option_in_select_part24944  */
static	ANTLR3_BITWORD FOLLOW_select_option_in_select_part24944_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(0x010000A953013010), ANTLR3_UINT64_LIT(0x08000810224000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x36A000E040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x4D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_select_option_in_select_part24944	= { FOLLOW_select_option_in_select_part24944_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_item_list_in_select_part24948  */
static	ANTLR3_BITWORD FOLLOW_select_item_list_in_select_part24948_bits[]	= { ANTLR3_UINT64_LIT(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(0x2000100000028000), ANTLR3_UINT64_LIT(0x0008000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_select_item_list_in_select_part24948	= { FOLLOW_select_item_list_in_select_part24948_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_order_by_clause_in_select_part24957  */
static	ANTLR3_BITWORD FOLLOW_order_by_clause_in_select_part24957_bits[]	= { ANTLR3_UINT64_LIT(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(0x2000000000008000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_order_by_clause_in_select_part24957	= { FOLLOW_order_by_clause_in_select_part24957_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_limit_clause_in_select_part24960  */
static	ANTLR3_BITWORD FOLLOW_limit_clause_in_select_part24960_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000008000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_limit_clause_in_select_part24960	= { FOLLOW_limit_clause_in_select_part24960_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_into_clause_in_select_part24968  */
static	ANTLR3_BITWORD FOLLOW_into_clause_in_select_part24968_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000028000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_into_clause_in_select_part24968	= { FOLLOW_into_clause_in_select_part24968_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_from_in_select_part24970  */
static	ANTLR3_BITWORD FOLLOW_select_from_in_select_part24970_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000008000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_select_from_in_select_part24970	= { FOLLOW_select_from_in_select_part24970_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_from_in_select_part24978  */
static	ANTLR3_BITWORD FOLLOW_select_from_in_select_part24978_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000100000008000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_select_from_in_select_part24978	= { FOLLOW_select_from_in_select_part24978_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_into_clause_in_select_part24980  */
static	ANTLR3_BITWORD FOLLOW_into_clause_in_select_part24980_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000008000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_into_clause_in_select_part24980	= { FOLLOW_into_clause_in_select_part24980_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_lock_type_in_select_part24989  */
static	ANTLR3_BITWORD FOLLOW_select_lock_type_in_select_part24989_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_select_lock_type_in_select_part24989	= { FOLLOW_select_lock_type_in_select_part24989_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_from_clause_in_table_expression4999  */
static	ANTLR3_BITWORD FOLLOW_from_clause_in_table_expression4999_bits[]	= { ANTLR3_UINT64_LIT(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(0x2000000001808000), ANTLR3_UINT64_LIT(0x2008000000000010), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_from_clause_in_table_expression4999	= { FOLLOW_from_clause_in_table_expression4999_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_where_clause_in_table_expression5017  */
static	ANTLR3_BITWORD FOLLOW_where_clause_in_table_expression5017_bits[]	= { ANTLR3_UINT64_LIT(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(0x2000000001808000), ANTLR3_UINT64_LIT(0x2008000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_where_clause_in_table_expression5017	= { FOLLOW_where_clause_in_table_expression5017_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_group_by_clause_in_table_expression5036  */
static	ANTLR3_BITWORD FOLLOW_group_by_clause_in_table_expression5036_bits[]	= { ANTLR3_UINT64_LIT(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(0x2000000001008000), ANTLR3_UINT64_LIT(0x2008000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_group_by_clause_in_table_expression5036	= { FOLLOW_group_by_clause_in_table_expression5036_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_having_clause_in_table_expression5055  */
static	ANTLR3_BITWORD FOLLOW_having_clause_in_table_expression5055_bits[]	= { ANTLR3_UINT64_LIT(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(0x2000000000008000), ANTLR3_UINT64_LIT(0x2008000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_having_clause_in_table_expression5055	= { FOLLOW_having_clause_in_table_expression5055_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_order_by_clause_in_table_expression5074  */
static	ANTLR3_BITWORD FOLLOW_order_by_clause_in_table_expression5074_bits[]	= { ANTLR3_UINT64_LIT(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(0x2000000000008000), ANTLR3_UINT64_LIT(0x2000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_order_by_clause_in_table_expression5074	= { FOLLOW_order_by_clause_in_table_expression5074_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_limit_clause_in_table_expression5093  */
static	ANTLR3_BITWORD FOLLOW_limit_clause_in_table_expression5093_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000008000), ANTLR3_UINT64_LIT(0x2000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_limit_clause_in_table_expression5093	= { FOLLOW_limit_clause_in_table_expression5093_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_procedure_analyse_clause_in_table_expression5112  */
static	ANTLR3_BITWORD FOLLOW_procedure_analyse_clause_in_table_expression5112_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000008000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_procedure_analyse_clause_in_table_expression5112	= { FOLLOW_procedure_analyse_clause_in_table_expression5112_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_lock_type_in_table_expression5131  */
static	ANTLR3_BITWORD FOLLOW_select_lock_type_in_table_expression5131_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_select_lock_type_in_table_expression5131	= { FOLLOW_select_lock_type_in_table_expression5131_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_subquery5143  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_subquery5143_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_subquery5143	= { FOLLOW_OPEN_PAR_SYMBOL_in_subquery5143_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_query_expression_body_in_subquery5145  */
static	ANTLR3_BITWORD FOLLOW_query_expression_body_in_subquery5145_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_body_in_subquery5145	= { FOLLOW_query_expression_body_in_subquery5145_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_subquery5147  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_subquery5147_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_subquery5147	= { FOLLOW_CLOSE_PAR_SYMBOL_in_subquery5147_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_query_specification_in_query_expression_body5170  */
static	ANTLR3_BITWORD FOLLOW_query_specification_in_query_expression_body5170_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000002000) };
static  ANTLR3_BITSET_LIST FOLLOW_query_specification_in_query_expression_body5170	= { FOLLOW_query_specification_in_query_expression_body5170_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNION_SYMBOL_in_query_expression_body5173  */
static	ANTLR3_BITWORD FOLLOW_UNION_SYMBOL_in_query_expression_body5173_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(0x0100000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_UNION_SYMBOL_in_query_expression_body5173	= { FOLLOW_UNION_SYMBOL_in_query_expression_body5173_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_union_option_in_query_expression_body5175  */
static	ANTLR3_BITWORD FOLLOW_union_option_in_query_expression_body5175_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_union_option_in_query_expression_body5175	= { FOLLOW_union_option_in_query_expression_body5175_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_query_specification_in_query_expression_body5177  */
static	ANTLR3_BITWORD FOLLOW_query_specification_in_query_expression_body5177_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000002000) };
static  ANTLR3_BITSET_LIST FOLLOW_query_specification_in_query_expression_body5177	= { FOLLOW_query_specification_in_query_expression_body5177_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_query_spec_option_in_select_part2_derived5205  */
static	ANTLR3_BITWORD FOLLOW_query_spec_option_in_select_part2_derived5205_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(0x010000A953013010), ANTLR3_UINT64_LIT(0x08000810224000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x36A000E040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x4D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_query_spec_option_in_select_part2_derived5205	= { FOLLOW_query_spec_option_in_select_part2_derived5205_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_select_part2_derived5213  */
static	ANTLR3_BITWORD FOLLOW_set_in_select_part2_derived5213_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(0x010000A953013010), ANTLR3_UINT64_LIT(0x08000810224000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x36A000E040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x4D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_select_part2_derived5213	= { FOLLOW_set_in_select_part2_derived5213_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_item_list_in_select_part2_derived5225  */
static	ANTLR3_BITWORD FOLLOW_select_item_list_in_select_part2_derived5225_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_select_item_list_in_select_part2_derived5225	= { FOLLOW_select_item_list_in_select_part2_derived5225_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_query_spec_option_in_select_option5234  */
static	ANTLR3_BITWORD FOLLOW_query_spec_option_in_select_option5234_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_query_spec_option_in_select_option5234	= { FOLLOW_query_spec_option_in_select_option5234_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SQL_NO_CACHE_SYMBOL_in_select_option5239  */
static	ANTLR3_BITWORD FOLLOW_SQL_NO_CACHE_SYMBOL_in_select_option5239_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SQL_NO_CACHE_SYMBOL_in_select_option5239	= { FOLLOW_SQL_NO_CACHE_SYMBOL_in_select_option5239_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SQL_CACHE_SYMBOL_in_select_option5244  */
static	ANTLR3_BITWORD FOLLOW_SQL_CACHE_SYMBOL_in_select_option5244_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SQL_CACHE_SYMBOL_in_select_option5244	= { FOLLOW_SQL_CACHE_SYMBOL_in_select_option5244_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MAX_STATEMENT_TIME_SYMBOL_in_select_option5251  */
static	ANTLR3_BITWORD FOLLOW_MAX_STATEMENT_TIME_SYMBOL_in_select_option5251_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MAX_STATEMENT_TIME_SYMBOL_in_select_option5251	= { FOLLOW_MAX_STATEMENT_TIME_SYMBOL_in_select_option5251_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_select_option5253  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_select_option5253_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010800000000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_select_option5253	= { FOLLOW_EQUAL_OPERATOR_in_select_option5253_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_real_ulong_number_in_select_option5255  */
static	ANTLR3_BITWORD FOLLOW_real_ulong_number_in_select_option5255_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_real_ulong_number_in_select_option5255	= { FOLLOW_real_ulong_number_in_select_option5255_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_item_in_select_item_list5310  */
static	ANTLR3_BITWORD FOLLOW_select_item_in_select_item_list5310_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_select_item_in_select_item_list5310	= { FOLLOW_select_item_in_select_item_list5310_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULT_OPERATOR_in_select_item_list5314  */
static	ANTLR3_BITWORD FOLLOW_MULT_OPERATOR_in_select_item_list5314_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_MULT_OPERATOR_in_select_item_list5314	= { FOLLOW_MULT_OPERATOR_in_select_item_list5314_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_select_item_list5331  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_select_item_list5331_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_select_item_list5331	= { FOLLOW_COMMA_SYMBOL_in_select_item_list5331_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_item_in_select_item_list5333  */
static	ANTLR3_BITWORD FOLLOW_select_item_in_select_item_list5333_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_select_item_in_select_item_list5333	= { FOLLOW_select_item_in_select_item_list5333_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_wild_in_select_item5350  */
static	ANTLR3_BITWORD FOLLOW_table_wild_in_select_item5350_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_wild_in_select_item5350	= { FOLLOW_table_wild_in_select_item5350_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_select_item5363  */
static	ANTLR3_BITWORD FOLLOW_expression_in_select_item5363_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0030800000000000), ANTLR3_UINT64_LIT(0x0000001800100000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_select_item5363	= { FOLLOW_expression_in_select_item5363_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_alias_in_select_item5365  */
static	ANTLR3_BITWORD FOLLOW_select_alias_in_select_item5365_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_select_alias_in_select_item5365	= { FOLLOW_select_alias_in_select_item5365_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AS_SYMBOL_in_select_alias5386  */
static	ANTLR3_BITWORD FOLLOW_AS_SYMBOL_in_select_alias5386_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0030000000000000), ANTLR3_UINT64_LIT(0x0000001800100000) };
static  ANTLR3_BITSET_LIST FOLLOW_AS_SYMBOL_in_select_alias5386	= { FOLLOW_AS_SYMBOL_in_select_alias5386_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_select_alias5390  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_select_alias5390_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_select_alias5390	= { FOLLOW_identifier_in_select_alias5390_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_select_alias5394  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_select_alias5394_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_select_alias5394	= { FOLLOW_text_string_in_select_alias5394_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LIMIT_SYMBOL_in_limit_clause5414  */
static	ANTLR3_BITWORD FOLLOW_LIMIT_SYMBOL_in_limit_clause5414_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0400011000100000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_LIMIT_SYMBOL_in_limit_clause5414	= { FOLLOW_LIMIT_SYMBOL_in_limit_clause5414_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_limit_options_in_limit_clause5416  */
static	ANTLR3_BITWORD FOLLOW_limit_options_in_limit_clause5416_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_limit_options_in_limit_clause5416	= { FOLLOW_limit_options_in_limit_clause5416_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LIMIT_SYMBOL_in_simple_limit_clause5425  */
static	ANTLR3_BITWORD FOLLOW_LIMIT_SYMBOL_in_simple_limit_clause5425_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0400011000100000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_LIMIT_SYMBOL_in_simple_limit_clause5425	= { FOLLOW_LIMIT_SYMBOL_in_simple_limit_clause5425_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_limit_option_in_simple_limit_clause5427  */
static	ANTLR3_BITWORD FOLLOW_limit_option_in_simple_limit_clause5427_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_limit_option_in_simple_limit_clause5427	= { FOLLOW_limit_option_in_simple_limit_clause5427_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_limit_option_in_limit_options5436  */
static	ANTLR3_BITWORD FOLLOW_limit_option_in_limit_options5436_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(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_limit_option_in_limit_options5436	= { FOLLOW_limit_option_in_limit_options5436_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_limit_options5452  */
static	ANTLR3_BITWORD FOLLOW_set_in_limit_options5452_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0400011000100000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_limit_options5452	= { FOLLOW_set_in_limit_options5452_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_limit_option_in_limit_options5460  */
static	ANTLR3_BITWORD FOLLOW_limit_option_in_limit_options5460_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_limit_option_in_limit_options5460	= { FOLLOW_limit_option_in_limit_options5460_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_limit_option5471  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_limit_option5471_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_limit_option5471	= { FOLLOW_identifier_in_limit_option5471_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARAM_MARKER_in_limit_option5476  */
static	ANTLR3_BITWORD FOLLOW_PARAM_MARKER_in_limit_option5476_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PARAM_MARKER_in_limit_option5476	= { FOLLOW_PARAM_MARKER_in_limit_option5476_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ULONGLONG_NUMBER_in_limit_option5481  */
static	ANTLR3_BITWORD FOLLOW_ULONGLONG_NUMBER_in_limit_option5481_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ULONGLONG_NUMBER_in_limit_option5481	= { FOLLOW_ULONGLONG_NUMBER_in_limit_option5481_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LONG_NUMBER_in_limit_option5486  */
static	ANTLR3_BITWORD FOLLOW_LONG_NUMBER_in_limit_option5486_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_LONG_NUMBER_in_limit_option5486	= { FOLLOW_LONG_NUMBER_in_limit_option5486_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_NUMBER_in_limit_option5491  */
static	ANTLR3_BITWORD FOLLOW_INT_NUMBER_in_limit_option5491_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_INT_NUMBER_in_limit_option5491	= { FOLLOW_INT_NUMBER_in_limit_option5491_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTO_SYMBOL_in_into_clause5500  */
static	ANTLR3_BITWORD FOLLOW_INTO_SYMBOL_in_into_clause5500_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0040000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0016000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_INTO_SYMBOL_in_into_clause5500	= { FOLLOW_INTO_SYMBOL_in_into_clause5500_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OUTFILE_SYMBOL_in_into_clause5507  */
static	ANTLR3_BITWORD FOLLOW_OUTFILE_SYMBOL_in_into_clause5507_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OUTFILE_SYMBOL_in_into_clause5507	= { FOLLOW_OUTFILE_SYMBOL_in_into_clause5507_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_into_clause5509  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_into_clause5509_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(0x0000000000010000), ANTLR3_UINT64_LIT(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_into_clause5509	= { FOLLOW_string_literal_in_into_clause5509_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_clause_in_into_clause5511  */
static	ANTLR3_BITWORD FOLLOW_charset_clause_in_into_clause5511_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(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_clause_in_into_clause5511	= { FOLLOW_charset_clause_in_into_clause5511_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_fields_clause_in_into_clause5514  */
static	ANTLR3_BITWORD FOLLOW_fields_clause_in_into_clause5514_bits[]	= { ANTLR3_UINT64_LIT(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(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_fields_clause_in_into_clause5514	= { FOLLOW_fields_clause_in_into_clause5514_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_lines_clause_in_into_clause5517  */
static	ANTLR3_BITWORD FOLLOW_lines_clause_in_into_clause5517_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_lines_clause_in_into_clause5517	= { FOLLOW_lines_clause_in_into_clause5517_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DUMPFILE_SYMBOL_in_into_clause5524  */
static	ANTLR3_BITWORD FOLLOW_DUMPFILE_SYMBOL_in_into_clause5524_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DUMPFILE_SYMBOL_in_into_clause5524	= { FOLLOW_DUMPFILE_SYMBOL_in_into_clause5524_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_into_clause5526  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_into_clause5526_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_into_clause5526	= { FOLLOW_string_literal_in_into_clause5526_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AT_SIGN_SYMBOL_in_into_clause5532  */
static	ANTLR3_BITWORD FOLLOW_AT_SIGN_SYMBOL_in_into_clause5532_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0014000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_AT_SIGN_SYMBOL_in_into_clause5532	= { FOLLOW_AT_SIGN_SYMBOL_in_into_clause5532_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_identifier_in_into_clause5536  */
static	ANTLR3_BITWORD FOLLOW_text_or_identifier_in_into_clause5536_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_identifier_in_into_clause5536	= { FOLLOW_text_or_identifier_in_into_clause5536_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AT_TEXT_SUFFIX_in_into_clause5540  */
static	ANTLR3_BITWORD FOLLOW_AT_TEXT_SUFFIX_in_into_clause5540_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_AT_TEXT_SUFFIX_in_into_clause5540	= { FOLLOW_AT_TEXT_SUFFIX_in_into_clause5540_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_into_clause5544  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_into_clause5544_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0016000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_into_clause5544	= { FOLLOW_COMMA_SYMBOL_in_into_clause5544_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AT_SIGN_SYMBOL_in_into_clause5546  */
static	ANTLR3_BITWORD FOLLOW_AT_SIGN_SYMBOL_in_into_clause5546_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0014000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_AT_SIGN_SYMBOL_in_into_clause5546	= { FOLLOW_AT_SIGN_SYMBOL_in_into_clause5546_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_identifier_in_into_clause5550  */
static	ANTLR3_BITWORD FOLLOW_text_or_identifier_in_into_clause5550_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_identifier_in_into_clause5550	= { FOLLOW_text_or_identifier_in_into_clause5550_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AT_TEXT_SUFFIX_in_into_clause5554  */
static	ANTLR3_BITWORD FOLLOW_AT_TEXT_SUFFIX_in_into_clause5554_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_AT_TEXT_SUFFIX_in_into_clause5554	= { FOLLOW_AT_TEXT_SUFFIX_in_into_clause5554_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PROCEDURE_SYMBOL_in_procedure_analyse_clause5569  */
static	ANTLR3_BITWORD FOLLOW_PROCEDURE_SYMBOL_in_procedure_analyse_clause5569_bits[]	= { 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_PROCEDURE_SYMBOL_in_procedure_analyse_clause5569	= { FOLLOW_PROCEDURE_SYMBOL_in_procedure_analyse_clause5569_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ANALYSE_SYMBOL_in_procedure_analyse_clause5572  */
static	ANTLR3_BITWORD FOLLOW_ANALYSE_SYMBOL_in_procedure_analyse_clause5572_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_ANALYSE_SYMBOL_in_procedure_analyse_clause5572	= { FOLLOW_ANALYSE_SYMBOL_in_procedure_analyse_clause5572_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_procedure_analyse_clause5574  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_procedure_analyse_clause5574_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0000010000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_procedure_analyse_clause5574	= { FOLLOW_OPEN_PAR_SYMBOL_in_procedure_analyse_clause5574_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_NUMBER_in_procedure_analyse_clause5577  */
static	ANTLR3_BITWORD FOLLOW_INT_NUMBER_in_procedure_analyse_clause5577_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_INT_NUMBER_in_procedure_analyse_clause5577	= { FOLLOW_INT_NUMBER_in_procedure_analyse_clause5577_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_procedure_analyse_clause5580  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_procedure_analyse_clause5580_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_COMMA_SYMBOL_in_procedure_analyse_clause5580	= { FOLLOW_COMMA_SYMBOL_in_procedure_analyse_clause5580_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_NUMBER_in_procedure_analyse_clause5582  */
static	ANTLR3_BITWORD FOLLOW_INT_NUMBER_in_procedure_analyse_clause5582_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_procedure_analyse_clause5582	= { FOLLOW_INT_NUMBER_in_procedure_analyse_clause5582_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_procedure_analyse_clause5588  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_procedure_analyse_clause5588_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_procedure_analyse_clause5588	= { FOLLOW_CLOSE_PAR_SYMBOL_in_procedure_analyse_clause5588_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_HAVING_SYMBOL_in_having_clause5597  */
static	ANTLR3_BITWORD FOLLOW_HAVING_SYMBOL_in_having_clause5597_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_HAVING_SYMBOL_in_having_clause5597	= { FOLLOW_HAVING_SYMBOL_in_having_clause5597_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_having_clause5600  */
static	ANTLR3_BITWORD FOLLOW_expression_in_having_clause5600_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_having_clause5600	= { FOLLOW_expression_in_having_clause5600_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GROUP_SYMBOL_in_group_by_clause5609  */
static	ANTLR3_BITWORD FOLLOW_GROUP_SYMBOL_in_group_by_clause5609_bits[]	= { ANTLR3_UINT64_LIT(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_GROUP_SYMBOL_in_group_by_clause5609	= { FOLLOW_GROUP_SYMBOL_in_group_by_clause5609_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BY_SYMBOL_in_group_by_clause5612  */
static	ANTLR3_BITWORD FOLLOW_BY_SYMBOL_in_group_by_clause5612_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_BY_SYMBOL_in_group_by_clause5612	= { FOLLOW_BY_SYMBOL_in_group_by_clause5612_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_with_direction_in_group_by_clause5614  */
static	ANTLR3_BITWORD FOLLOW_expression_list_with_direction_in_group_by_clause5614_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000010000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_list_with_direction_in_group_by_clause5614	= { FOLLOW_expression_list_with_direction_in_group_by_clause5614_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_olap_option_in_group_by_clause5616  */
static	ANTLR3_BITWORD FOLLOW_olap_option_in_group_by_clause5616_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_olap_option_in_group_by_clause5616	= { FOLLOW_olap_option_in_group_by_clause5616_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WITH_SYMBOL_in_olap_option5626  */
static	ANTLR3_BITWORD FOLLOW_WITH_SYMBOL_in_olap_option5626_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000080000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_WITH_SYMBOL_in_olap_option5626	= { FOLLOW_WITH_SYMBOL_in_olap_option5626_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CUBE_SYMBOL_in_olap_option5628  */
static	ANTLR3_BITWORD FOLLOW_CUBE_SYMBOL_in_olap_option5628_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CUBE_SYMBOL_in_olap_option5628	= { FOLLOW_CUBE_SYMBOL_in_olap_option5628_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WITH_SYMBOL_in_olap_option5633  */
static	ANTLR3_BITWORD FOLLOW_WITH_SYMBOL_in_olap_option5633_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_option5633	= { FOLLOW_WITH_SYMBOL_in_olap_option5633_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ROLLUP_SYMBOL_in_olap_option5635  */
static	ANTLR3_BITWORD FOLLOW_ROLLUP_SYMBOL_in_olap_option5635_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ROLLUP_SYMBOL_in_olap_option5635	= { FOLLOW_ROLLUP_SYMBOL_in_olap_option5635_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ORDER_SYMBOL_in_order_by_clause5644  */
static	ANTLR3_BITWORD FOLLOW_ORDER_SYMBOL_in_order_by_clause5644_bits[]	= { ANTLR3_UINT64_LIT(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_ORDER_SYMBOL_in_order_by_clause5644	= { FOLLOW_ORDER_SYMBOL_in_order_by_clause5644_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BY_SYMBOL_in_order_by_clause5647  */
static	ANTLR3_BITWORD FOLLOW_BY_SYMBOL_in_order_by_clause5647_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_BY_SYMBOL_in_order_by_clause5647	= { FOLLOW_BY_SYMBOL_in_order_by_clause5647_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_with_direction_in_order_by_clause5649  */
static	ANTLR3_BITWORD FOLLOW_expression_list_with_direction_in_order_by_clause5649_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_list_with_direction_in_order_by_clause5649	= { FOLLOW_expression_list_with_direction_in_order_by_clause5649_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_order_by_clause_in_order_by_or_limit5658  */
static	ANTLR3_BITWORD FOLLOW_order_by_clause_in_order_by_or_limit5658_bits[]	= { ANTLR3_UINT64_LIT(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(0x2000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_order_by_clause_in_order_by_or_limit5658	= { FOLLOW_order_by_clause_in_order_by_or_limit5658_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_limit_clause_in_order_by_or_limit5660  */
static	ANTLR3_BITWORD FOLLOW_limit_clause_in_order_by_or_limit5660_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_limit_clause_in_order_by_or_limit5660	= { FOLLOW_limit_clause_in_order_by_or_limit5660_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_limit_clause_in_order_by_or_limit5666  */
static	ANTLR3_BITWORD FOLLOW_limit_clause_in_order_by_or_limit5666_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_limit_clause_in_order_by_or_limit5666	= { FOLLOW_limit_clause_in_order_by_or_limit5666_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_from_clause5689  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_from_clause5689_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0400000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000600000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_from_clause5689	= { FOLLOW_FROM_SYMBOL_in_from_clause5689_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_reference_list_in_from_clause5691  */
static	ANTLR3_BITWORD FOLLOW_table_reference_list_in_from_clause5691_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_reference_list_in_from_clause5691	= { FOLLOW_table_reference_list_in_from_clause5691_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WHERE_SYMBOL_in_where_clause5700  */
static	ANTLR3_BITWORD FOLLOW_WHERE_SYMBOL_in_where_clause5700_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_WHERE_SYMBOL_in_where_clause5700	= { FOLLOW_WHERE_SYMBOL_in_where_clause5700_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_where_clause5703  */
static	ANTLR3_BITWORD FOLLOW_expression_in_where_clause5703_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_where_clause5703	= { FOLLOW_expression_in_where_clause5703_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_join_table_list_in_table_reference_list5712  */
static	ANTLR3_BITWORD FOLLOW_join_table_list_in_table_reference_list5712_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_join_table_list_in_table_reference_list5712	= { FOLLOW_join_table_list_in_table_reference_list5712_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DUAL_SYMBOL_in_table_reference_list5717  */
static	ANTLR3_BITWORD FOLLOW_DUAL_SYMBOL_in_table_reference_list5717_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DUAL_SYMBOL_in_table_reference_list5717	= { FOLLOW_DUAL_SYMBOL_in_table_reference_list5717_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_escaped_table_reference_in_join_table_list5728  */
static	ANTLR3_BITWORD FOLLOW_escaped_table_reference_in_join_table_list5728_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_escaped_table_reference_in_join_table_list5728	= { FOLLOW_escaped_table_reference_in_join_table_list5728_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_join_table_list5744  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_join_table_list5744_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000600000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_join_table_list5744	= { FOLLOW_COMMA_SYMBOL_in_join_table_list5744_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_escaped_table_reference_in_join_table_list5746  */
static	ANTLR3_BITWORD FOLLOW_escaped_table_reference_in_join_table_list5746_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_escaped_table_reference_in_join_table_list5746	= { FOLLOW_escaped_table_reference_in_join_table_list5746_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_reference_in_escaped_table_reference5763  */
static	ANTLR3_BITWORD FOLLOW_table_reference_in_escaped_table_reference5763_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_reference_in_escaped_table_reference5763	= { FOLLOW_table_reference_in_escaped_table_reference5763_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_CURLY_SYMBOL_in_escaped_table_reference5768  */
static	ANTLR3_BITWORD FOLLOW_OPEN_CURLY_SYMBOL_in_escaped_table_reference5768_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_CURLY_SYMBOL_in_escaped_table_reference5768	= { FOLLOW_OPEN_CURLY_SYMBOL_in_escaped_table_reference5768_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_escaped_table_reference5770  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_escaped_table_reference5770_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_escaped_table_reference5770	= { FOLLOW_identifier_in_escaped_table_reference5770_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_reference_in_escaped_table_reference5772  */
static	ANTLR3_BITWORD FOLLOW_table_reference_in_escaped_table_reference5772_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_reference_in_escaped_table_reference5772	= { FOLLOW_table_reference_in_escaped_table_reference5772_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_CURLY_SYMBOL_in_escaped_table_reference5774  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_CURLY_SYMBOL_in_escaped_table_reference5774_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_CURLY_SYMBOL_in_escaped_table_reference5774	= { FOLLOW_CLOSE_CURLY_SYMBOL_in_escaped_table_reference5774_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_factor_in_table_reference5784  */
static	ANTLR3_BITWORD FOLLOW_table_factor_in_table_reference5784_bits[]	= { ANTLR3_UINT64_LIT(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(0x0810000200000000), ANTLR3_UINT64_LIT(0x0000000010000000), ANTLR3_UINT64_LIT(0x0200000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_factor_in_table_reference5784	= { FOLLOW_table_factor_in_table_reference5784_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_join_in_table_reference5800  */
static	ANTLR3_BITWORD FOLLOW_join_in_table_reference5800_bits[]	= { ANTLR3_UINT64_LIT(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(0x0810000200000000), ANTLR3_UINT64_LIT(0x0000000010000000), ANTLR3_UINT64_LIT(0x0200000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_join_in_table_reference5800	= { FOLLOW_join_in_table_reference5800_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_join_table_in_join5811  */
static	ANTLR3_BITWORD FOLLOW_join_table_in_join5811_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_join_table_in_join5811	= { FOLLOW_join_table_in_join5811_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SELECT_SYMBOL_in_table_factor5828  */
static	ANTLR3_BITWORD FOLLOW_SELECT_SYMBOL_in_table_factor5828_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(0x010000A953013010), ANTLR3_UINT64_LIT(0x08000810224000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x36A000E040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x4D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_SELECT_SYMBOL_in_table_factor5828	= { FOLLOW_SELECT_SYMBOL_in_table_factor5828_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_option_in_table_factor5844  */
static	ANTLR3_BITWORD FOLLOW_select_option_in_table_factor5844_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(0x010000A953013010), ANTLR3_UINT64_LIT(0x08000810224000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x36A000E040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x4D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_select_option_in_table_factor5844	= { FOLLOW_select_option_in_table_factor5844_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_item_list_in_table_factor5848  */
static	ANTLR3_BITWORD FOLLOW_select_item_list_in_table_factor5848_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000001828000), ANTLR3_UINT64_LIT(0x2008000000000010), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_select_item_list_in_table_factor5848	= { FOLLOW_select_item_list_in_table_factor5848_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_expression_in_table_factor5850  */
static	ANTLR3_BITWORD FOLLOW_table_expression_in_table_factor5850_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_expression_in_table_factor5850	= { FOLLOW_table_expression_in_table_factor5850_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_table_factor5855  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_table_factor5855_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0400000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000600000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_table_factor5855	= { FOLLOW_OPEN_PAR_SYMBOL_in_table_factor5855_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_table_factor_union_in_table_factor5857  */
static	ANTLR3_BITWORD FOLLOW_select_table_factor_union_in_table_factor5857_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_table_factor_union_in_table_factor5857	= { FOLLOW_select_table_factor_union_in_table_factor5857_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_table_factor5859  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_table_factor5859_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010800000000000), ANTLR3_UINT64_LIT(0x0000001000900000) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_table_factor5859	= { FOLLOW_CLOSE_PAR_SYMBOL_in_table_factor5859_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_alias_in_table_factor5861  */
static	ANTLR3_BITWORD FOLLOW_table_alias_in_table_factor5861_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_alias_in_table_factor5861	= { FOLLOW_table_alias_in_table_factor5861_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_table_factor5867  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_table_factor5867_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040002000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010800000080000), ANTLR3_UINT64_LIT(0x0000001000900000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_in_table_factor5867	= { FOLLOW_table_ref_in_table_factor5867_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_use_partition_in_table_factor5869  */
static	ANTLR3_BITWORD FOLLOW_use_partition_in_table_factor5869_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040002000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010800000080000), ANTLR3_UINT64_LIT(0x0000001000900000) };
static  ANTLR3_BITSET_LIST FOLLOW_use_partition_in_table_factor5869	= { FOLLOW_use_partition_in_table_factor5869_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_alias_in_table_factor5872  */
static	ANTLR3_BITWORD FOLLOW_table_alias_in_table_factor5872_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000040002000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000080000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_alias_in_table_factor5872	= { FOLLOW_table_alias_in_table_factor5872_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_hint_list_in_table_factor5875  */
static	ANTLR3_BITWORD FOLLOW_index_hint_list_in_table_factor5875_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_index_hint_list_in_table_factor5875	= { FOLLOW_index_hint_list_in_table_factor5875_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_reference_list_in_select_table_factor_union5886  */
static	ANTLR3_BITWORD FOLLOW_table_reference_list_in_select_table_factor_union5886_bits[]	= { ANTLR3_UINT64_LIT(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(0x2000000000000000), ANTLR3_UINT64_LIT(0x0008000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000002000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_reference_list_in_select_table_factor_union5886	= { FOLLOW_table_reference_list_in_select_table_factor_union5886_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_order_by_or_limit_in_select_table_factor_union5888  */
static	ANTLR3_BITWORD FOLLOW_order_by_or_limit_in_select_table_factor_union5888_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000002000) };
static  ANTLR3_BITSET_LIST FOLLOW_order_by_or_limit_in_select_table_factor_union5888	= { FOLLOW_order_by_or_limit_in_select_table_factor_union5888_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNION_SYMBOL_in_select_table_factor_union5893  */
static	ANTLR3_BITWORD FOLLOW_UNION_SYMBOL_in_select_table_factor_union5893_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(0x0100000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_UNION_SYMBOL_in_select_table_factor_union5893	= { FOLLOW_UNION_SYMBOL_in_select_table_factor_union5893_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_union_option_in_select_table_factor_union5895  */
static	ANTLR3_BITWORD FOLLOW_union_option_in_select_table_factor_union5895_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_union_option_in_select_table_factor_union5895	= { FOLLOW_union_option_in_select_table_factor_union5895_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_query_specification_in_select_table_factor_union5898  */
static	ANTLR3_BITWORD FOLLOW_query_specification_in_select_table_factor_union5898_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000002000) };
static  ANTLR3_BITSET_LIST FOLLOW_query_specification_in_select_table_factor_union5898	= { FOLLOW_query_specification_in_select_table_factor_union5898_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SELECT_SYMBOL_in_query_specification5909  */
static	ANTLR3_BITWORD FOLLOW_SELECT_SYMBOL_in_query_specification5909_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(0x010000A953013010), ANTLR3_UINT64_LIT(0x08000810224000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x36A000E040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x4D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_SELECT_SYMBOL_in_query_specification5909	= { FOLLOW_SELECT_SYMBOL_in_query_specification5909_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_part2_derived_in_query_specification5911  */
static	ANTLR3_BITWORD FOLLOW_select_part2_derived_in_query_specification5911_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000001828000), ANTLR3_UINT64_LIT(0x2008000000000010), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_select_part2_derived_in_query_specification5911	= { FOLLOW_select_part2_derived_in_query_specification5911_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_expression_in_query_specification5913  */
static	ANTLR3_BITWORD FOLLOW_table_expression_in_query_specification5913_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_expression_in_query_specification5913	= { FOLLOW_table_expression_in_query_specification5913_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_query_specification5918  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_query_specification5918_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_query_specification5918	= { FOLLOW_OPEN_PAR_SYMBOL_in_query_specification5918_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_paren_derived_in_query_specification5920  */
static	ANTLR3_BITWORD FOLLOW_select_paren_derived_in_query_specification5920_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_paren_derived_in_query_specification5920	= { FOLLOW_select_paren_derived_in_query_specification5920_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_query_specification5922  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_query_specification5922_bits[]	= { ANTLR3_UINT64_LIT(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(0x2000000000000000), ANTLR3_UINT64_LIT(0x0008000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_query_specification5922	= { FOLLOW_CLOSE_PAR_SYMBOL_in_query_specification5922_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_order_by_or_limit_in_query_specification5924  */
static	ANTLR3_BITWORD FOLLOW_order_by_or_limit_in_query_specification5924_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_order_by_or_limit_in_query_specification5924	= { FOLLOW_order_by_or_limit_in_query_specification5924_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SELECT_SYMBOL_in_select_paren_derived5934  */
static	ANTLR3_BITWORD FOLLOW_SELECT_SYMBOL_in_select_paren_derived5934_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(0x010000A953013010), ANTLR3_UINT64_LIT(0x08000810224000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x36A000E040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x4D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_SELECT_SYMBOL_in_select_paren_derived5934	= { FOLLOW_SELECT_SYMBOL_in_select_paren_derived5934_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_part2_derived_in_select_paren_derived5936  */
static	ANTLR3_BITWORD FOLLOW_select_part2_derived_in_select_paren_derived5936_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000001828000), ANTLR3_UINT64_LIT(0x2008000000000010), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_select_part2_derived_in_select_paren_derived5936	= { FOLLOW_select_part2_derived_in_select_paren_derived5936_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_expression_in_select_paren_derived5938  */
static	ANTLR3_BITWORD FOLLOW_table_expression_in_select_paren_derived5938_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_expression_in_select_paren_derived5938	= { FOLLOW_table_expression_in_select_paren_derived5938_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_select_paren_derived5943  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_select_paren_derived5943_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_select_paren_derived5943	= { FOLLOW_OPEN_PAR_SYMBOL_in_select_paren_derived5943_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_paren_derived_in_select_paren_derived5945  */
static	ANTLR3_BITWORD FOLLOW_select_paren_derived_in_select_paren_derived5945_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_paren_derived_in_select_paren_derived5945	= { FOLLOW_select_paren_derived_in_select_paren_derived5945_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_select_paren_derived5947  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_select_paren_derived5947_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_select_paren_derived5947	= { FOLLOW_CLOSE_PAR_SYMBOL_in_select_paren_derived5947_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_JOIN_SYMBOL_in_join_table5966  */
static	ANTLR3_BITWORD FOLLOW_JOIN_SYMBOL_in_join_table5966_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_JOIN_SYMBOL_in_join_table5966	= { FOLLOW_JOIN_SYMBOL_in_join_table5966_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_reference_in_join_table5968  */
static	ANTLR3_BITWORD FOLLOW_table_reference_in_join_table5968_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_reference_in_join_table5968	= { FOLLOW_table_reference_in_join_table5968_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_join_condition_in_join_table5982  */
static	ANTLR3_BITWORD FOLLOW_join_condition_in_join_table5982_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_join_condition_in_join_table5982	= { FOLLOW_join_condition_in_join_table5982_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STRAIGHT_JOIN_SYMBOL_in_join_table5989  */
static	ANTLR3_BITWORD FOLLOW_STRAIGHT_JOIN_SYMBOL_in_join_table5989_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_STRAIGHT_JOIN_SYMBOL_in_join_table5989	= { FOLLOW_STRAIGHT_JOIN_SYMBOL_in_join_table5989_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_factor_in_join_table5991  */
static	ANTLR3_BITWORD FOLLOW_table_factor_in_join_table5991_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_factor_in_join_table5991	= { FOLLOW_table_factor_in_join_table5991_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_join_table6005  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_join_table6005_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_ON_SYMBOL_in_join_table6005	= { FOLLOW_ON_SYMBOL_in_join_table6005_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_join_table6007  */
static	ANTLR3_BITWORD FOLLOW_expression_in_join_table6007_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_join_table6007	= { FOLLOW_expression_in_join_table6007_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_join_table6014  */
static	ANTLR3_BITWORD FOLLOW_set_in_join_table6014_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0020000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_join_table6014	= { FOLLOW_set_in_join_table6014_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OUTER_SYMBOL_in_join_table6022  */
static	ANTLR3_BITWORD FOLLOW_OUTER_SYMBOL_in_join_table6022_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_OUTER_SYMBOL_in_join_table6022	= { FOLLOW_OUTER_SYMBOL_in_join_table6022_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_JOIN_SYMBOL_in_join_table6025  */
static	ANTLR3_BITWORD FOLLOW_JOIN_SYMBOL_in_join_table6025_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_JOIN_SYMBOL_in_join_table6025	= { FOLLOW_JOIN_SYMBOL_in_join_table6025_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_reference_in_join_table6027  */
static	ANTLR3_BITWORD FOLLOW_table_reference_in_join_table6027_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_reference_in_join_table6027	= { FOLLOW_table_reference_in_join_table6027_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_join_condition_in_join_table6029  */
static	ANTLR3_BITWORD FOLLOW_join_condition_in_join_table6029_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_join_condition_in_join_table6029	= { FOLLOW_join_condition_in_join_table6029_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NATURAL_SYMBOL_in_join_table6034  */
static	ANTLR3_BITWORD FOLLOW_NATURAL_SYMBOL_in_join_table6034_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0810000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_NATURAL_SYMBOL_in_join_table6034	= { FOLLOW_NATURAL_SYMBOL_in_join_table6034_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_join_table6037  */
static	ANTLR3_BITWORD FOLLOW_set_in_join_table6037_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0020000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_join_table6037	= { FOLLOW_set_in_join_table6037_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OUTER_SYMBOL_in_join_table6045  */
static	ANTLR3_BITWORD FOLLOW_OUTER_SYMBOL_in_join_table6045_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_OUTER_SYMBOL_in_join_table6045	= { FOLLOW_OUTER_SYMBOL_in_join_table6045_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_JOIN_SYMBOL_in_join_table6050  */
static	ANTLR3_BITWORD FOLLOW_JOIN_SYMBOL_in_join_table6050_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_JOIN_SYMBOL_in_join_table6050	= { FOLLOW_JOIN_SYMBOL_in_join_table6050_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_factor_in_join_table6052  */
static	ANTLR3_BITWORD FOLLOW_table_factor_in_join_table6052_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_factor_in_join_table6052	= { FOLLOW_table_factor_in_join_table6052_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_join_condition6061  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_join_condition6061_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_ON_SYMBOL_in_join_condition6061	= { FOLLOW_ON_SYMBOL_in_join_condition6061_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_join_condition6063  */
static	ANTLR3_BITWORD FOLLOW_expression_in_join_condition6063_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_join_condition6063	= { FOLLOW_expression_in_join_condition6063_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USING_SYMBOL_in_join_condition6068  */
static	ANTLR3_BITWORD FOLLOW_USING_SYMBOL_in_join_condition6068_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_USING_SYMBOL_in_join_condition6068	= { FOLLOW_USING_SYMBOL_in_join_condition6068_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_with_parentheses_in_join_condition6070  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_with_parentheses_in_join_condition6070_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_list_with_parentheses_in_join_condition6070	= { FOLLOW_identifier_list_with_parentheses_in_join_condition6070_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNION_SYMBOL_in_union_clause6080  */
static	ANTLR3_BITWORD FOLLOW_UNION_SYMBOL_in_union_clause6080_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(0x0100000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_UNION_SYMBOL_in_union_clause6080	= { FOLLOW_UNION_SYMBOL_in_union_clause6080_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_union_option_in_union_clause6083  */
static	ANTLR3_BITWORD FOLLOW_union_option_in_union_clause6083_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_union_option_in_union_clause6083	= { FOLLOW_union_option_in_union_clause6083_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_statement_in_union_clause6086  */
static	ANTLR3_BITWORD FOLLOW_select_statement_in_union_clause6086_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_select_statement_in_union_clause6086	= { FOLLOW_select_statement_in_union_clause6086_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_union_clause_in_union_or_order_by_or_limit6111  */
static	ANTLR3_BITWORD FOLLOW_union_clause_in_union_or_order_by_or_limit6111_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_union_clause_in_union_or_order_by_or_limit6111	= { FOLLOW_union_clause_in_union_or_order_by_or_limit6111_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_order_by_or_limit_in_union_or_order_by_or_limit6116  */
static	ANTLR3_BITWORD FOLLOW_order_by_or_limit_in_union_or_order_by_or_limit6116_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_order_by_or_limit_in_union_or_order_by_or_limit6116	= { FOLLOW_order_by_or_limit_in_union_or_order_by_or_limit6116_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOR_SYMBOL_in_select_lock_type6125  */
static	ANTLR3_BITWORD FOLLOW_FOR_SYMBOL_in_select_lock_type6125_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_FOR_SYMBOL_in_select_lock_type6125	= { FOLLOW_FOR_SYMBOL_in_select_lock_type6125_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UPDATE_SYMBOL_in_select_lock_type6127  */
static	ANTLR3_BITWORD FOLLOW_UPDATE_SYMBOL_in_select_lock_type6127_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_UPDATE_SYMBOL_in_select_lock_type6127	= { FOLLOW_UPDATE_SYMBOL_in_select_lock_type6127_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOCK_SYMBOL_in_select_lock_type6132  */
static	ANTLR3_BITWORD FOLLOW_LOCK_SYMBOL_in_select_lock_type6132_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_LOCK_SYMBOL_in_select_lock_type6132	= { FOLLOW_LOCK_SYMBOL_in_select_lock_type6132_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IN_SYMBOL_in_select_lock_type6134  */
static	ANTLR3_BITWORD FOLLOW_IN_SYMBOL_in_select_lock_type6134_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_type6134	= { FOLLOW_IN_SYMBOL_in_select_lock_type6134_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SHARE_SYMBOL_in_select_lock_type6136  */
static	ANTLR3_BITWORD FOLLOW_SHARE_SYMBOL_in_select_lock_type6136_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_type6136	= { FOLLOW_SHARE_SYMBOL_in_select_lock_type6136_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MODE_SYMBOL_in_select_lock_type6138  */
static	ANTLR3_BITWORD FOLLOW_MODE_SYMBOL_in_select_lock_type6138_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_MODE_SYMBOL_in_select_lock_type6138	= { FOLLOW_MODE_SYMBOL_in_select_lock_type6138_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_table_alias6156  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_table_alias6156_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_table_alias6156	= { FOLLOW_identifier_in_table_alias6156_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_hint_in_index_hint_list6165  */
static	ANTLR3_BITWORD FOLLOW_index_hint_in_index_hint_list6165_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_index_hint_in_index_hint_list6165	= { FOLLOW_index_hint_in_index_hint_list6165_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_index_hint_list6168  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_index_hint_list6168_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040002000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000080000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_index_hint_list6168	= { FOLLOW_COMMA_SYMBOL_in_index_hint_list6168_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_hint_in_index_hint_list6170  */
static	ANTLR3_BITWORD FOLLOW_index_hint_in_index_hint_list6170_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_index_hint_in_index_hint_list6170	= { FOLLOW_index_hint_in_index_hint_list6170_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_hint_type_in_index_hint6196  */
static	ANTLR3_BITWORD FOLLOW_index_hint_type_in_index_hint6196_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0080000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_hint_type_in_index_hint6196	= { FOLLOW_index_hint_type_in_index_hint6196_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_key_or_index_in_index_hint6198  */
static	ANTLR3_BITWORD FOLLOW_key_or_index_in_index_hint6198_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_key_or_index_in_index_hint6198	= { FOLLOW_key_or_index_in_index_hint6198_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_hint_clause_in_index_hint6200  */
static	ANTLR3_BITWORD FOLLOW_index_hint_clause_in_index_hint6200_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_index_hint_clause_in_index_hint6200	= { FOLLOW_index_hint_clause_in_index_hint6200_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_index_hint6203  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_index_hint6203_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_index_hint6203	= { FOLLOW_OPEN_PAR_SYMBOL_in_index_hint6203_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_list_in_index_hint6205  */
static	ANTLR3_BITWORD FOLLOW_index_list_in_index_hint6205_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_index_list_in_index_hint6205	= { FOLLOW_index_list_in_index_hint6205_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_index_hint6207  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_index_hint6207_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_index_hint6207	= { FOLLOW_CLOSE_PAR_SYMBOL_in_index_hint6207_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USE_SYMBOL_in_index_hint6212  */
static	ANTLR3_BITWORD FOLLOW_USE_SYMBOL_in_index_hint6212_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0080000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_USE_SYMBOL_in_index_hint6212	= { FOLLOW_USE_SYMBOL_in_index_hint6212_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_key_or_index_in_index_hint6214  */
static	ANTLR3_BITWORD FOLLOW_key_or_index_in_index_hint6214_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_key_or_index_in_index_hint6214	= { FOLLOW_key_or_index_in_index_hint6214_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_hint_clause_in_index_hint6216  */
static	ANTLR3_BITWORD FOLLOW_index_hint_clause_in_index_hint6216_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_index_hint_clause_in_index_hint6216	= { FOLLOW_index_hint_clause_in_index_hint6216_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_index_hint6219  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_index_hint6219_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_index_hint6219	= { FOLLOW_OPEN_PAR_SYMBOL_in_index_hint6219_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_list_in_index_hint6221  */
static	ANTLR3_BITWORD FOLLOW_index_list_in_index_hint6221_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_index_list_in_index_hint6221	= { FOLLOW_index_list_in_index_hint6221_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_index_hint6224  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_index_hint6224_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_index_hint6224	= { FOLLOW_CLOSE_PAR_SYMBOL_in_index_hint6224_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOR_SYMBOL_in_index_hint_clause6261  */
static	ANTLR3_BITWORD FOLLOW_FOR_SYMBOL_in_index_hint_clause6261_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0008000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FOR_SYMBOL_in_index_hint_clause6261	= { FOLLOW_FOR_SYMBOL_in_index_hint_clause6261_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_JOIN_SYMBOL_in_index_hint_clause6264  */
static	ANTLR3_BITWORD FOLLOW_JOIN_SYMBOL_in_index_hint_clause6264_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_JOIN_SYMBOL_in_index_hint_clause6264	= { FOLLOW_JOIN_SYMBOL_in_index_hint_clause6264_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ORDER_SYMBOL_in_index_hint_clause6268  */
static	ANTLR3_BITWORD FOLLOW_ORDER_SYMBOL_in_index_hint_clause6268_bits[]	= { ANTLR3_UINT64_LIT(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_ORDER_SYMBOL_in_index_hint_clause6268	= { FOLLOW_ORDER_SYMBOL_in_index_hint_clause6268_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BY_SYMBOL_in_index_hint_clause6270  */
static	ANTLR3_BITWORD FOLLOW_BY_SYMBOL_in_index_hint_clause6270_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BY_SYMBOL_in_index_hint_clause6270	= { FOLLOW_BY_SYMBOL_in_index_hint_clause6270_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GROUP_SYMBOL_in_index_hint_clause6274  */
static	ANTLR3_BITWORD FOLLOW_GROUP_SYMBOL_in_index_hint_clause6274_bits[]	= { ANTLR3_UINT64_LIT(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_GROUP_SYMBOL_in_index_hint_clause6274	= { FOLLOW_GROUP_SYMBOL_in_index_hint_clause6274_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BY_SYMBOL_in_index_hint_clause6276  */
static	ANTLR3_BITWORD FOLLOW_BY_SYMBOL_in_index_hint_clause6276_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BY_SYMBOL_in_index_hint_clause6276	= { FOLLOW_BY_SYMBOL_in_index_hint_clause6276_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_list_element_in_index_list6286  */
static	ANTLR3_BITWORD FOLLOW_index_list_element_in_index_list6286_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_index_list_element_in_index_list6286	= { FOLLOW_index_list_element_in_index_list6286_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_index_list6289  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_index_list6289_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_index_list6289	= { FOLLOW_COMMA_SYMBOL_in_index_list6289_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_list_element_in_index_list6291  */
static	ANTLR3_BITWORD FOLLOW_index_list_element_in_index_list6291_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_index_list_element_in_index_list6291	= { FOLLOW_index_list_element_in_index_list6291_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_index_list_element6302  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_index_list_element6302_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_index_list_element6302	= { FOLLOW_identifier_in_index_list_element6302_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PRIMARY_SYMBOL_in_index_list_element6307  */
static	ANTLR3_BITWORD FOLLOW_PRIMARY_SYMBOL_in_index_list_element6307_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PRIMARY_SYMBOL_in_index_list_element6307	= { FOLLOW_PRIMARY_SYMBOL_in_index_list_element6307_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UPDATE_SYMBOL_in_update_statement6318  */
static	ANTLR3_BITWORD FOLLOW_UPDATE_SYMBOL_in_update_statement6318_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000600000000400), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_UPDATE_SYMBOL_in_update_statement6318	= { FOLLOW_UPDATE_SYMBOL_in_update_statement6318_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOW_PRIORITY_SYMBOL_in_update_statement6321  */
static	ANTLR3_BITWORD FOLLOW_LOW_PRIORITY_SYMBOL_in_update_statement6321_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000600000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_LOW_PRIORITY_SYMBOL_in_update_statement6321	= { FOLLOW_LOW_PRIORITY_SYMBOL_in_update_statement6321_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IGNORE_SYMBOL_in_update_statement6324  */
static	ANTLR3_BITWORD FOLLOW_IGNORE_SYMBOL_in_update_statement6324_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000600000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_IGNORE_SYMBOL_in_update_statement6324	= { FOLLOW_IGNORE_SYMBOL_in_update_statement6324_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_join_table_list_in_update_statement6327  */
static	ANTLR3_BITWORD FOLLOW_join_table_list_in_update_statement6327_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_join_table_list_in_update_statement6327	= { FOLLOW_join_table_list_in_update_statement6327_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SET_SYMBOL_in_update_statement6331  */
static	ANTLR3_BITWORD FOLLOW_SET_SYMBOL_in_update_statement6331_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_SET_SYMBOL_in_update_statement6331	= { FOLLOW_SET_SYMBOL_in_update_statement6331_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_assignment_list_with_default_in_update_statement6333  */
static	ANTLR3_BITWORD FOLLOW_column_assignment_list_with_default_in_update_statement6333_bits[]	= { ANTLR3_UINT64_LIT(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(0x2000000000000000), ANTLR3_UINT64_LIT(0x0008000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_column_assignment_list_with_default_in_update_statement6333	= { FOLLOW_column_assignment_list_with_default_in_update_statement6333_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_where_clause_in_update_statement6335  */
static	ANTLR3_BITWORD FOLLOW_where_clause_in_update_statement6335_bits[]	= { ANTLR3_UINT64_LIT(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(0x2000000000000000), ANTLR3_UINT64_LIT(0x0008000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_where_clause_in_update_statement6335	= { FOLLOW_where_clause_in_update_statement6335_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_order_by_clause_in_update_statement6338  */
static	ANTLR3_BITWORD FOLLOW_order_by_clause_in_update_statement6338_bits[]	= { ANTLR3_UINT64_LIT(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(0x2000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_order_by_clause_in_update_statement6338	= { FOLLOW_order_by_clause_in_update_statement6338_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_simple_limit_clause_in_update_statement6341  */
static	ANTLR3_BITWORD FOLLOW_simple_limit_clause_in_update_statement6341_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_simple_limit_clause_in_update_statement6341	= { FOLLOW_simple_limit_clause_in_update_statement6341_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_transaction_statement_in_transaction_or_locking_statement6353  */
static	ANTLR3_BITWORD FOLLOW_transaction_statement_in_transaction_or_locking_statement6353_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_transaction_statement_in_transaction_or_locking_statement6353	= { FOLLOW_transaction_statement_in_transaction_or_locking_statement6353_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_savepoint_statement_in_transaction_or_locking_statement6358  */
static	ANTLR3_BITWORD FOLLOW_savepoint_statement_in_transaction_or_locking_statement6358_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_savepoint_statement_in_transaction_or_locking_statement6358	= { FOLLOW_savepoint_statement_in_transaction_or_locking_statement6358_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_lock_statement_in_transaction_or_locking_statement6363  */
static	ANTLR3_BITWORD FOLLOW_lock_statement_in_transaction_or_locking_statement6363_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_lock_statement_in_transaction_or_locking_statement6363	= { FOLLOW_lock_statement_in_transaction_or_locking_statement6363_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_xa_statement_in_transaction_or_locking_statement6368  */
static	ANTLR3_BITWORD FOLLOW_xa_statement_in_transaction_or_locking_statement6368_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_xa_statement_in_transaction_or_locking_statement6368	= { FOLLOW_xa_statement_in_transaction_or_locking_statement6368_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_START_SYMBOL_in_transaction_statement6377  */
static	ANTLR3_BITWORD FOLLOW_START_SYMBOL_in_transaction_statement6377_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_statement6377	= { FOLLOW_START_SYMBOL_in_transaction_statement6377_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TRANSACTION_SYMBOL_in_transaction_statement6380  */
static	ANTLR3_BITWORD FOLLOW_TRANSACTION_SYMBOL_in_transaction_statement6380_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000010000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_TRANSACTION_SYMBOL_in_transaction_statement6380	= { FOLLOW_TRANSACTION_SYMBOL_in_transaction_statement6380_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_transaction_characteristic_in_transaction_statement6382  */
static	ANTLR3_BITWORD FOLLOW_transaction_characteristic_in_transaction_statement6382_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000010000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_transaction_characteristic_in_transaction_statement6382	= { FOLLOW_transaction_characteristic_in_transaction_statement6382_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMIT_SYMBOL_in_transaction_statement6388  */
static	ANTLR3_BITWORD FOLLOW_COMMIT_SYMBOL_in_transaction_statement6388_bits[]	= { ANTLR3_UINT64_LIT(0x0000000040000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x4008000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMIT_SYMBOL_in_transaction_statement6388	= { FOLLOW_COMMIT_SYMBOL_in_transaction_statement6388_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WORK_SYMBOL_in_transaction_statement6391  */
static	ANTLR3_BITWORD FOLLOW_WORK_SYMBOL_in_transaction_statement6391_bits[]	= { ANTLR3_UINT64_LIT(0x0000000040000002), 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(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_WORK_SYMBOL_in_transaction_statement6391	= { FOLLOW_WORK_SYMBOL_in_transaction_statement6391_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AND_SYMBOL_in_transaction_statement6395  */
static	ANTLR3_BITWORD FOLLOW_AND_SYMBOL_in_transaction_statement6395_bits[]	= { ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_AND_SYMBOL_in_transaction_statement6395	= { FOLLOW_AND_SYMBOL_in_transaction_statement6395_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NO_SYMBOL_in_transaction_statement6397  */
static	ANTLR3_BITWORD FOLLOW_NO_SYMBOL_in_transaction_statement6397_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_NO_SYMBOL_in_transaction_statement6397	= { FOLLOW_NO_SYMBOL_in_transaction_statement6397_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHAIN_SYMBOL_in_transaction_statement6400  */
static	ANTLR3_BITWORD FOLLOW_CHAIN_SYMBOL_in_transaction_statement6400_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(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_CHAIN_SYMBOL_in_transaction_statement6400	= { FOLLOW_CHAIN_SYMBOL_in_transaction_statement6400_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NO_SYMBOL_in_transaction_statement6405  */
static	ANTLR3_BITWORD FOLLOW_NO_SYMBOL_in_transaction_statement6405_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_NO_SYMBOL_in_transaction_statement6405	= { FOLLOW_NO_SYMBOL_in_transaction_statement6405_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RELEASE_SYMBOL_in_transaction_statement6408  */
static	ANTLR3_BITWORD FOLLOW_RELEASE_SYMBOL_in_transaction_statement6408_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_RELEASE_SYMBOL_in_transaction_statement6408	= { FOLLOW_RELEASE_SYMBOL_in_transaction_statement6408_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ROLLBACK_SYMBOL_in_transaction_statement6415  */
static	ANTLR3_BITWORD FOLLOW_ROLLBACK_SYMBOL_in_transaction_statement6415_bits[]	= { ANTLR3_UINT64_LIT(0x0000000040000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x4008000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000040), ANTLR3_UINT64_LIT(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_ROLLBACK_SYMBOL_in_transaction_statement6415	= { FOLLOW_ROLLBACK_SYMBOL_in_transaction_statement6415_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WORK_SYMBOL_in_transaction_statement6418  */
static	ANTLR3_BITWORD FOLLOW_WORK_SYMBOL_in_transaction_statement6418_bits[]	= { ANTLR3_UINT64_LIT(0x0000000040000002), 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(0x0000000000000040), ANTLR3_UINT64_LIT(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_WORK_SYMBOL_in_transaction_statement6418	= { FOLLOW_WORK_SYMBOL_in_transaction_statement6418_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AND_SYMBOL_in_transaction_statement6429  */
static	ANTLR3_BITWORD FOLLOW_AND_SYMBOL_in_transaction_statement6429_bits[]	= { ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_AND_SYMBOL_in_transaction_statement6429	= { FOLLOW_AND_SYMBOL_in_transaction_statement6429_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NO_SYMBOL_in_transaction_statement6431  */
static	ANTLR3_BITWORD FOLLOW_NO_SYMBOL_in_transaction_statement6431_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_NO_SYMBOL_in_transaction_statement6431	= { FOLLOW_NO_SYMBOL_in_transaction_statement6431_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHAIN_SYMBOL_in_transaction_statement6434  */
static	ANTLR3_BITWORD FOLLOW_CHAIN_SYMBOL_in_transaction_statement6434_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(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_CHAIN_SYMBOL_in_transaction_statement6434	= { FOLLOW_CHAIN_SYMBOL_in_transaction_statement6434_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NO_SYMBOL_in_transaction_statement6439  */
static	ANTLR3_BITWORD FOLLOW_NO_SYMBOL_in_transaction_statement6439_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_NO_SYMBOL_in_transaction_statement6439	= { FOLLOW_NO_SYMBOL_in_transaction_statement6439_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RELEASE_SYMBOL_in_transaction_statement6442  */
static	ANTLR3_BITWORD FOLLOW_RELEASE_SYMBOL_in_transaction_statement6442_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_RELEASE_SYMBOL_in_transaction_statement6442	= { FOLLOW_RELEASE_SYMBOL_in_transaction_statement6442_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TO_SYMBOL_in_transaction_statement6451  */
static	ANTLR3_BITWORD FOLLOW_TO_SYMBOL_in_transaction_statement6451_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_TO_SYMBOL_in_transaction_statement6451	= { FOLLOW_TO_SYMBOL_in_transaction_statement6451_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SAVEPOINT_SYMBOL_in_transaction_statement6453  */
static	ANTLR3_BITWORD FOLLOW_SAVEPOINT_SYMBOL_in_transaction_statement6453_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_SAVEPOINT_SYMBOL_in_transaction_statement6453	= { FOLLOW_SAVEPOINT_SYMBOL_in_transaction_statement6453_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_transaction_statement6456  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_transaction_statement6456_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_transaction_statement6456	= { FOLLOW_identifier_in_transaction_statement6456_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BEGIN_SYMBOL_in_begin_work6477  */
static	ANTLR3_BITWORD FOLLOW_BEGIN_SYMBOL_in_begin_work6477_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_begin_work6477	= { FOLLOW_BEGIN_SYMBOL_in_begin_work6477_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WORK_SYMBOL_in_begin_work6480  */
static	ANTLR3_BITWORD FOLLOW_WORK_SYMBOL_in_begin_work6480_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_WORK_SYMBOL_in_begin_work6480	= { FOLLOW_WORK_SYMBOL_in_begin_work6480_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WITH_SYMBOL_in_transaction_characteristic6490  */
static	ANTLR3_BITWORD FOLLOW_WITH_SYMBOL_in_transaction_characteristic6490_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_WITH_SYMBOL_in_transaction_characteristic6490	= { FOLLOW_WITH_SYMBOL_in_transaction_characteristic6490_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CONSISTENT_SYMBOL_in_transaction_characteristic6492  */
static	ANTLR3_BITWORD FOLLOW_CONSISTENT_SYMBOL_in_transaction_characteristic6492_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_characteristic6492	= { FOLLOW_CONSISTENT_SYMBOL_in_transaction_characteristic6492_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SNAPSHOT_SYMBOL_in_transaction_characteristic6494  */
static	ANTLR3_BITWORD FOLLOW_SNAPSHOT_SYMBOL_in_transaction_characteristic6494_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SNAPSHOT_SYMBOL_in_transaction_characteristic6494	= { FOLLOW_SNAPSHOT_SYMBOL_in_transaction_characteristic6494_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_READ_SYMBOL_in_transaction_characteristic6501  */
static	ANTLR3_BITWORD FOLLOW_READ_SYMBOL_in_transaction_characteristic6501_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000080000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000020000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_READ_SYMBOL_in_transaction_characteristic6501	= { FOLLOW_READ_SYMBOL_in_transaction_characteristic6501_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_transaction_characteristic6503  */
static	ANTLR3_BITWORD FOLLOW_set_in_transaction_characteristic6503_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_transaction_characteristic6503	= { FOLLOW_set_in_transaction_characteristic6503_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ISOLATION_SYMBOL_in_set_transaction_characteristic6518  */
static	ANTLR3_BITWORD FOLLOW_ISOLATION_SYMBOL_in_set_transaction_characteristic6518_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ISOLATION_SYMBOL_in_set_transaction_characteristic6518	= { FOLLOW_ISOLATION_SYMBOL_in_set_transaction_characteristic6518_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LEVEL_SYMBOL_in_set_transaction_characteristic6520  */
static	ANTLR3_BITWORD FOLLOW_LEVEL_SYMBOL_in_set_transaction_characteristic6520_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(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_LEVEL_SYMBOL_in_set_transaction_characteristic6520	= { FOLLOW_LEVEL_SYMBOL_in_set_transaction_characteristic6520_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_isolation_level_in_set_transaction_characteristic6522  */
static	ANTLR3_BITWORD FOLLOW_isolation_level_in_set_transaction_characteristic6522_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_isolation_level_in_set_transaction_characteristic6522	= { FOLLOW_isolation_level_in_set_transaction_characteristic6522_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_READ_SYMBOL_in_set_transaction_characteristic6529  */
static	ANTLR3_BITWORD FOLLOW_READ_SYMBOL_in_set_transaction_characteristic6529_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000080000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000020000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_READ_SYMBOL_in_set_transaction_characteristic6529	= { FOLLOW_READ_SYMBOL_in_set_transaction_characteristic6529_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_set_transaction_characteristic6531  */
static	ANTLR3_BITWORD FOLLOW_set_in_set_transaction_characteristic6531_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_set_transaction_characteristic6531	= { FOLLOW_set_in_set_transaction_characteristic6531_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REPEATABLE_SYMBOL_in_isolation_level6546  */
static	ANTLR3_BITWORD FOLLOW_REPEATABLE_SYMBOL_in_isolation_level6546_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_REPEATABLE_SYMBOL_in_isolation_level6546	= { FOLLOW_REPEATABLE_SYMBOL_in_isolation_level6546_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_READ_SYMBOL_in_isolation_level6548  */
static	ANTLR3_BITWORD FOLLOW_READ_SYMBOL_in_isolation_level6548_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_READ_SYMBOL_in_isolation_level6548	= { FOLLOW_READ_SYMBOL_in_isolation_level6548_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_READ_SYMBOL_in_isolation_level6553  */
static	ANTLR3_BITWORD FOLLOW_READ_SYMBOL_in_isolation_level6553_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_level6553	= { FOLLOW_READ_SYMBOL_in_isolation_level6553_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_isolation_level6555  */
static	ANTLR3_BITWORD FOLLOW_set_in_isolation_level6555_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_isolation_level6555	= { FOLLOW_set_in_isolation_level6555_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SERIALIZABLE_SYMBOL_in_isolation_level6566  */
static	ANTLR3_BITWORD FOLLOW_SERIALIZABLE_SYMBOL_in_isolation_level6566_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SERIALIZABLE_SYMBOL_in_isolation_level6566	= { FOLLOW_SERIALIZABLE_SYMBOL_in_isolation_level6566_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SAVEPOINT_SYMBOL_in_savepoint_statement6575  */
static	ANTLR3_BITWORD FOLLOW_SAVEPOINT_SYMBOL_in_savepoint_statement6575_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_SAVEPOINT_SYMBOL_in_savepoint_statement6575	= { FOLLOW_SAVEPOINT_SYMBOL_in_savepoint_statement6575_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_savepoint_statement6578  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_savepoint_statement6578_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_savepoint_statement6578	= { FOLLOW_identifier_in_savepoint_statement6578_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RELEASE_SYMBOL_in_savepoint_statement6583  */
static	ANTLR3_BITWORD FOLLOW_RELEASE_SYMBOL_in_savepoint_statement6583_bits[]	= { ANTLR3_UINT64_LIT(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_RELEASE_SYMBOL_in_savepoint_statement6583	= { FOLLOW_RELEASE_SYMBOL_in_savepoint_statement6583_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SAVEPOINT_SYMBOL_in_savepoint_statement6586  */
static	ANTLR3_BITWORD FOLLOW_SAVEPOINT_SYMBOL_in_savepoint_statement6586_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_SAVEPOINT_SYMBOL_in_savepoint_statement6586	= { FOLLOW_SAVEPOINT_SYMBOL_in_savepoint_statement6586_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_savepoint_statement6588  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_savepoint_statement6588_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_savepoint_statement6588	= { FOLLOW_identifier_in_savepoint_statement6588_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOCK_SYMBOL_in_lock_statement6597  */
static	ANTLR3_BITWORD FOLLOW_LOCK_SYMBOL_in_lock_statement6597_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(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_LOCK_SYMBOL_in_lock_statement6597	= { FOLLOW_LOCK_SYMBOL_in_lock_statement6597_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_lock_statement6600  */
static	ANTLR3_BITWORD FOLLOW_set_in_lock_statement6600_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_lock_statement6600	= { FOLLOW_set_in_lock_statement6600_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_lock_item_in_lock_statement6608  */
static	ANTLR3_BITWORD FOLLOW_lock_item_in_lock_statement6608_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_lock_item_in_lock_statement6608	= { FOLLOW_lock_item_in_lock_statement6608_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_lock_statement6611  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_lock_statement6611_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_lock_statement6611	= { FOLLOW_COMMA_SYMBOL_in_lock_statement6611_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_lock_item_in_lock_statement6613  */
static	ANTLR3_BITWORD FOLLOW_lock_item_in_lock_statement6613_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_lock_item_in_lock_statement6613	= { FOLLOW_lock_item_in_lock_statement6613_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNLOCK_SYMBOL_in_lock_statement6620  */
static	ANTLR3_BITWORD FOLLOW_UNLOCK_SYMBOL_in_lock_statement6620_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(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_UNLOCK_SYMBOL_in_lock_statement6620	= { FOLLOW_UNLOCK_SYMBOL_in_lock_statement6620_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_lock_statement6623  */
static	ANTLR3_BITWORD FOLLOW_set_in_lock_statement6623_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_lock_statement6623	= { FOLLOW_set_in_lock_statement6623_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_lock_item6638  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_lock_item6638_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000400), ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0010820000000000), ANTLR3_UINT64_LIT(0x0000001000900000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_in_lock_item6638	= { FOLLOW_table_ref_in_lock_item6638_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_alias_in_lock_item6640  */
static	ANTLR3_BITWORD FOLLOW_table_alias_in_lock_item6640_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000020000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_alias_in_lock_item6640	= { FOLLOW_table_alias_in_lock_item6640_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_lock_option_in_lock_item6643  */
static	ANTLR3_BITWORD FOLLOW_lock_option_in_lock_item6643_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_lock_option_in_lock_item6643	= { FOLLOW_lock_option_in_lock_item6643_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_READ_SYMBOL_in_lock_option6652  */
static	ANTLR3_BITWORD FOLLOW_READ_SYMBOL_in_lock_option6652_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_READ_SYMBOL_in_lock_option6652	= { FOLLOW_READ_SYMBOL_in_lock_option6652_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOCAL_SYMBOL_in_lock_option6654  */
static	ANTLR3_BITWORD FOLLOW_LOCAL_SYMBOL_in_lock_option6654_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_LOCAL_SYMBOL_in_lock_option6654	= { FOLLOW_LOCAL_SYMBOL_in_lock_option6654_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOW_PRIORITY_SYMBOL_in_lock_option6660  */
static	ANTLR3_BITWORD FOLLOW_LOW_PRIORITY_SYMBOL_in_lock_option6660_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_LOW_PRIORITY_SYMBOL_in_lock_option6660	= { FOLLOW_LOW_PRIORITY_SYMBOL_in_lock_option6660_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WRITE_SYMBOL_in_lock_option6663  */
static	ANTLR3_BITWORD FOLLOW_WRITE_SYMBOL_in_lock_option6663_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_WRITE_SYMBOL_in_lock_option6663	= { FOLLOW_WRITE_SYMBOL_in_lock_option6663_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_XA_SYMBOL_in_xa_statement6673  */
static	ANTLR3_BITWORD FOLLOW_XA_SYMBOL_in_xa_statement6673_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_statement6673	= { FOLLOW_XA_SYMBOL_in_xa_statement6673_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_xa_statement6683  */
static	ANTLR3_BITWORD FOLLOW_set_in_xa_statement6683_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_xa_statement6683	= { FOLLOW_set_in_xa_statement6683_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_xid_in_xa_statement6691  */
static	ANTLR3_BITWORD FOLLOW_xid_in_xa_statement6691_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(0x0010000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_xid_in_xa_statement6691	= { FOLLOW_xid_in_xa_statement6691_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_END_SYMBOL_in_xa_statement6707  */
static	ANTLR3_BITWORD FOLLOW_END_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_END_SYMBOL_in_xa_statement6707	= { FOLLOW_END_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), 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_statement6709	= { FOLLOW_xid_in_xa_statement6709_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SUSPEND_SYMBOL_in_xa_statement6712  */
static	ANTLR3_BITWORD FOLLOW_SUSPEND_SYMBOL_in_xa_statement6712_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_SUSPEND_SYMBOL_in_xa_statement6712	= { FOLLOW_SUSPEND_SYMBOL_in_xa_statement6712_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOR_SYMBOL_in_xa_statement6715  */
static	ANTLR3_BITWORD FOLLOW_FOR_SYMBOL_in_xa_statement6715_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_statement6715	= { FOLLOW_FOR_SYMBOL_in_xa_statement6715_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MIGRATE_SYMBOL_in_xa_statement6717  */
static	ANTLR3_BITWORD FOLLOW_MIGRATE_SYMBOL_in_xa_statement6717_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_MIGRATE_SYMBOL_in_xa_statement6717	= { FOLLOW_MIGRATE_SYMBOL_in_xa_statement6717_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PREPARE_SYMBOL_in_xa_statement6728  */
static	ANTLR3_BITWORD FOLLOW_PREPARE_SYMBOL_in_xa_statement6728_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PREPARE_SYMBOL_in_xa_statement6728	= { FOLLOW_PREPARE_SYMBOL_in_xa_statement6728_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_xid_in_xa_statement6730  */
static	ANTLR3_BITWORD FOLLOW_xid_in_xa_statement6730_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_xid_in_xa_statement6730	= { FOLLOW_xid_in_xa_statement6730_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMIT_SYMBOL_in_xa_statement6737  */
static	ANTLR3_BITWORD FOLLOW_COMMIT_SYMBOL_in_xa_statement6737_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMIT_SYMBOL_in_xa_statement6737	= { FOLLOW_COMMIT_SYMBOL_in_xa_statement6737_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_xid_in_xa_statement6739  */
static	ANTLR3_BITWORD FOLLOW_xid_in_xa_statement6739_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_statement6739	= { FOLLOW_xid_in_xa_statement6739_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ONE_SYMBOL_in_xa_statement6742  */
static	ANTLR3_BITWORD FOLLOW_ONE_SYMBOL_in_xa_statement6742_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_statement6742	= { FOLLOW_ONE_SYMBOL_in_xa_statement6742_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PHASE_SYMBOL_in_xa_statement6744  */
static	ANTLR3_BITWORD FOLLOW_PHASE_SYMBOL_in_xa_statement6744_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PHASE_SYMBOL_in_xa_statement6744	= { FOLLOW_PHASE_SYMBOL_in_xa_statement6744_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ROLLBACK_SYMBOL_in_xa_statement6753  */
static	ANTLR3_BITWORD FOLLOW_ROLLBACK_SYMBOL_in_xa_statement6753_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ROLLBACK_SYMBOL_in_xa_statement6753	= { FOLLOW_ROLLBACK_SYMBOL_in_xa_statement6753_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_xid_in_xa_statement6755  */
static	ANTLR3_BITWORD FOLLOW_xid_in_xa_statement6755_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_xid_in_xa_statement6755	= { FOLLOW_xid_in_xa_statement6755_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RECOVER_SYMBOL_in_xa_statement6762  */
static	ANTLR3_BITWORD FOLLOW_RECOVER_SYMBOL_in_xa_statement6762_bits[]	= { ANTLR3_UINT64_LIT(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_RECOVER_SYMBOL_in_xa_statement6762	= { FOLLOW_RECOVER_SYMBOL_in_xa_statement6762_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_xa_convert_in_xa_statement6764  */
static	ANTLR3_BITWORD FOLLOW_xa_convert_in_xa_statement6764_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_xa_convert_in_xa_statement6764	= { FOLLOW_xa_convert_in_xa_statement6764_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CONVERT_SYMBOL_in_xa_convert6780  */
static	ANTLR3_BITWORD FOLLOW_CONVERT_SYMBOL_in_xa_convert6780_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_convert6780	= { FOLLOW_CONVERT_SYMBOL_in_xa_convert6780_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_XID_SYMBOL_in_xa_convert6782  */
static	ANTLR3_BITWORD FOLLOW_XID_SYMBOL_in_xa_convert6782_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_XID_SYMBOL_in_xa_convert6782	= { FOLLOW_XID_SYMBOL_in_xa_convert6782_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_xid6798  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_xid6798_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_xid6798	= { FOLLOW_text_string_in_xid6798_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_xid6801  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_xid6801_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_xid6801	= { FOLLOW_COMMA_SYMBOL_in_xid6801_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_xid6803  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_xid6803_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_xid6803	= { FOLLOW_text_string_in_xid6803_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_xid6806  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_xid6806_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010810000800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_xid6806	= { FOLLOW_COMMA_SYMBOL_in_xid6806_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_xid6808  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_xid6808_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_xid6808	= { FOLLOW_ulong_number_in_xid6808_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PURGE_SYMBOL_in_replication_statement6847  */
static	ANTLR3_BITWORD FOLLOW_PURGE_SYMBOL_in_replication_statement6847_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(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_PURGE_SYMBOL_in_replication_statement6847	= { FOLLOW_PURGE_SYMBOL_in_replication_statement6847_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_replication_statement6850  */
static	ANTLR3_BITWORD FOLLOW_set_in_replication_statement6850_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0080000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_replication_statement6850	= { FOLLOW_set_in_replication_statement6850_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOGS_SYMBOL_in_replication_statement6858  */
static	ANTLR3_BITWORD FOLLOW_LOGS_SYMBOL_in_replication_statement6858_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_LOGS_SYMBOL_in_replication_statement6858	= { FOLLOW_LOGS_SYMBOL_in_replication_statement6858_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TO_SYMBOL_in_replication_statement6861  */
static	ANTLR3_BITWORD FOLLOW_TO_SYMBOL_in_replication_statement6861_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_TO_SYMBOL_in_replication_statement6861	= { FOLLOW_TO_SYMBOL_in_replication_statement6861_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_replication_statement6863  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_replication_statement6863_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_replication_statement6863	= { FOLLOW_string_literal_in_replication_statement6863_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BEFORE_SYMBOL_in_replication_statement6867  */
static	ANTLR3_BITWORD FOLLOW_BEFORE_SYMBOL_in_replication_statement6867_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_BEFORE_SYMBOL_in_replication_statement6867	= { FOLLOW_BEFORE_SYMBOL_in_replication_statement6867_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_replication_statement6869  */
static	ANTLR3_BITWORD FOLLOW_expression_in_replication_statement6869_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_replication_statement6869	= { FOLLOW_expression_in_replication_statement6869_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_change_master_in_replication_statement6875  */
static	ANTLR3_BITWORD FOLLOW_change_master_in_replication_statement6875_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_change_master_in_replication_statement6875	= { FOLLOW_change_master_in_replication_statement6875_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_change_replication_in_replication_statement6882  */
static	ANTLR3_BITWORD FOLLOW_change_replication_in_replication_statement6882_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_change_replication_in_replication_statement6882	= { FOLLOW_change_replication_in_replication_statement6882_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_slave_in_replication_statement6890  */
static	ANTLR3_BITWORD FOLLOW_slave_in_replication_statement6890_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_slave_in_replication_statement6890	= { FOLLOW_slave_in_replication_statement6890_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_replication_load_in_replication_statement6897  */
static	ANTLR3_BITWORD FOLLOW_replication_load_in_replication_statement6897_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_replication_load_in_replication_statement6897	= { FOLLOW_replication_load_in_replication_statement6897_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_group_replication_in_replication_statement6904  */
static	ANTLR3_BITWORD FOLLOW_group_replication_in_replication_statement6904_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_group_replication_in_replication_statement6904	= { FOLLOW_group_replication_in_replication_statement6904_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOAD_SYMBOL_in_replication_load6913  */
static	ANTLR3_BITWORD FOLLOW_LOAD_SYMBOL_in_replication_load6913_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(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_LOAD_SYMBOL_in_replication_load6913	= { FOLLOW_LOAD_SYMBOL_in_replication_load6913_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATA_SYMBOL_in_replication_load6917  */
static	ANTLR3_BITWORD FOLLOW_DATA_SYMBOL_in_replication_load6917_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_DATA_SYMBOL_in_replication_load6917	= { FOLLOW_DATA_SYMBOL_in_replication_load6917_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLE_SYMBOL_in_replication_load6921  */
static	ANTLR3_BITWORD FOLLOW_TABLE_SYMBOL_in_replication_load6921_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLE_SYMBOL_in_replication_load6921	= { FOLLOW_TABLE_SYMBOL_in_replication_load6921_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_replication_load6923  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_replication_load6923_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_table_ref_in_replication_load6923	= { FOLLOW_table_ref_in_replication_load6923_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_replication_load6926  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_replication_load6926_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_replication_load6926	= { FOLLOW_FROM_SYMBOL_in_replication_load6926_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_SYMBOL_in_replication_load6928  */
static	ANTLR3_BITWORD FOLLOW_MASTER_SYMBOL_in_replication_load6928_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_MASTER_SYMBOL_in_replication_load6928	= { FOLLOW_MASTER_SYMBOL_in_replication_load6928_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHANGE_SYMBOL_in_change_master6937  */
static	ANTLR3_BITWORD FOLLOW_CHANGE_SYMBOL_in_change_master6937_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CHANGE_SYMBOL_in_change_master6937	= { FOLLOW_CHANGE_SYMBOL_in_change_master6937_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_SYMBOL_in_change_master6940  */
static	ANTLR3_BITWORD FOLLOW_MASTER_SYMBOL_in_change_master6940_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MASTER_SYMBOL_in_change_master6940	= { FOLLOW_MASTER_SYMBOL_in_change_master6940_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TO_SYMBOL_in_change_master6942  */
static	ANTLR3_BITWORD FOLLOW_TO_SYMBOL_in_change_master6942_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(0x0000000000001800) };
static  ANTLR3_BITSET_LIST FOLLOW_TO_SYMBOL_in_change_master6942	= { FOLLOW_TO_SYMBOL_in_change_master6942_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_change_master_options_in_change_master6944  */
static	ANTLR3_BITWORD FOLLOW_change_master_options_in_change_master6944_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_change_master_options_in_change_master6944	= { FOLLOW_change_master_options_in_change_master6944_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_channel_in_change_master6946  */
static	ANTLR3_BITWORD FOLLOW_channel_in_change_master6946_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_channel_in_change_master6946	= { FOLLOW_channel_in_change_master6946_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_master_option_in_change_master_options6956  */
static	ANTLR3_BITWORD FOLLOW_master_option_in_change_master_options6956_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_master_option_in_change_master_options6956	= { FOLLOW_master_option_in_change_master_options6956_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_change_master_options6959  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_change_master_options6959_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(0x0000000000001800) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_change_master_options6959	= { FOLLOW_COMMA_SYMBOL_in_change_master_options6959_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_master_option_in_change_master_options6961  */
static	ANTLR3_BITWORD FOLLOW_master_option_in_change_master_options6961_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_master_option_in_change_master_options6961	= { FOLLOW_master_option_in_change_master_options6961_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_HOST_SYMBOL_in_master_option6987  */
static	ANTLR3_BITWORD FOLLOW_MASTER_HOST_SYMBOL_in_master_option6987_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MASTER_HOST_SYMBOL_in_master_option6987	= { FOLLOW_MASTER_HOST_SYMBOL_in_master_option6987_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option6989  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option6989_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option6989	= { FOLLOW_EQUAL_OPERATOR_in_master_option6989_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_no_linebreak_in_master_option6991  */
static	ANTLR3_BITWORD FOLLOW_text_string_no_linebreak_in_master_option6991_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_no_linebreak_in_master_option6991	= { FOLLOW_text_string_no_linebreak_in_master_option6991_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_BIND_SYMBOL_in_master_option6996  */
static	ANTLR3_BITWORD FOLLOW_MASTER_BIND_SYMBOL_in_master_option6996_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MASTER_BIND_SYMBOL_in_master_option6996	= { FOLLOW_MASTER_BIND_SYMBOL_in_master_option6996_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option6998  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option6998_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option6998	= { FOLLOW_EQUAL_OPERATOR_in_master_option6998_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_no_linebreak_in_master_option7000  */
static	ANTLR3_BITWORD FOLLOW_text_string_no_linebreak_in_master_option7000_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_no_linebreak_in_master_option7000	= { FOLLOW_text_string_no_linebreak_in_master_option7000_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_USER_SYMBOL_in_master_option7005  */
static	ANTLR3_BITWORD FOLLOW_MASTER_USER_SYMBOL_in_master_option7005_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MASTER_USER_SYMBOL_in_master_option7005	= { FOLLOW_MASTER_USER_SYMBOL_in_master_option7005_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option7007  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option7007_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option7007	= { FOLLOW_EQUAL_OPERATOR_in_master_option7007_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_no_linebreak_in_master_option7009  */
static	ANTLR3_BITWORD FOLLOW_text_string_no_linebreak_in_master_option7009_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_no_linebreak_in_master_option7009	= { FOLLOW_text_string_no_linebreak_in_master_option7009_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_PASSWORD_SYMBOL_in_master_option7014  */
static	ANTLR3_BITWORD FOLLOW_MASTER_PASSWORD_SYMBOL_in_master_option7014_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MASTER_PASSWORD_SYMBOL_in_master_option7014	= { FOLLOW_MASTER_PASSWORD_SYMBOL_in_master_option7014_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option7016  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option7016_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option7016	= { FOLLOW_EQUAL_OPERATOR_in_master_option7016_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_no_linebreak_in_master_option7018  */
static	ANTLR3_BITWORD FOLLOW_text_string_no_linebreak_in_master_option7018_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_no_linebreak_in_master_option7018	= { FOLLOW_text_string_no_linebreak_in_master_option7018_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_PORT_SYMBOL_in_master_option7023  */
static	ANTLR3_BITWORD FOLLOW_MASTER_PORT_SYMBOL_in_master_option7023_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MASTER_PORT_SYMBOL_in_master_option7023	= { FOLLOW_MASTER_PORT_SYMBOL_in_master_option7023_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option7025  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option7025_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010810000800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option7025	= { FOLLOW_EQUAL_OPERATOR_in_master_option7025_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_master_option7027  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_master_option7027_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_master_option7027	= { FOLLOW_ulong_number_in_master_option7027_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_CONNECT_RETRY_SYMBOL_in_master_option7032  */
static	ANTLR3_BITWORD FOLLOW_MASTER_CONNECT_RETRY_SYMBOL_in_master_option7032_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MASTER_CONNECT_RETRY_SYMBOL_in_master_option7032	= { FOLLOW_MASTER_CONNECT_RETRY_SYMBOL_in_master_option7032_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option7034  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option7034_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010810000800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option7034	= { FOLLOW_EQUAL_OPERATOR_in_master_option7034_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_master_option7036  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_master_option7036_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_master_option7036	= { FOLLOW_ulong_number_in_master_option7036_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_RETRY_COUNT_SYMBOL_in_master_option7041  */
static	ANTLR3_BITWORD FOLLOW_MASTER_RETRY_COUNT_SYMBOL_in_master_option7041_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MASTER_RETRY_COUNT_SYMBOL_in_master_option7041	= { FOLLOW_MASTER_RETRY_COUNT_SYMBOL_in_master_option7041_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option7043  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option7043_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010810000800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option7043	= { FOLLOW_EQUAL_OPERATOR_in_master_option7043_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_master_option7045  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_master_option7045_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_master_option7045	= { FOLLOW_ulong_number_in_master_option7045_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_DELAY_SYMBOL_in_master_option7050  */
static	ANTLR3_BITWORD FOLLOW_MASTER_DELAY_SYMBOL_in_master_option7050_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MASTER_DELAY_SYMBOL_in_master_option7050	= { FOLLOW_MASTER_DELAY_SYMBOL_in_master_option7050_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option7052  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option7052_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010810000800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option7052	= { FOLLOW_EQUAL_OPERATOR_in_master_option7052_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_master_option7054  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_master_option7054_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_master_option7054	= { FOLLOW_ulong_number_in_master_option7054_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_SSL_SYMBOL_in_master_option7059  */
static	ANTLR3_BITWORD FOLLOW_MASTER_SSL_SYMBOL_in_master_option7059_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MASTER_SSL_SYMBOL_in_master_option7059	= { FOLLOW_MASTER_SSL_SYMBOL_in_master_option7059_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option7061  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option7061_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010810000800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option7061	= { FOLLOW_EQUAL_OPERATOR_in_master_option7061_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_master_option7063  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_master_option7063_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_master_option7063	= { FOLLOW_ulong_number_in_master_option7063_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_SSL_CA_SYMBOL_in_master_option7068  */
static	ANTLR3_BITWORD FOLLOW_MASTER_SSL_CA_SYMBOL_in_master_option7068_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MASTER_SSL_CA_SYMBOL_in_master_option7068	= { FOLLOW_MASTER_SSL_CA_SYMBOL_in_master_option7068_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option7070  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option7070_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option7070	= { FOLLOW_EQUAL_OPERATOR_in_master_option7070_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_no_linebreak_in_master_option7072  */
static	ANTLR3_BITWORD FOLLOW_text_string_no_linebreak_in_master_option7072_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_no_linebreak_in_master_option7072	= { FOLLOW_text_string_no_linebreak_in_master_option7072_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_SSL_CAPATH_SYMBOL_in_master_option7077  */
static	ANTLR3_BITWORD FOLLOW_MASTER_SSL_CAPATH_SYMBOL_in_master_option7077_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MASTER_SSL_CAPATH_SYMBOL_in_master_option7077	= { FOLLOW_MASTER_SSL_CAPATH_SYMBOL_in_master_option7077_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option7079  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option7079_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option7079	= { FOLLOW_EQUAL_OPERATOR_in_master_option7079_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_no_linebreak_in_master_option7081  */
static	ANTLR3_BITWORD FOLLOW_text_string_no_linebreak_in_master_option7081_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_no_linebreak_in_master_option7081	= { FOLLOW_text_string_no_linebreak_in_master_option7081_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_SSL_CERT_SYMBOL_in_master_option7086  */
static	ANTLR3_BITWORD FOLLOW_MASTER_SSL_CERT_SYMBOL_in_master_option7086_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MASTER_SSL_CERT_SYMBOL_in_master_option7086	= { FOLLOW_MASTER_SSL_CERT_SYMBOL_in_master_option7086_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option7088  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option7088_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option7088	= { FOLLOW_EQUAL_OPERATOR_in_master_option7088_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_no_linebreak_in_master_option7090  */
static	ANTLR3_BITWORD FOLLOW_text_string_no_linebreak_in_master_option7090_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_no_linebreak_in_master_option7090	= { FOLLOW_text_string_no_linebreak_in_master_option7090_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_SSL_CIPHER_SYMBOL_in_master_option7095  */
static	ANTLR3_BITWORD FOLLOW_MASTER_SSL_CIPHER_SYMBOL_in_master_option7095_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MASTER_SSL_CIPHER_SYMBOL_in_master_option7095	= { FOLLOW_MASTER_SSL_CIPHER_SYMBOL_in_master_option7095_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option7097  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option7097_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option7097	= { FOLLOW_EQUAL_OPERATOR_in_master_option7097_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_no_linebreak_in_master_option7099  */
static	ANTLR3_BITWORD FOLLOW_text_string_no_linebreak_in_master_option7099_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_no_linebreak_in_master_option7099	= { FOLLOW_text_string_no_linebreak_in_master_option7099_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_SSL_KEY_SYMBOL_in_master_option7104  */
static	ANTLR3_BITWORD FOLLOW_MASTER_SSL_KEY_SYMBOL_in_master_option7104_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MASTER_SSL_KEY_SYMBOL_in_master_option7104	= { FOLLOW_MASTER_SSL_KEY_SYMBOL_in_master_option7104_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option7106  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option7106_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option7106	= { FOLLOW_EQUAL_OPERATOR_in_master_option7106_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_no_linebreak_in_master_option7108  */
static	ANTLR3_BITWORD FOLLOW_text_string_no_linebreak_in_master_option7108_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_no_linebreak_in_master_option7108	= { FOLLOW_text_string_no_linebreak_in_master_option7108_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL_in_master_option7113  */
static	ANTLR3_BITWORD FOLLOW_MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL_in_master_option7113_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL_in_master_option7113	= { FOLLOW_MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL_in_master_option7113_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option7115  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option7115_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010810000800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option7115	= { FOLLOW_EQUAL_OPERATOR_in_master_option7115_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_master_option7117  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_master_option7117_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_master_option7117	= { FOLLOW_ulong_number_in_master_option7117_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_SSL_CRL_SYMBOL_in_master_option7122  */
static	ANTLR3_BITWORD FOLLOW_MASTER_SSL_CRL_SYMBOL_in_master_option7122_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MASTER_SSL_CRL_SYMBOL_in_master_option7122	= { FOLLOW_MASTER_SSL_CRL_SYMBOL_in_master_option7122_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option7124  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option7124_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option7124	= { FOLLOW_EQUAL_OPERATOR_in_master_option7124_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_master_option7126  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_master_option7126_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_master_option7126	= { FOLLOW_string_literal_in_master_option7126_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_SSL_CRLPATH_SYMBOL_in_master_option7131  */
static	ANTLR3_BITWORD FOLLOW_MASTER_SSL_CRLPATH_SYMBOL_in_master_option7131_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MASTER_SSL_CRLPATH_SYMBOL_in_master_option7131	= { FOLLOW_MASTER_SSL_CRLPATH_SYMBOL_in_master_option7131_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option7133  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option7133_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option7133	= { FOLLOW_EQUAL_OPERATOR_in_master_option7133_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_no_linebreak_in_master_option7135  */
static	ANTLR3_BITWORD FOLLOW_text_string_no_linebreak_in_master_option7135_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_no_linebreak_in_master_option7135	= { FOLLOW_text_string_no_linebreak_in_master_option7135_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_HEARTBEAT_PERIOD_SYMBOL_in_master_option7140  */
static	ANTLR3_BITWORD FOLLOW_MASTER_HEARTBEAT_PERIOD_SYMBOL_in_master_option7140_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MASTER_HEARTBEAT_PERIOD_SYMBOL_in_master_option7140	= { FOLLOW_MASTER_HEARTBEAT_PERIOD_SYMBOL_in_master_option7140_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option7142  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option7142_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010810000800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option7142	= { FOLLOW_EQUAL_OPERATOR_in_master_option7142_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_master_option7144  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_master_option7144_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_master_option7144	= { FOLLOW_ulong_number_in_master_option7144_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IGNORE_SERVER_IDS_SYMBOL_in_master_option7149  */
static	ANTLR3_BITWORD FOLLOW_IGNORE_SERVER_IDS_SYMBOL_in_master_option7149_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_IGNORE_SERVER_IDS_SYMBOL_in_master_option7149	= { FOLLOW_IGNORE_SERVER_IDS_SYMBOL_in_master_option7149_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option7151  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option7151_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_EQUAL_OPERATOR_in_master_option7151	= { FOLLOW_EQUAL_OPERATOR_in_master_option7151_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_server_id_list_in_master_option7153  */
static	ANTLR3_BITWORD FOLLOW_server_id_list_in_master_option7153_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_server_id_list_in_master_option7153	= { FOLLOW_server_id_list_in_master_option7153_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_AUTO_POSITION_SYMBOL_in_master_option7158  */
static	ANTLR3_BITWORD FOLLOW_MASTER_AUTO_POSITION_SYMBOL_in_master_option7158_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MASTER_AUTO_POSITION_SYMBOL_in_master_option7158	= { FOLLOW_MASTER_AUTO_POSITION_SYMBOL_in_master_option7158_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option7160  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option7160_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010810000800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option7160	= { FOLLOW_EQUAL_OPERATOR_in_master_option7160_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_master_option7162  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_master_option7162_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_master_option7162	= { FOLLOW_ulong_number_in_master_option7162_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_master_file_def_in_master_option7167  */
static	ANTLR3_BITWORD FOLLOW_master_file_def_in_master_option7167_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_master_file_def_in_master_option7167	= { FOLLOW_master_file_def_in_master_option7167_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_LOG_FILE_SYMBOL_in_master_file_def7176  */
static	ANTLR3_BITWORD FOLLOW_MASTER_LOG_FILE_SYMBOL_in_master_file_def7176_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MASTER_LOG_FILE_SYMBOL_in_master_file_def7176	= { FOLLOW_MASTER_LOG_FILE_SYMBOL_in_master_file_def7176_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_file_def7178  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_file_def7178_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_file_def7178	= { FOLLOW_EQUAL_OPERATOR_in_master_file_def7178_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_no_linebreak_in_master_file_def7180  */
static	ANTLR3_BITWORD FOLLOW_text_string_no_linebreak_in_master_file_def7180_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_no_linebreak_in_master_file_def7180	= { FOLLOW_text_string_no_linebreak_in_master_file_def7180_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_LOG_POS_SYMBOL_in_master_file_def7185  */
static	ANTLR3_BITWORD FOLLOW_MASTER_LOG_POS_SYMBOL_in_master_file_def7185_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MASTER_LOG_POS_SYMBOL_in_master_file_def7185	= { FOLLOW_MASTER_LOG_POS_SYMBOL_in_master_file_def7185_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_file_def7187  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_file_def7187_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010010000800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_file_def7187	= { FOLLOW_EQUAL_OPERATOR_in_master_file_def7187_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulonglong_number_in_master_file_def7189  */
static	ANTLR3_BITWORD FOLLOW_ulonglong_number_in_master_file_def7189_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulonglong_number_in_master_file_def7189	= { FOLLOW_ulonglong_number_in_master_file_def7189_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RELAY_LOG_FILE_SYMBOL_in_master_file_def7194  */
static	ANTLR3_BITWORD FOLLOW_RELAY_LOG_FILE_SYMBOL_in_master_file_def7194_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_RELAY_LOG_FILE_SYMBOL_in_master_file_def7194	= { FOLLOW_RELAY_LOG_FILE_SYMBOL_in_master_file_def7194_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_file_def7196  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_file_def7196_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_file_def7196	= { FOLLOW_EQUAL_OPERATOR_in_master_file_def7196_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_no_linebreak_in_master_file_def7198  */
static	ANTLR3_BITWORD FOLLOW_text_string_no_linebreak_in_master_file_def7198_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_no_linebreak_in_master_file_def7198	= { FOLLOW_text_string_no_linebreak_in_master_file_def7198_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RELAY_LOG_POS_SYMBOL_in_master_file_def7203  */
static	ANTLR3_BITWORD FOLLOW_RELAY_LOG_POS_SYMBOL_in_master_file_def7203_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_RELAY_LOG_POS_SYMBOL_in_master_file_def7203	= { FOLLOW_RELAY_LOG_POS_SYMBOL_in_master_file_def7203_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_file_def7205  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_file_def7205_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010810000800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_file_def7205	= { FOLLOW_EQUAL_OPERATOR_in_master_file_def7205_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_master_file_def7207  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_master_file_def7207_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_master_file_def7207	= { FOLLOW_ulong_number_in_master_file_def7207_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_server_id_list7216  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_server_id_list7216_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0400010810000800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_server_id_list7216	= { FOLLOW_OPEN_PAR_SYMBOL_in_server_id_list7216_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_server_id_list7219  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_server_id_list7219_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_server_id_list7219	= { FOLLOW_ulong_number_in_server_id_list7219_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_server_id_list7222  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_server_id_list7222_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010810000800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_server_id_list7222	= { FOLLOW_COMMA_SYMBOL_in_server_id_list7222_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_server_id_list7224  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_server_id_list7224_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_server_id_list7224	= { FOLLOW_ulong_number_in_server_id_list7224_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_server_id_list7230  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_server_id_list7230_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_server_id_list7230	= { FOLLOW_CLOSE_PAR_SYMBOL_in_server_id_list7230_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHANGE_SYMBOL_in_change_replication7239  */
static	ANTLR3_BITWORD FOLLOW_CHANGE_SYMBOL_in_change_replication7239_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_replication7239	= { FOLLOW_CHANGE_SYMBOL_in_change_replication7239_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REPLICATION_SYMBOL_in_change_replication7242  */
static	ANTLR3_BITWORD FOLLOW_REPLICATION_SYMBOL_in_change_replication7242_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_REPLICATION_SYMBOL_in_change_replication7242	= { FOLLOW_REPLICATION_SYMBOL_in_change_replication7242_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FILTER_SYMBOL_in_change_replication7244  */
static	ANTLR3_BITWORD FOLLOW_FILTER_SYMBOL_in_change_replication7244_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_replication7244	= { FOLLOW_FILTER_SYMBOL_in_change_replication7244_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_filter_definition_in_change_replication7246  */
static	ANTLR3_BITWORD FOLLOW_filter_definition_in_change_replication7246_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_filter_definition_in_change_replication7246	= { FOLLOW_filter_definition_in_change_replication7246_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_change_replication7249  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_change_replication7249_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_replication7249	= { FOLLOW_COMMA_SYMBOL_in_change_replication7249_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_filter_definition_in_change_replication7251  */
static	ANTLR3_BITWORD FOLLOW_filter_definition_in_change_replication7251_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_filter_definition_in_change_replication7251	= { FOLLOW_filter_definition_in_change_replication7251_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REPLICATE_DO_DB_SYMBOL_in_filter_definition7262  */
static	ANTLR3_BITWORD FOLLOW_REPLICATE_DO_DB_SYMBOL_in_filter_definition7262_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_REPLICATE_DO_DB_SYMBOL_in_filter_definition7262	= { FOLLOW_REPLICATE_DO_DB_SYMBOL_in_filter_definition7262_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_filter_definition7264  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_filter_definition7264	= { FOLLOW_EQUAL_OPERATOR_in_filter_definition7264_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7266  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7266_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7266	= { FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7266_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_filter_db_list_in_filter_definition7268  */
static	ANTLR3_BITWORD FOLLOW_filter_db_list_in_filter_definition7268_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_filter_db_list_in_filter_definition7268	= { FOLLOW_filter_db_list_in_filter_definition7268_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7271  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7271_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7271	= { FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7271_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REPLICATE_IGNORE_DB_SYMBOL_in_filter_definition7276  */
static	ANTLR3_BITWORD FOLLOW_REPLICATE_IGNORE_DB_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(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_REPLICATE_IGNORE_DB_SYMBOL_in_filter_definition7276	= { FOLLOW_REPLICATE_IGNORE_DB_SYMBOL_in_filter_definition7276_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_filter_definition7278  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_filter_definition7278	= { FOLLOW_EQUAL_OPERATOR_in_filter_definition7278_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7280  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7280_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7280	= { FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7280_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_filter_db_list_in_filter_definition7282  */
static	ANTLR3_BITWORD FOLLOW_filter_db_list_in_filter_definition7282_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_filter_db_list_in_filter_definition7282	= { FOLLOW_filter_db_list_in_filter_definition7282_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7285  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7285_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7285	= { FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7285_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REPLICATE_DO_TABLE_SYMBOL_in_filter_definition7290  */
static	ANTLR3_BITWORD FOLLOW_REPLICATE_DO_TABLE_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(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_REPLICATE_DO_TABLE_SYMBOL_in_filter_definition7290	= { FOLLOW_REPLICATE_DO_TABLE_SYMBOL_in_filter_definition7290_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_filter_definition7292  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_filter_definition7292	= { FOLLOW_EQUAL_OPERATOR_in_filter_definition7292_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7294  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7294_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7294	= { FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7294_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_filter_table_list_in_filter_definition7296  */
static	ANTLR3_BITWORD FOLLOW_filter_table_list_in_filter_definition7296_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_filter_table_list_in_filter_definition7296	= { FOLLOW_filter_table_list_in_filter_definition7296_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7299  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7299_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7299	= { FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7299_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REPLICATE_IGNORE_TABLE_SYMBOL_in_filter_definition7304  */
static	ANTLR3_BITWORD FOLLOW_REPLICATE_IGNORE_TABLE_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(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_REPLICATE_IGNORE_TABLE_SYMBOL_in_filter_definition7304	= { FOLLOW_REPLICATE_IGNORE_TABLE_SYMBOL_in_filter_definition7304_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_filter_definition7306  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_filter_definition7306	= { FOLLOW_EQUAL_OPERATOR_in_filter_definition7306_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7308  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7308_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7308	= { FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7308_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_filter_table_list_in_filter_definition7310  */
static	ANTLR3_BITWORD FOLLOW_filter_table_list_in_filter_definition7310_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_filter_table_list_in_filter_definition7310	= { FOLLOW_filter_table_list_in_filter_definition7310_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7313  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7313_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7313	= { FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7313_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REPLICATE_WILD_DO_TABLE_SYMBOL_in_filter_definition7318  */
static	ANTLR3_BITWORD FOLLOW_REPLICATE_WILD_DO_TABLE_SYMBOL_in_filter_definition7318_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_REPLICATE_WILD_DO_TABLE_SYMBOL_in_filter_definition7318	= { FOLLOW_REPLICATE_WILD_DO_TABLE_SYMBOL_in_filter_definition7318_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_filter_definition7320  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_filter_definition7320_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_EQUAL_OPERATOR_in_filter_definition7320	= { FOLLOW_EQUAL_OPERATOR_in_filter_definition7320_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7322  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7322_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x8020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7322	= { FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7322_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_filter_string_list_in_filter_definition7324  */
static	ANTLR3_BITWORD FOLLOW_filter_string_list_in_filter_definition7324_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_filter_string_list_in_filter_definition7324	= { FOLLOW_filter_string_list_in_filter_definition7324_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7327  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7327_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7327	= { FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7327_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REPLICATE_WILD_IGNORE_TABLE_SYMBOL_in_filter_definition7332  */
static	ANTLR3_BITWORD FOLLOW_REPLICATE_WILD_IGNORE_TABLE_SYMBOL_in_filter_definition7332_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_REPLICATE_WILD_IGNORE_TABLE_SYMBOL_in_filter_definition7332	= { FOLLOW_REPLICATE_WILD_IGNORE_TABLE_SYMBOL_in_filter_definition7332_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_filter_definition7334  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_filter_definition7334_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_EQUAL_OPERATOR_in_filter_definition7334	= { FOLLOW_EQUAL_OPERATOR_in_filter_definition7334_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7336  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7336_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x8020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7336	= { FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7336_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_filter_string_list_in_filter_definition7338  */
static	ANTLR3_BITWORD FOLLOW_filter_string_list_in_filter_definition7338_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_filter_string_list_in_filter_definition7338	= { FOLLOW_filter_string_list_in_filter_definition7338_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7341  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7341_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7341	= { FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7341_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REPLICATE_REWRITE_DB_SYMBOL_in_filter_definition7346  */
static	ANTLR3_BITWORD FOLLOW_REPLICATE_REWRITE_DB_SYMBOL_in_filter_definition7346_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_REPLICATE_REWRITE_DB_SYMBOL_in_filter_definition7346	= { FOLLOW_REPLICATE_REWRITE_DB_SYMBOL_in_filter_definition7346_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_filter_definition7348  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_filter_definition7348_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_EQUAL_OPERATOR_in_filter_definition7348	= { FOLLOW_EQUAL_OPERATOR_in_filter_definition7348_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7350  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7350_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7350	= { FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7350_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_filter_db_pair_list_in_filter_definition7352  */
static	ANTLR3_BITWORD FOLLOW_filter_db_pair_list_in_filter_definition7352_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_filter_db_pair_list_in_filter_definition7352	= { FOLLOW_filter_db_pair_list_in_filter_definition7352_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7355  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7355_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7355	= { FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7355_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_schema_ref_in_filter_db_list7364  */
static	ANTLR3_BITWORD FOLLOW_schema_ref_in_filter_db_list7364_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_schema_ref_in_filter_db_list7364	= { FOLLOW_schema_ref_in_filter_db_list7364_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_filter_db_list7367  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_filter_db_list7367_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_filter_db_list7367	= { FOLLOW_COMMA_SYMBOL_in_filter_db_list7367_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_schema_ref_in_filter_db_list7369  */
static	ANTLR3_BITWORD FOLLOW_schema_ref_in_filter_db_list7369_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_schema_ref_in_filter_db_list7369	= { FOLLOW_schema_ref_in_filter_db_list7369_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_filter_table_ref_in_filter_table_list7380  */
static	ANTLR3_BITWORD FOLLOW_filter_table_ref_in_filter_table_list7380_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_filter_table_ref_in_filter_table_list7380	= { FOLLOW_filter_table_ref_in_filter_table_list7380_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_filter_table_list7383  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_filter_table_list7383_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_filter_table_list7383	= { FOLLOW_COMMA_SYMBOL_in_filter_table_list7383_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_filter_table_ref_in_filter_table_list7385  */
static	ANTLR3_BITWORD FOLLOW_filter_table_ref_in_filter_table_list7385_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_filter_table_ref_in_filter_table_list7385	= { FOLLOW_filter_table_ref_in_filter_table_list7385_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_filter_wild_db_table_string_in_filter_string_list7396  */
static	ANTLR3_BITWORD FOLLOW_filter_wild_db_table_string_in_filter_string_list7396_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_filter_wild_db_table_string_in_filter_string_list7396	= { FOLLOW_filter_wild_db_table_string_in_filter_string_list7396_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_filter_string_list7399  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_filter_string_list7399_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_filter_string_list7399	= { FOLLOW_COMMA_SYMBOL_in_filter_string_list7399_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_filter_wild_db_table_string_in_filter_string_list7401  */
static	ANTLR3_BITWORD FOLLOW_filter_wild_db_table_string_in_filter_string_list7401_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_filter_wild_db_table_string_in_filter_string_list7401	= { FOLLOW_filter_wild_db_table_string_in_filter_string_list7401_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_no_linebreak_in_filter_wild_db_table_string7412  */
static	ANTLR3_BITWORD FOLLOW_text_string_no_linebreak_in_filter_wild_db_table_string7412_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_no_linebreak_in_filter_wild_db_table_string7412	= { FOLLOW_text_string_no_linebreak_in_filter_wild_db_table_string7412_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_schema_identifier_pair_in_filter_db_pair_list7422  */
static	ANTLR3_BITWORD FOLLOW_schema_identifier_pair_in_filter_db_pair_list7422_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_schema_identifier_pair_in_filter_db_pair_list7422	= { FOLLOW_schema_identifier_pair_in_filter_db_pair_list7422_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_filter_db_pair_list7425  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_filter_db_pair_list7425_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_COMMA_SYMBOL_in_filter_db_pair_list7425	= { FOLLOW_COMMA_SYMBOL_in_filter_db_pair_list7425_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_schema_identifier_pair_in_filter_db_pair_list7427  */
static	ANTLR3_BITWORD FOLLOW_schema_identifier_pair_in_filter_db_pair_list7427_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_schema_identifier_pair_in_filter_db_pair_list7427	= { FOLLOW_schema_identifier_pair_in_filter_db_pair_list7427_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_START_SYMBOL_in_slave7438  */
static	ANTLR3_BITWORD FOLLOW_START_SYMBOL_in_slave7438_bits[]	= { ANTLR3_UINT64_LIT(0x0001000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_START_SYMBOL_in_slave7438	= { FOLLOW_START_SYMBOL_in_slave7438_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SLAVE_SYMBOL_in_slave7441  */
static	ANTLR3_BITWORD FOLLOW_SLAVE_SYMBOL_in_slave7441_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(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_SLAVE_SYMBOL_in_slave7441	= { FOLLOW_SLAVE_SYMBOL_in_slave7441_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_slave_thread_options_in_slave7443  */
static	ANTLR3_BITWORD FOLLOW_slave_thread_options_in_slave7443_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(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_slave_thread_options_in_slave7443	= { FOLLOW_slave_thread_options_in_slave7443_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNTIL_SYMBOL_in_slave7447  */
static	ANTLR3_BITWORD FOLLOW_UNTIL_SYMBOL_in_slave7447_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_slave7447	= { FOLLOW_UNTIL_SYMBOL_in_slave7447_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_slave_until_options_in_slave7449  */
static	ANTLR3_BITWORD FOLLOW_slave_until_options_in_slave7449_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(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_slave_until_options_in_slave7449	= { FOLLOW_slave_until_options_in_slave7449_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_slave_connection_options_in_slave7453  */
static	ANTLR3_BITWORD FOLLOW_slave_connection_options_in_slave7453_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_slave_connection_options_in_slave7453	= { FOLLOW_slave_connection_options_in_slave7453_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_channel_in_slave7455  */
static	ANTLR3_BITWORD FOLLOW_channel_in_slave7455_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_channel_in_slave7455	= { FOLLOW_channel_in_slave7455_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STOP_SYMBOL_in_slave7461  */
static	ANTLR3_BITWORD FOLLOW_STOP_SYMBOL_in_slave7461_bits[]	= { ANTLR3_UINT64_LIT(0x0001000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_STOP_SYMBOL_in_slave7461	= { FOLLOW_STOP_SYMBOL_in_slave7461_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SLAVE_SYMBOL_in_slave7464  */
static	ANTLR3_BITWORD FOLLOW_SLAVE_SYMBOL_in_slave7464_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(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_SLAVE_SYMBOL_in_slave7464	= { FOLLOW_SLAVE_SYMBOL_in_slave7464_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_slave_thread_options_in_slave7466  */
static	ANTLR3_BITWORD FOLLOW_slave_thread_options_in_slave7466_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_slave_thread_options_in_slave7466	= { FOLLOW_slave_thread_options_in_slave7466_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_channel_in_slave7469  */
static	ANTLR3_BITWORD FOLLOW_channel_in_slave7469_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_channel_in_slave7469	= { FOLLOW_channel_in_slave7469_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_master_file_def_in_slave_until_options7483  */
static	ANTLR3_BITWORD FOLLOW_master_file_def_in_slave_until_options7483_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_master_file_def_in_slave_until_options7483	= { FOLLOW_master_file_def_in_slave_until_options7483_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_slave_until_options7491  */
static	ANTLR3_BITWORD FOLLOW_set_in_slave_until_options7491_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_set_in_slave_until_options7491	= { FOLLOW_set_in_slave_until_options7491_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_slave_until_options7499  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_slave_until_options7499_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_slave_until_options7499	= { FOLLOW_EQUAL_OPERATOR_in_slave_until_options7499_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_slave_until_options7501  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_slave_until_options7501_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_slave_until_options7501	= { FOLLOW_text_string_in_slave_until_options7501_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SQL_AFTER_MTS_GAPS_SYMBOL_in_slave_until_options7509  */
static	ANTLR3_BITWORD FOLLOW_SQL_AFTER_MTS_GAPS_SYMBOL_in_slave_until_options7509_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_SQL_AFTER_MTS_GAPS_SYMBOL_in_slave_until_options7509	= { FOLLOW_SQL_AFTER_MTS_GAPS_SYMBOL_in_slave_until_options7509_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_slave_until_options7516  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_slave_until_options7516_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_options7516	= { FOLLOW_COMMA_SYMBOL_in_slave_until_options7516_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_master_file_def_in_slave_until_options7518  */
static	ANTLR3_BITWORD FOLLOW_master_file_def_in_slave_until_options7518_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_master_file_def_in_slave_until_options7518	= { FOLLOW_master_file_def_in_slave_until_options7518_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USER_SYMBOL_in_slave_connection_options7532  */
static	ANTLR3_BITWORD FOLLOW_USER_SYMBOL_in_slave_connection_options7532_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_USER_SYMBOL_in_slave_connection_options7532	= { FOLLOW_USER_SYMBOL_in_slave_connection_options7532_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_slave_connection_options7534  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_slave_connection_options7534_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_slave_connection_options7534	= { FOLLOW_EQUAL_OPERATOR_in_slave_connection_options7534_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_slave_connection_options7536  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_slave_connection_options7536_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_options7536	= { FOLLOW_text_string_in_slave_connection_options7536_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PASSWORD_SYMBOL_in_slave_connection_options7541  */
static	ANTLR3_BITWORD FOLLOW_PASSWORD_SYMBOL_in_slave_connection_options7541_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_PASSWORD_SYMBOL_in_slave_connection_options7541	= { FOLLOW_PASSWORD_SYMBOL_in_slave_connection_options7541_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_slave_connection_options7543  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_slave_connection_options7543_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_slave_connection_options7543	= { FOLLOW_EQUAL_OPERATOR_in_slave_connection_options7543_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_slave_connection_options7545  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_slave_connection_options7545_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_options7545	= { FOLLOW_text_string_in_slave_connection_options7545_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_AUTH_SYMBOL_in_slave_connection_options7552  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_AUTH_SYMBOL_in_slave_connection_options7552_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_DEFAULT_AUTH_SYMBOL_in_slave_connection_options7552	= { FOLLOW_DEFAULT_AUTH_SYMBOL_in_slave_connection_options7552_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_slave_connection_options7554  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_slave_connection_options7554_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_slave_connection_options7554	= { FOLLOW_EQUAL_OPERATOR_in_slave_connection_options7554_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_slave_connection_options7556  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_slave_connection_options7556_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_options7556	= { FOLLOW_text_string_in_slave_connection_options7556_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PLUGIN_DIR_SYMBOL_in_slave_connection_options7561  */
static	ANTLR3_BITWORD FOLLOW_PLUGIN_DIR_SYMBOL_in_slave_connection_options7561_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_PLUGIN_DIR_SYMBOL_in_slave_connection_options7561	= { FOLLOW_PLUGIN_DIR_SYMBOL_in_slave_connection_options7561_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_slave_connection_options7563  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_slave_connection_options7563_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_slave_connection_options7563	= { FOLLOW_EQUAL_OPERATOR_in_slave_connection_options7563_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_slave_connection_options7565  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_slave_connection_options7565_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_slave_connection_options7565	= { FOLLOW_text_string_in_slave_connection_options7565_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_slave_thread_option_in_slave_thread_options7581  */
static	ANTLR3_BITWORD FOLLOW_slave_thread_option_in_slave_thread_options7581_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_slave_thread_option_in_slave_thread_options7581	= { FOLLOW_slave_thread_option_in_slave_thread_options7581_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_slave_thread_options7584  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_slave_thread_options7584_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_options7584	= { FOLLOW_COMMA_SYMBOL_in_slave_thread_options7584_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_slave_thread_option_in_slave_thread_options7586  */
static	ANTLR3_BITWORD FOLLOW_slave_thread_option_in_slave_thread_options7586_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_slave_thread_option_in_slave_thread_options7586	= { FOLLOW_slave_thread_option_in_slave_thread_options7586_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_group_replication7625  */
static	ANTLR3_BITWORD FOLLOW_set_in_group_replication7625_bits[]	= { ANTLR3_UINT64_LIT(0x0000000001000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_group_replication7625	= { FOLLOW_set_in_group_replication7625_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GROUP_REPLICATION_SYMBOL_in_group_replication7633  */
static	ANTLR3_BITWORD FOLLOW_GROUP_REPLICATION_SYMBOL_in_group_replication7633_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_GROUP_REPLICATION_SYMBOL_in_group_replication7633	= { FOLLOW_GROUP_REPLICATION_SYMBOL_in_group_replication7633_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PREPARE_SYMBOL_in_prepared_statement7644  */
static	ANTLR3_BITWORD FOLLOW_PREPARE_SYMBOL_in_prepared_statement7644_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_PREPARE_SYMBOL_in_prepared_statement7644	= { FOLLOW_PREPARE_SYMBOL_in_prepared_statement7644_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_prepared_statement7647  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_prepared_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_prepared_statement7647	= { FOLLOW_identifier_in_prepared_statement7647_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_prepared_statement7649  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_prepared_statement7649_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0006000000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_prepared_statement7649	= { FOLLOW_FROM_SYMBOL_in_prepared_statement7649_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_prepared_statement7652  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_prepared_statement7652_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_prepared_statement7652	= { FOLLOW_string_literal_in_prepared_statement7652_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_variable_in_prepared_statement7656  */
static	ANTLR3_BITWORD FOLLOW_user_variable_in_prepared_statement7656_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_user_variable_in_prepared_statement7656	= { FOLLOW_user_variable_in_prepared_statement7656_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_execute_statement_in_prepared_statement7662  */
static	ANTLR3_BITWORD FOLLOW_execute_statement_in_prepared_statement7662_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_execute_statement_in_prepared_statement7662	= { FOLLOW_execute_statement_in_prepared_statement7662_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_prepared_statement7667  */
static	ANTLR3_BITWORD FOLLOW_set_in_prepared_statement7667_bits[]	= { ANTLR3_UINT64_LIT(0x0000004000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_prepared_statement7667	= { FOLLOW_set_in_prepared_statement7667_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PREPARE_SYMBOL_in_prepared_statement7676  */
static	ANTLR3_BITWORD FOLLOW_PREPARE_SYMBOL_in_prepared_statement7676_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_PREPARE_SYMBOL_in_prepared_statement7676	= { FOLLOW_PREPARE_SYMBOL_in_prepared_statement7676_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_prepared_statement7678  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_prepared_statement7678_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_prepared_statement7678	= { FOLLOW_identifier_in_prepared_statement7678_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EXECUTE_SYMBOL_in_execute_statement7687  */
static	ANTLR3_BITWORD FOLLOW_EXECUTE_SYMBOL_in_execute_statement7687_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_EXECUTE_SYMBOL_in_execute_statement7687	= { FOLLOW_EXECUTE_SYMBOL_in_execute_statement7687_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_execute_statement7690  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_execute_statement7690_bits[]	= { ANTLR3_UINT64_LIT(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_identifier_in_execute_statement7690	= { FOLLOW_identifier_in_execute_statement7690_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USING_SYMBOL_in_execute_statement7693  */
static	ANTLR3_BITWORD FOLLOW_USING_SYMBOL_in_execute_statement7693_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0006000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_USING_SYMBOL_in_execute_statement7693	= { FOLLOW_USING_SYMBOL_in_execute_statement7693_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_execute_var_list_in_execute_statement7695  */
static	ANTLR3_BITWORD FOLLOW_execute_var_list_in_execute_statement7695_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_execute_var_list_in_execute_statement7695	= { FOLLOW_execute_var_list_in_execute_statement7695_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_variable_in_execute_var_list7706  */
static	ANTLR3_BITWORD FOLLOW_user_variable_in_execute_var_list7706_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_user_variable_in_execute_var_list7706	= { FOLLOW_user_variable_in_execute_var_list7706_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_execute_var_list7709  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_execute_var_list7709_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0006000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_execute_var_list7709	= { FOLLOW_COMMA_SYMBOL_in_execute_var_list7709_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_variable_in_execute_var_list7711  */
static	ANTLR3_BITWORD FOLLOW_user_variable_in_execute_var_list7711_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_user_variable_in_execute_var_list7711	= { FOLLOW_user_variable_in_execute_var_list7711_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_user_in_account_management_statement7726  */
static	ANTLR3_BITWORD FOLLOW_alter_user_in_account_management_statement7726_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_user_in_account_management_statement7726	= { FOLLOW_alter_user_in_account_management_statement7726_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_user_in_account_management_statement7731  */
static	ANTLR3_BITWORD FOLLOW_create_user_in_account_management_statement7731_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_create_user_in_account_management_statement7731	= { FOLLOW_create_user_in_account_management_statement7731_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_drop_user_in_account_management_statement7736  */
static	ANTLR3_BITWORD FOLLOW_drop_user_in_account_management_statement7736_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_drop_user_in_account_management_statement7736	= { FOLLOW_drop_user_in_account_management_statement7736_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_grant_proxy_in_account_management_statement7743  */
static	ANTLR3_BITWORD FOLLOW_grant_proxy_in_account_management_statement7743_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_grant_proxy_in_account_management_statement7743	= { FOLLOW_grant_proxy_in_account_management_statement7743_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_grant_in_account_management_statement7748  */
static	ANTLR3_BITWORD FOLLOW_grant_in_account_management_statement7748_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_grant_in_account_management_statement7748	= { FOLLOW_grant_in_account_management_statement7748_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_rename_user_in_account_management_statement7753  */
static	ANTLR3_BITWORD FOLLOW_rename_user_in_account_management_statement7753_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_rename_user_in_account_management_statement7753	= { FOLLOW_rename_user_in_account_management_statement7753_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_revoke_statement_in_account_management_statement7758  */
static	ANTLR3_BITWORD FOLLOW_revoke_statement_in_account_management_statement7758_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_revoke_statement_in_account_management_statement7758	= { FOLLOW_revoke_statement_in_account_management_statement7758_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_password_in_account_management_statement7763  */
static	ANTLR3_BITWORD FOLLOW_set_password_in_account_management_statement7763_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_password_in_account_management_statement7763	= { FOLLOW_set_password_in_account_management_statement7763_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALTER_SYMBOL_in_alter_user7772  */
static	ANTLR3_BITWORD FOLLOW_ALTER_SYMBOL_in_alter_user7772_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_user7772	= { FOLLOW_ALTER_SYMBOL_in_alter_user7772_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USER_SYMBOL_in_alter_user7775  */
static	ANTLR3_BITWORD FOLLOW_USER_SYMBOL_in_alter_user7775_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_USER_SYMBOL_in_alter_user7775	= { FOLLOW_USER_SYMBOL_in_alter_user7775_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_if_exists_in_alter_user7780  */
static	ANTLR3_BITWORD FOLLOW_if_exists_in_alter_user7780_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_if_exists_in_alter_user7780	= { FOLLOW_if_exists_in_alter_user7780_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_user_tail_in_alter_user7787  */
static	ANTLR3_BITWORD FOLLOW_alter_user_tail_in_alter_user7787_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_user_tail_in_alter_user7787	= { FOLLOW_alter_user_tail_in_alter_user7787_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_grant_list_in_alter_user_tail7796  */
static	ANTLR3_BITWORD FOLLOW_grant_list_in_alter_user_tail7796_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(0x0000000000000400), ANTLR3_UINT64_LIT(0x0000010000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_grant_list_in_alter_user_tail7796	= { FOLLOW_grant_list_in_alter_user_tail7796_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_user_tail_in_alter_user_tail7798  */
static	ANTLR3_BITWORD FOLLOW_create_user_tail_in_alter_user_tail7798_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_create_user_tail_in_alter_user_tail7798	= { FOLLOW_create_user_tail_in_alter_user_tail7798_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USER_SYMBOL_in_alter_user_tail7805  */
static	ANTLR3_BITWORD FOLLOW_USER_SYMBOL_in_alter_user_tail7805_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_USER_SYMBOL_in_alter_user_tail7805	= { FOLLOW_USER_SYMBOL_in_alter_user_tail7805_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_parentheses_in_alter_user_tail7807  */
static	ANTLR3_BITWORD FOLLOW_parentheses_in_alter_user_tail7807_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000100000000) };
static  ANTLR3_BITSET_LIST FOLLOW_parentheses_in_alter_user_tail7807	= { FOLLOW_parentheses_in_alter_user_tail7807_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IDENTIFIED_SYMBOL_in_alter_user_tail7809  */
static	ANTLR3_BITWORD FOLLOW_IDENTIFIED_SYMBOL_in_alter_user_tail7809_bits[]	= { ANTLR3_UINT64_LIT(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_IDENTIFIED_SYMBOL_in_alter_user_tail7809	= { FOLLOW_IDENTIFIED_SYMBOL_in_alter_user_tail7809_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BY_SYMBOL_in_alter_user_tail7811  */
static	ANTLR3_BITWORD FOLLOW_BY_SYMBOL_in_alter_user_tail7811_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_BY_SYMBOL_in_alter_user_tail7811	= { FOLLOW_BY_SYMBOL_in_alter_user_tail7811_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_alter_user_tail7813  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_alter_user_tail7813_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_alter_user_tail7813	= { FOLLOW_text_string_in_alter_user_tail7813_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CREATE_SYMBOL_in_create_user7822  */
static	ANTLR3_BITWORD FOLLOW_CREATE_SYMBOL_in_create_user7822_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_user7822	= { FOLLOW_CREATE_SYMBOL_in_create_user7822_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USER_SYMBOL_in_create_user7825  */
static	ANTLR3_BITWORD FOLLOW_USER_SYMBOL_in_create_user7825_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_USER_SYMBOL_in_create_user7825	= { FOLLOW_USER_SYMBOL_in_create_user7825_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_if_not_exists_in_create_user7830  */
static	ANTLR3_BITWORD FOLLOW_if_not_exists_in_create_user7830_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_if_not_exists_in_create_user7830	= { FOLLOW_if_not_exists_in_create_user7830_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_grant_list_in_create_user7837  */
static	ANTLR3_BITWORD FOLLOW_grant_list_in_create_user7837_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(0x0000000000000400), ANTLR3_UINT64_LIT(0x0000010000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_grant_list_in_create_user7837	= { FOLLOW_grant_list_in_create_user7837_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_user_tail_in_create_user7839  */
static	ANTLR3_BITWORD FOLLOW_create_user_tail_in_create_user7839_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_create_user_tail_in_create_user7839	= { FOLLOW_create_user_tail_in_create_user7839_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_require_clause_in_create_user_tail7850  */
static	ANTLR3_BITWORD FOLLOW_require_clause_in_create_user_tail7850_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(0x0000010000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_require_clause_in_create_user_tail7850	= { FOLLOW_require_clause_in_create_user_tail7850_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_connect_options_in_create_user_tail7853  */
static	ANTLR3_BITWORD FOLLOW_connect_options_in_create_user_tail7853_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_tail7853	= { FOLLOW_connect_options_in_create_user_tail7853_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_account_lock_password_expire_options_in_create_user_tail7856  */
static	ANTLR3_BITWORD FOLLOW_account_lock_password_expire_options_in_create_user_tail7856_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_account_lock_password_expire_options_in_create_user_tail7856	= { FOLLOW_account_lock_password_expire_options_in_create_user_tail7856_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REQUIRE_SYMBOL_in_require_clause7871  */
static	ANTLR3_BITWORD FOLLOW_REQUIRE_SYMBOL_in_require_clause7871_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(0x0004000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_REQUIRE_SYMBOL_in_require_clause7871	= { FOLLOW_REQUIRE_SYMBOL_in_require_clause7871_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_require_list_in_require_clause7874  */
static	ANTLR3_BITWORD FOLLOW_require_list_in_require_clause7874_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_require_list_in_require_clause7874	= { FOLLOW_require_list_in_require_clause7874_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SSL_SYMBOL_in_require_clause7878  */
static	ANTLR3_BITWORD FOLLOW_SSL_SYMBOL_in_require_clause7878_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SSL_SYMBOL_in_require_clause7878	= { FOLLOW_SSL_SYMBOL_in_require_clause7878_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_X509_SYMBOL_in_require_clause7882  */
static	ANTLR3_BITWORD FOLLOW_X509_SYMBOL_in_require_clause7882_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_X509_SYMBOL_in_require_clause7882	= { FOLLOW_X509_SYMBOL_in_require_clause7882_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NONE_SYMBOL_in_require_clause7886  */
static	ANTLR3_BITWORD FOLLOW_NONE_SYMBOL_in_require_clause7886_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_NONE_SYMBOL_in_require_clause7886	= { FOLLOW_NONE_SYMBOL_in_require_clause7886_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WITH_SYMBOL_in_connect_options7896  */
static	ANTLR3_BITWORD FOLLOW_WITH_SYMBOL_in_connect_options7896_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_options7896	= { FOLLOW_WITH_SYMBOL_in_connect_options7896_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MAX_QUERIES_PER_HOUR_SYMBOL_in_connect_options7903  */
static	ANTLR3_BITWORD FOLLOW_MAX_QUERIES_PER_HOUR_SYMBOL_in_connect_options7903_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010810000800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MAX_QUERIES_PER_HOUR_SYMBOL_in_connect_options7903	= { FOLLOW_MAX_QUERIES_PER_HOUR_SYMBOL_in_connect_options7903_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_connect_options7905  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_connect_options7905_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_options7905	= { FOLLOW_ulong_number_in_connect_options7905_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MAX_UPDATES_PER_HOUR_SYMBOL_in_connect_options7911  */
static	ANTLR3_BITWORD FOLLOW_MAX_UPDATES_PER_HOUR_SYMBOL_in_connect_options7911_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010810000800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MAX_UPDATES_PER_HOUR_SYMBOL_in_connect_options7911	= { FOLLOW_MAX_UPDATES_PER_HOUR_SYMBOL_in_connect_options7911_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_connect_options7913  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_connect_options7913_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_options7913	= { FOLLOW_ulong_number_in_connect_options7913_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MAX_CONNECTIONS_PER_HOUR_SYMBOL_in_connect_options7919  */
static	ANTLR3_BITWORD FOLLOW_MAX_CONNECTIONS_PER_HOUR_SYMBOL_in_connect_options7919_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010810000800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MAX_CONNECTIONS_PER_HOUR_SYMBOL_in_connect_options7919	= { FOLLOW_MAX_CONNECTIONS_PER_HOUR_SYMBOL_in_connect_options7919_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_connect_options7921  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_connect_options7921_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_options7921	= { FOLLOW_ulong_number_in_connect_options7921_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MAX_USER_CONNECTIONS_SYMBOL_in_connect_options7927  */
static	ANTLR3_BITWORD FOLLOW_MAX_USER_CONNECTIONS_SYMBOL_in_connect_options7927_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010810000800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MAX_USER_CONNECTIONS_SYMBOL_in_connect_options7927	= { FOLLOW_MAX_USER_CONNECTIONS_SYMBOL_in_connect_options7927_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_connect_options7929  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_connect_options7929_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_options7929	= { FOLLOW_ulong_number_in_connect_options7929_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ACCOUNT_SYMBOL_in_account_lock_password_expire_options7942  */
static	ANTLR3_BITWORD FOLLOW_ACCOUNT_SYMBOL_in_account_lock_password_expire_options7942_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_ACCOUNT_SYMBOL_in_account_lock_password_expire_options7942	= { FOLLOW_ACCOUNT_SYMBOL_in_account_lock_password_expire_options7942_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_account_lock_password_expire_options7944  */
static	ANTLR3_BITWORD FOLLOW_set_in_account_lock_password_expire_options7944_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_account_lock_password_expire_options7944	= { FOLLOW_set_in_account_lock_password_expire_options7944_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PASSWORD_SYMBOL_in_account_lock_password_expire_options7955  */
static	ANTLR3_BITWORD FOLLOW_PASSWORD_SYMBOL_in_account_lock_password_expire_options7955_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_PASSWORD_SYMBOL_in_account_lock_password_expire_options7955	= { FOLLOW_PASSWORD_SYMBOL_in_account_lock_password_expire_options7955_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EXPIRE_SYMBOL_in_account_lock_password_expire_options7957  */
static	ANTLR3_BITWORD FOLLOW_EXPIRE_SYMBOL_in_account_lock_password_expire_options7957_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(0x0002000000000000), ANTLR3_UINT64_LIT(0x0000080000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EXPIRE_SYMBOL_in_account_lock_password_expire_options7957	= { FOLLOW_EXPIRE_SYMBOL_in_account_lock_password_expire_options7957_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTERVAL_SYMBOL_in_account_lock_password_expire_options7966  */
static	ANTLR3_BITWORD FOLLOW_INTERVAL_SYMBOL_in_account_lock_password_expire_options7966_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010800000000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INTERVAL_SYMBOL_in_account_lock_password_expire_options7966	= { FOLLOW_INTERVAL_SYMBOL_in_account_lock_password_expire_options7966_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_real_ulong_number_in_account_lock_password_expire_options7968  */
static	ANTLR3_BITWORD FOLLOW_real_ulong_number_in_account_lock_password_expire_options7968_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0004000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_real_ulong_number_in_account_lock_password_expire_options7968	= { FOLLOW_real_ulong_number_in_account_lock_password_expire_options7968_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DAY_SYMBOL_in_account_lock_password_expire_options7970  */
static	ANTLR3_BITWORD FOLLOW_DAY_SYMBOL_in_account_lock_password_expire_options7970_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DAY_SYMBOL_in_account_lock_password_expire_options7970	= { FOLLOW_DAY_SYMBOL_in_account_lock_password_expire_options7970_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NEVER_SYMBOL_in_account_lock_password_expire_options7977  */
static	ANTLR3_BITWORD FOLLOW_NEVER_SYMBOL_in_account_lock_password_expire_options7977_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_NEVER_SYMBOL_in_account_lock_password_expire_options7977	= { FOLLOW_NEVER_SYMBOL_in_account_lock_password_expire_options7977_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_account_lock_password_expire_options7984  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_account_lock_password_expire_options7984_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_account_lock_password_expire_options7984	= { FOLLOW_DEFAULT_SYMBOL_in_account_lock_password_expire_options7984_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DROP_SYMBOL_in_drop_user7998  */
static	ANTLR3_BITWORD FOLLOW_DROP_SYMBOL_in_drop_user7998_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_user7998	= { FOLLOW_DROP_SYMBOL_in_drop_user7998_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USER_SYMBOL_in_drop_user8001  */
static	ANTLR3_BITWORD FOLLOW_USER_SYMBOL_in_drop_user8001_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_USER_SYMBOL_in_drop_user8001	= { FOLLOW_USER_SYMBOL_in_drop_user8001_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_if_exists_in_drop_user8006  */
static	ANTLR3_BITWORD FOLLOW_if_exists_in_drop_user8006_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_if_exists_in_drop_user8006	= { FOLLOW_if_exists_in_drop_user8006_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_list_in_drop_user8013  */
static	ANTLR3_BITWORD FOLLOW_user_list_in_drop_user8013_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_user_list_in_drop_user8013	= { FOLLOW_user_list_in_drop_user8013_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_grant_in_parse_grant8023  */
static	ANTLR3_BITWORD FOLLOW_grant_in_parse_grant8023_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_grant_in_parse_grant8023	= { FOLLOW_grant_in_parse_grant8023_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EOF_in_parse_grant8025  */
static	ANTLR3_BITWORD FOLLOW_EOF_in_parse_grant8025_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EOF_in_parse_grant8025	= { FOLLOW_EOF_in_parse_grant8025_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GRANT_SYMBOL_in_grant8034  */
static	ANTLR3_BITWORD FOLLOW_GRANT_SYMBOL_in_grant8034_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(0x0208000004000000), ANTLR3_UINT64_LIT(0x0000001080200000), ANTLR3_UINT64_LIT(0x0000000000000010), ANTLR3_UINT64_LIT(0x0000000010100010), ANTLR3_UINT64_LIT(0x0000000000060100) };
static  ANTLR3_BITSET_LIST FOLLOW_GRANT_SYMBOL_in_grant8034	= { FOLLOW_GRANT_SYMBOL_in_grant8034_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_grant_privileges_in_grant8037  */
static	ANTLR3_BITWORD FOLLOW_grant_privileges_in_grant8037_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_grant_privileges_in_grant8037	= { FOLLOW_grant_privileges_in_grant8037_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_privilege_target_in_grant8039  */
static	ANTLR3_BITWORD FOLLOW_privilege_target_in_grant8039_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_privilege_target_in_grant8039	= { FOLLOW_privilege_target_in_grant8039_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TO_SYMBOL_in_grant8043  */
static	ANTLR3_BITWORD FOLLOW_TO_SYMBOL_in_grant8043_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_TO_SYMBOL_in_grant8043	= { FOLLOW_TO_SYMBOL_in_grant8043_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_grant_list_in_grant8045  */
static	ANTLR3_BITWORD FOLLOW_grant_list_in_grant8045_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000400), ANTLR3_UINT64_LIT(0x0000010000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_grant_list_in_grant8045	= { FOLLOW_grant_list_in_grant8045_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_require_clause_in_grant8047  */
static	ANTLR3_BITWORD FOLLOW_require_clause_in_grant8047_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000010000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_require_clause_in_grant8047	= { FOLLOW_require_clause_in_grant8047_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WITH_SYMBOL_in_grant8051  */
static	ANTLR3_BITWORD FOLLOW_WITH_SYMBOL_in_grant8051_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(0x0000000000200000) };
static  ANTLR3_BITSET_LIST FOLLOW_WITH_SYMBOL_in_grant8051	= { FOLLOW_WITH_SYMBOL_in_grant8051_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_grant_option_in_grant8053  */
static	ANTLR3_BITWORD FOLLOW_grant_option_in_grant8053_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(0x0000000000200000) };
static  ANTLR3_BITSET_LIST FOLLOW_grant_option_in_grant8053	= { FOLLOW_grant_option_in_grant8053_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GRANT_SYMBOL_in_grant_proxy8065  */
static	ANTLR3_BITWORD FOLLOW_GRANT_SYMBOL_in_grant_proxy8065_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_proxy8065	= { FOLLOW_GRANT_SYMBOL_in_grant_proxy8065_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PROXY_SYMBOL_in_grant_proxy8068  */
static	ANTLR3_BITWORD FOLLOW_PROXY_SYMBOL_in_grant_proxy8068_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_PROXY_SYMBOL_in_grant_proxy8068	= { FOLLOW_PROXY_SYMBOL_in_grant_proxy8068_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_grant_proxy8070  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_grant_proxy8070_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_ON_SYMBOL_in_grant_proxy8070	= { FOLLOW_ON_SYMBOL_in_grant_proxy8070_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_grant_user_in_grant_proxy8072  */
static	ANTLR3_BITWORD FOLLOW_grant_user_in_grant_proxy8072_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_grant_user_in_grant_proxy8072	= { FOLLOW_grant_user_in_grant_proxy8072_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TO_SYMBOL_in_grant_proxy8074  */
static	ANTLR3_BITWORD FOLLOW_TO_SYMBOL_in_grant_proxy8074_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_TO_SYMBOL_in_grant_proxy8074	= { FOLLOW_TO_SYMBOL_in_grant_proxy8074_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_grant_user_in_grant_proxy8076  */
static	ANTLR3_BITWORD FOLLOW_grant_user_in_grant_proxy8076_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_grant_user_in_grant_proxy8076	= { FOLLOW_grant_user_in_grant_proxy8076_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_grant_proxy8079  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_grant_proxy8079_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_grant_proxy8079	= { FOLLOW_COMMA_SYMBOL_in_grant_proxy8079_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_grant_user_in_grant_proxy8081  */
static	ANTLR3_BITWORD FOLLOW_grant_user_in_grant_proxy8081_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_grant_user_in_grant_proxy8081	= { FOLLOW_grant_user_in_grant_proxy8081_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WITH_SYMBOL_in_grant_proxy8088  */
static	ANTLR3_BITWORD FOLLOW_WITH_SYMBOL_in_grant_proxy8088_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000200000) };
static  ANTLR3_BITSET_LIST FOLLOW_WITH_SYMBOL_in_grant_proxy8088	= { FOLLOW_WITH_SYMBOL_in_grant_proxy8088_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GRANT_SYMBOL_in_grant_proxy8090  */
static	ANTLR3_BITWORD FOLLOW_GRANT_SYMBOL_in_grant_proxy8090_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_SYMBOL_in_grant_proxy8090	= { FOLLOW_GRANT_SYMBOL_in_grant_proxy8090_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPTION_SYMBOL_in_grant_proxy8092  */
static	ANTLR3_BITWORD FOLLOW_OPTION_SYMBOL_in_grant_proxy8092_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_OPTION_SYMBOL_in_grant_proxy8092	= { FOLLOW_OPTION_SYMBOL_in_grant_proxy8092_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RENAME_SYMBOL_in_rename_user8103  */
static	ANTLR3_BITWORD FOLLOW_RENAME_SYMBOL_in_rename_user8103_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_user8103	= { FOLLOW_RENAME_SYMBOL_in_rename_user8103_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USER_SYMBOL_in_rename_user8106  */
static	ANTLR3_BITWORD FOLLOW_USER_SYMBOL_in_rename_user8106_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_USER_SYMBOL_in_rename_user8106	= { FOLLOW_USER_SYMBOL_in_rename_user8106_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_in_rename_user8108  */
static	ANTLR3_BITWORD FOLLOW_user_in_rename_user8108_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_user_in_rename_user8108	= { FOLLOW_user_in_rename_user8108_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TO_SYMBOL_in_rename_user8110  */
static	ANTLR3_BITWORD FOLLOW_TO_SYMBOL_in_rename_user8110_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_TO_SYMBOL_in_rename_user8110	= { FOLLOW_TO_SYMBOL_in_rename_user8110_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_in_rename_user8112  */
static	ANTLR3_BITWORD FOLLOW_user_in_rename_user8112_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_user_in_rename_user8112	= { FOLLOW_user_in_rename_user8112_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_rename_user8115  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_rename_user8115_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_rename_user8115	= { FOLLOW_COMMA_SYMBOL_in_rename_user8115_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_in_rename_user8117  */
static	ANTLR3_BITWORD FOLLOW_user_in_rename_user8117_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_user_in_rename_user8117	= { FOLLOW_user_in_rename_user8117_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TO_SYMBOL_in_rename_user8119  */
static	ANTLR3_BITWORD FOLLOW_TO_SYMBOL_in_rename_user8119_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_TO_SYMBOL_in_rename_user8119	= { FOLLOW_TO_SYMBOL_in_rename_user8119_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_in_rename_user8121  */
static	ANTLR3_BITWORD FOLLOW_user_in_rename_user8121_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_user_in_rename_user8121	= { FOLLOW_user_in_rename_user8121_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REVOKE_SYMBOL_in_revoke_statement8132  */
static	ANTLR3_BITWORD FOLLOW_REVOKE_SYMBOL_in_revoke_statement8132_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(0x0208000004000000), ANTLR3_UINT64_LIT(0x0000001080200000), ANTLR3_UINT64_LIT(0x0000000000000010), ANTLR3_UINT64_LIT(0x0000000010100010), ANTLR3_UINT64_LIT(0x0000000000060100) };
static  ANTLR3_BITSET_LIST FOLLOW_REVOKE_SYMBOL_in_revoke_statement8132	= { FOLLOW_REVOKE_SYMBOL_in_revoke_statement8132_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALL_SYMBOL_in_revoke_statement8144  */
static	ANTLR3_BITWORD FOLLOW_ALL_SYMBOL_in_revoke_statement8144_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(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_ALL_SYMBOL_in_revoke_statement8144	= { FOLLOW_ALL_SYMBOL_in_revoke_statement8144_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PRIVILEGES_SYMBOL_in_revoke_statement8146  */
static	ANTLR3_BITWORD FOLLOW_PRIVILEGES_SYMBOL_in_revoke_statement8146_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_PRIVILEGES_SYMBOL_in_revoke_statement8146	= { FOLLOW_PRIVILEGES_SYMBOL_in_revoke_statement8146_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_revoke_statement8149  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_revoke_statement8149_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000200000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_revoke_statement8149	= { FOLLOW_COMMA_SYMBOL_in_revoke_statement8149_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GRANT_SYMBOL_in_revoke_statement8151  */
static	ANTLR3_BITWORD FOLLOW_GRANT_SYMBOL_in_revoke_statement8151_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_SYMBOL_in_revoke_statement8151	= { FOLLOW_GRANT_SYMBOL_in_revoke_statement8151_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPTION_SYMBOL_in_revoke_statement8153  */
static	ANTLR3_BITWORD FOLLOW_OPTION_SYMBOL_in_revoke_statement8153_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_OPTION_SYMBOL_in_revoke_statement8153	= { FOLLOW_OPTION_SYMBOL_in_revoke_statement8153_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_revoke_statement8155  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_revoke_statement8155_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_revoke_statement8155	= { FOLLOW_FROM_SYMBOL_in_revoke_statement8155_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_list_in_revoke_statement8157  */
static	ANTLR3_BITWORD FOLLOW_user_list_in_revoke_statement8157_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_user_list_in_revoke_statement8157	= { FOLLOW_user_list_in_revoke_statement8157_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_grant_privileges_in_revoke_statement8163  */
static	ANTLR3_BITWORD FOLLOW_grant_privileges_in_revoke_statement8163_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_grant_privileges_in_revoke_statement8163	= { FOLLOW_grant_privileges_in_revoke_statement8163_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_privilege_target_in_revoke_statement8165  */
static	ANTLR3_BITWORD FOLLOW_privilege_target_in_revoke_statement8165_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_privilege_target_in_revoke_statement8165	= { FOLLOW_privilege_target_in_revoke_statement8165_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_revoke_statement8167  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_revoke_statement8167_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_revoke_statement8167	= { FOLLOW_FROM_SYMBOL_in_revoke_statement8167_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_list_in_revoke_statement8169  */
static	ANTLR3_BITWORD FOLLOW_user_list_in_revoke_statement8169_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_user_list_in_revoke_statement8169	= { FOLLOW_user_list_in_revoke_statement8169_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PROXY_SYMBOL_in_revoke_statement8177  */
static	ANTLR3_BITWORD FOLLOW_PROXY_SYMBOL_in_revoke_statement8177_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_PROXY_SYMBOL_in_revoke_statement8177	= { FOLLOW_PROXY_SYMBOL_in_revoke_statement8177_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_revoke_statement8179  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_revoke_statement8179_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_ON_SYMBOL_in_revoke_statement8179	= { FOLLOW_ON_SYMBOL_in_revoke_statement8179_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_in_revoke_statement8181  */
static	ANTLR3_BITWORD FOLLOW_user_in_revoke_statement8181_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_user_in_revoke_statement8181	= { FOLLOW_user_in_revoke_statement8181_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_revoke_statement8183  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_revoke_statement8183_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_revoke_statement8183	= { FOLLOW_FROM_SYMBOL_in_revoke_statement8183_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_list_in_revoke_statement8185  */
static	ANTLR3_BITWORD FOLLOW_user_list_in_revoke_statement8185_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_user_list_in_revoke_statement8185	= { FOLLOW_user_list_in_revoke_statement8185_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_privilege_target8197  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_privilege_target8197_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000001), ANTLR3_UINT64_LIT(0x4000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_ON_SYMBOL_in_privilege_target8197	= { FOLLOW_ON_SYMBOL_in_privilege_target8197_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_grant_object_type_in_privilege_target8199  */
static	ANTLR3_BITWORD FOLLOW_grant_object_type_in_privilege_target8199_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x4000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_grant_object_type_in_privilege_target8199	= { FOLLOW_grant_object_type_in_privilege_target8199_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_privilege_level_in_privilege_target8201  */
static	ANTLR3_BITWORD FOLLOW_privilege_level_in_privilege_target8201_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_privilege_level_in_privilege_target8201	= { FOLLOW_privilege_level_in_privilege_target8201_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SET_SYMBOL_in_set_password8222  */
static	ANTLR3_BITWORD FOLLOW_SET_SYMBOL_in_set_password8222_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_password8222	= { FOLLOW_SET_SYMBOL_in_set_password8222_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PASSWORD_SYMBOL_in_set_password8225  */
static	ANTLR3_BITWORD FOLLOW_PASSWORD_SYMBOL_in_set_password8225_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000800000) };
static  ANTLR3_BITSET_LIST FOLLOW_PASSWORD_SYMBOL_in_set_password8225	= { FOLLOW_PASSWORD_SYMBOL_in_set_password8225_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOR_SYMBOL_in_set_password8228  */
static	ANTLR3_BITWORD FOLLOW_FOR_SYMBOL_in_set_password8228_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_FOR_SYMBOL_in_set_password8228	= { FOLLOW_FOR_SYMBOL_in_set_password8228_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_in_set_password8230  */
static	ANTLR3_BITWORD FOLLOW_user_in_set_password8230_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000800000) };
static  ANTLR3_BITSET_LIST FOLLOW_user_in_set_password8230	= { FOLLOW_user_in_set_password8230_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_equal_in_set_password8234  */
static	ANTLR3_BITWORD FOLLOW_equal_in_set_password8234_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_equal_in_set_password8234	= { FOLLOW_equal_in_set_password8234_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PASSWORD_SYMBOL_in_set_password8241  */
static	ANTLR3_BITWORD FOLLOW_PASSWORD_SYMBOL_in_set_password8241_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_PASSWORD_SYMBOL_in_set_password8241	= { FOLLOW_PASSWORD_SYMBOL_in_set_password8241_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_set_password8243  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_set_password8243_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_set_password8243	= { FOLLOW_OPEN_PAR_SYMBOL_in_set_password8243_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_set_password8245  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_set_password8245_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_text_string_in_set_password8245	= { FOLLOW_text_string_in_set_password8245_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_set_password8247  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_set_password8247_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_set_password8247	= { FOLLOW_CLOSE_PAR_SYMBOL_in_set_password8247_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OLD_PASSWORD_SYMBOL_in_set_password8255  */
static	ANTLR3_BITWORD FOLLOW_OLD_PASSWORD_SYMBOL_in_set_password8255_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_OLD_PASSWORD_SYMBOL_in_set_password8255	= { FOLLOW_OLD_PASSWORD_SYMBOL_in_set_password8255_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_set_password8257  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_set_password8257_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_set_password8257	= { FOLLOW_OPEN_PAR_SYMBOL_in_set_password8257_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_set_password8259  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_set_password8259_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_text_string_in_set_password8259	= { FOLLOW_text_string_in_set_password8259_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_set_password8261  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_set_password8261_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_set_password8261	= { FOLLOW_CLOSE_PAR_SYMBOL_in_set_password8261_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_set_password8267  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_set_password8267_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_set_password8267	= { FOLLOW_text_string_in_set_password8267_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLE_SYMBOL_in_grant_object_type8280  */
static	ANTLR3_BITWORD FOLLOW_TABLE_SYMBOL_in_grant_object_type8280_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLE_SYMBOL_in_grant_object_type8280	= { FOLLOW_TABLE_SYMBOL_in_grant_object_type8280_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FUNCTION_SYMBOL_in_grant_object_type8285  */
static	ANTLR3_BITWORD FOLLOW_FUNCTION_SYMBOL_in_grant_object_type8285_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_FUNCTION_SYMBOL_in_grant_object_type8285	= { FOLLOW_FUNCTION_SYMBOL_in_grant_object_type8285_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PROCEDURE_SYMBOL_in_grant_object_type8289  */
static	ANTLR3_BITWORD FOLLOW_PROCEDURE_SYMBOL_in_grant_object_type8289_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PROCEDURE_SYMBOL_in_grant_object_type8289	= { FOLLOW_PROCEDURE_SYMBOL_in_grant_object_type8289_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALL_SYMBOL_in_grant_privileges8299  */
static	ANTLR3_BITWORD FOLLOW_ALL_SYMBOL_in_grant_privileges8299_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_privileges8299	= { FOLLOW_ALL_SYMBOL_in_grant_privileges8299_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PRIVILEGES_SYMBOL_in_grant_privileges8301  */
static	ANTLR3_BITWORD FOLLOW_PRIVILEGES_SYMBOL_in_grant_privileges8301_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PRIVILEGES_SYMBOL_in_grant_privileges8301	= { FOLLOW_PRIVILEGES_SYMBOL_in_grant_privileges8301_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_privilege_type_in_grant_privileges8307  */
static	ANTLR3_BITWORD FOLLOW_privilege_type_in_grant_privileges8307_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_privilege_type_in_grant_privileges8307	= { FOLLOW_privilege_type_in_grant_privileges8307_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_grant_privileges8310  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_grant_privileges8310_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(0x0208000004000000), ANTLR3_UINT64_LIT(0x0000001080200000), ANTLR3_UINT64_LIT(0x0000000000000010), ANTLR3_UINT64_LIT(0x0000000010100010), ANTLR3_UINT64_LIT(0x0000000000060100) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_grant_privileges8310	= { FOLLOW_COMMA_SYMBOL_in_grant_privileges8310_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_privilege_type_in_grant_privileges8312  */
static	ANTLR3_BITWORD FOLLOW_privilege_type_in_grant_privileges8312_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_privilege_type_in_grant_privileges8312	= { FOLLOW_privilege_type_in_grant_privileges8312_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALTER_SYMBOL_in_privilege_type8323  */
static	ANTLR3_BITWORD FOLLOW_ALTER_SYMBOL_in_privilege_type8323_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_type8323	= { FOLLOW_ALTER_SYMBOL_in_privilege_type8323_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ROUTINE_SYMBOL_in_privilege_type8325  */
static	ANTLR3_BITWORD FOLLOW_ROUTINE_SYMBOL_in_privilege_type8325_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ROUTINE_SYMBOL_in_privilege_type8325	= { FOLLOW_ROUTINE_SYMBOL_in_privilege_type8325_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CREATE_SYMBOL_in_privilege_type8331  */
static	ANTLR3_BITWORD FOLLOW_CREATE_SYMBOL_in_privilege_type8331_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_type8331	= { FOLLOW_CREATE_SYMBOL_in_privilege_type8331_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ROUTINE_SYMBOL_in_privilege_type8334  */
static	ANTLR3_BITWORD FOLLOW_ROUTINE_SYMBOL_in_privilege_type8334_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ROUTINE_SYMBOL_in_privilege_type8334	= { FOLLOW_ROUTINE_SYMBOL_in_privilege_type8334_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLESPACE_SYMBOL_in_privilege_type8338  */
static	ANTLR3_BITWORD FOLLOW_TABLESPACE_SYMBOL_in_privilege_type8338_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLESPACE_SYMBOL_in_privilege_type8338	= { FOLLOW_TABLESPACE_SYMBOL_in_privilege_type8338_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TEMPORARY_SYMBOL_in_privilege_type8342  */
static	ANTLR3_BITWORD FOLLOW_TEMPORARY_SYMBOL_in_privilege_type8342_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_type8342	= { FOLLOW_TEMPORARY_SYMBOL_in_privilege_type8342_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLES_SYMBOL_in_privilege_type8344  */
static	ANTLR3_BITWORD FOLLOW_TABLES_SYMBOL_in_privilege_type8344_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLES_SYMBOL_in_privilege_type8344	= { FOLLOW_TABLES_SYMBOL_in_privilege_type8344_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USER_SYMBOL_in_privilege_type8348  */
static	ANTLR3_BITWORD FOLLOW_USER_SYMBOL_in_privilege_type8348_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_USER_SYMBOL_in_privilege_type8348	= { FOLLOW_USER_SYMBOL_in_privilege_type8348_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VIEW_SYMBOL_in_privilege_type8352  */
static	ANTLR3_BITWORD FOLLOW_VIEW_SYMBOL_in_privilege_type8352_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_VIEW_SYMBOL_in_privilege_type8352	= { FOLLOW_VIEW_SYMBOL_in_privilege_type8352_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DELETE_SYMBOL_in_privilege_type8359  */
static	ANTLR3_BITWORD FOLLOW_DELETE_SYMBOL_in_privilege_type8359_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DELETE_SYMBOL_in_privilege_type8359	= { FOLLOW_DELETE_SYMBOL_in_privilege_type8359_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DROP_SYMBOL_in_privilege_type8364  */
static	ANTLR3_BITWORD FOLLOW_DROP_SYMBOL_in_privilege_type8364_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DROP_SYMBOL_in_privilege_type8364	= { FOLLOW_DROP_SYMBOL_in_privilege_type8364_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EVENT_SYMBOL_in_privilege_type8369  */
static	ANTLR3_BITWORD FOLLOW_EVENT_SYMBOL_in_privilege_type8369_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EVENT_SYMBOL_in_privilege_type8369	= { FOLLOW_EVENT_SYMBOL_in_privilege_type8369_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EXECUTE_SYMBOL_in_privilege_type8374  */
static	ANTLR3_BITWORD FOLLOW_EXECUTE_SYMBOL_in_privilege_type8374_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EXECUTE_SYMBOL_in_privilege_type8374	= { FOLLOW_EXECUTE_SYMBOL_in_privilege_type8374_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FILE_SYMBOL_in_privilege_type8379  */
static	ANTLR3_BITWORD FOLLOW_FILE_SYMBOL_in_privilege_type8379_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_FILE_SYMBOL_in_privilege_type8379	= { FOLLOW_FILE_SYMBOL_in_privilege_type8379_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GRANT_SYMBOL_in_privilege_type8384  */
static	ANTLR3_BITWORD FOLLOW_GRANT_SYMBOL_in_privilege_type8384_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_SYMBOL_in_privilege_type8384	= { FOLLOW_GRANT_SYMBOL_in_privilege_type8384_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPTION_SYMBOL_in_privilege_type8386  */
static	ANTLR3_BITWORD FOLLOW_OPTION_SYMBOL_in_privilege_type8386_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_OPTION_SYMBOL_in_privilege_type8386	= { FOLLOW_OPTION_SYMBOL_in_privilege_type8386_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INDEX_SYMBOL_in_privilege_type8391  */
static	ANTLR3_BITWORD FOLLOW_INDEX_SYMBOL_in_privilege_type8391_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_INDEX_SYMBOL_in_privilege_type8391	= { FOLLOW_INDEX_SYMBOL_in_privilege_type8391_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INSERT_SYMBOL_in_privilege_type8396  */
static	ANTLR3_BITWORD FOLLOW_INSERT_SYMBOL_in_privilege_type8396_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INSERT_SYMBOL_in_privilege_type8396	= { FOLLOW_INSERT_SYMBOL_in_privilege_type8396_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_with_parentheses_in_privilege_type8398  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_with_parentheses_in_privilege_type8398_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_list_with_parentheses_in_privilege_type8398	= { FOLLOW_identifier_list_with_parentheses_in_privilege_type8398_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOCK_SYMBOL_in_privilege_type8404  */
static	ANTLR3_BITWORD FOLLOW_LOCK_SYMBOL_in_privilege_type8404_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_type8404	= { FOLLOW_LOCK_SYMBOL_in_privilege_type8404_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLES_SYMBOL_in_privilege_type8406  */
static	ANTLR3_BITWORD FOLLOW_TABLES_SYMBOL_in_privilege_type8406_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLES_SYMBOL_in_privilege_type8406	= { FOLLOW_TABLES_SYMBOL_in_privilege_type8406_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PROCESS_SYMBOL_in_privilege_type8411  */
static	ANTLR3_BITWORD FOLLOW_PROCESS_SYMBOL_in_privilege_type8411_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PROCESS_SYMBOL_in_privilege_type8411	= { FOLLOW_PROCESS_SYMBOL_in_privilege_type8411_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PROXY_SYMBOL_in_privilege_type8416  */
static	ANTLR3_BITWORD FOLLOW_PROXY_SYMBOL_in_privilege_type8416_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PROXY_SYMBOL_in_privilege_type8416	= { FOLLOW_PROXY_SYMBOL_in_privilege_type8416_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REFERENCES_SYMBOL_in_privilege_type8421  */
static	ANTLR3_BITWORD FOLLOW_REFERENCES_SYMBOL_in_privilege_type8421_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_REFERENCES_SYMBOL_in_privilege_type8421	= { FOLLOW_REFERENCES_SYMBOL_in_privilege_type8421_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_with_parentheses_in_privilege_type8423  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_with_parentheses_in_privilege_type8423_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_list_with_parentheses_in_privilege_type8423	= { FOLLOW_identifier_list_with_parentheses_in_privilege_type8423_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RELOAD_SYMBOL_in_privilege_type8429  */
static	ANTLR3_BITWORD FOLLOW_RELOAD_SYMBOL_in_privilege_type8429_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_RELOAD_SYMBOL_in_privilege_type8429	= { FOLLOW_RELOAD_SYMBOL_in_privilege_type8429_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REPLICATION_SYMBOL_in_privilege_type8434  */
static	ANTLR3_BITWORD FOLLOW_REPLICATION_SYMBOL_in_privilege_type8434_bits[]	= { ANTLR3_UINT64_LIT(0x0001000000000000), ANTLR3_UINT64_LIT(0x0000000000200000) };
static  ANTLR3_BITSET_LIST FOLLOW_REPLICATION_SYMBOL_in_privilege_type8434	= { FOLLOW_REPLICATION_SYMBOL_in_privilege_type8434_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_privilege_type8436  */
static	ANTLR3_BITWORD FOLLOW_set_in_privilege_type8436_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_privilege_type8436	= { FOLLOW_set_in_privilege_type8436_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SELECT_SYMBOL_in_privilege_type8447  */
static	ANTLR3_BITWORD FOLLOW_SELECT_SYMBOL_in_privilege_type8447_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SELECT_SYMBOL_in_privilege_type8447	= { FOLLOW_SELECT_SYMBOL_in_privilege_type8447_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_with_parentheses_in_privilege_type8449  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_with_parentheses_in_privilege_type8449_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_list_with_parentheses_in_privilege_type8449	= { FOLLOW_identifier_list_with_parentheses_in_privilege_type8449_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SHOW_SYMBOL_in_privilege_type8455  */
static	ANTLR3_BITWORD FOLLOW_SHOW_SYMBOL_in_privilege_type8455_bits[]	= { ANTLR3_UINT64_LIT(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_SHOW_SYMBOL_in_privilege_type8455	= { FOLLOW_SHOW_SYMBOL_in_privilege_type8455_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATABASES_SYMBOL_in_privilege_type8457  */
static	ANTLR3_BITWORD FOLLOW_DATABASES_SYMBOL_in_privilege_type8457_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DATABASES_SYMBOL_in_privilege_type8457	= { FOLLOW_DATABASES_SYMBOL_in_privilege_type8457_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SHOW_SYMBOL_in_privilege_type8462  */
static	ANTLR3_BITWORD FOLLOW_SHOW_SYMBOL_in_privilege_type8462_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_type8462	= { FOLLOW_SHOW_SYMBOL_in_privilege_type8462_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VIEW_SYMBOL_in_privilege_type8464  */
static	ANTLR3_BITWORD FOLLOW_VIEW_SYMBOL_in_privilege_type8464_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_VIEW_SYMBOL_in_privilege_type8464	= { FOLLOW_VIEW_SYMBOL_in_privilege_type8464_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SHUTDOWN_SYMBOL_in_privilege_type8469  */
static	ANTLR3_BITWORD FOLLOW_SHUTDOWN_SYMBOL_in_privilege_type8469_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SHUTDOWN_SYMBOL_in_privilege_type8469	= { FOLLOW_SHUTDOWN_SYMBOL_in_privilege_type8469_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SUPER_SYMBOL_in_privilege_type8474  */
static	ANTLR3_BITWORD FOLLOW_SUPER_SYMBOL_in_privilege_type8474_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SUPER_SYMBOL_in_privilege_type8474	= { FOLLOW_SUPER_SYMBOL_in_privilege_type8474_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TRIGGER_SYMBOL_in_privilege_type8479  */
static	ANTLR3_BITWORD FOLLOW_TRIGGER_SYMBOL_in_privilege_type8479_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_TRIGGER_SYMBOL_in_privilege_type8479	= { FOLLOW_TRIGGER_SYMBOL_in_privilege_type8479_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UPDATE_SYMBOL_in_privilege_type8484  */
static	ANTLR3_BITWORD FOLLOW_UPDATE_SYMBOL_in_privilege_type8484_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_UPDATE_SYMBOL_in_privilege_type8484	= { FOLLOW_UPDATE_SYMBOL_in_privilege_type8484_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_with_parentheses_in_privilege_type8486  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_with_parentheses_in_privilege_type8486_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_list_with_parentheses_in_privilege_type8486	= { FOLLOW_identifier_list_with_parentheses_in_privilege_type8486_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USAGE_SYMBOL_in_privilege_type8492  */
static	ANTLR3_BITWORD FOLLOW_USAGE_SYMBOL_in_privilege_type8492_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_USAGE_SYMBOL_in_privilege_type8492	= { FOLLOW_USAGE_SYMBOL_in_privilege_type8492_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULT_OPERATOR_in_privilege_level8501  */
static	ANTLR3_BITWORD FOLLOW_MULT_OPERATOR_in_privilege_level8501_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_MULT_OPERATOR_in_privilege_level8501	= { FOLLOW_MULT_OPERATOR_in_privilege_level8501_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DOT_SYMBOL_in_privilege_level8504  */
static	ANTLR3_BITWORD FOLLOW_DOT_SYMBOL_in_privilege_level8504_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_DOT_SYMBOL_in_privilege_level8504	= { FOLLOW_DOT_SYMBOL_in_privilege_level8504_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULT_OPERATOR_in_privilege_level8506  */
static	ANTLR3_BITWORD FOLLOW_MULT_OPERATOR_in_privilege_level8506_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_MULT_OPERATOR_in_privilege_level8506	= { FOLLOW_MULT_OPERATOR_in_privilege_level8506_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_privilege_level8513  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_privilege_level8513_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_privilege_level8513	= { FOLLOW_identifier_in_privilege_level8513_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DOT_SYMBOL_in_privilege_level8516  */
static	ANTLR3_BITWORD FOLLOW_DOT_SYMBOL_in_privilege_level8516_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_DOT_SYMBOL_in_privilege_level8516	= { FOLLOW_DOT_SYMBOL_in_privilege_level8516_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULT_OPERATOR_in_privilege_level8518  */
static	ANTLR3_BITWORD FOLLOW_MULT_OPERATOR_in_privilege_level8518_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_MULT_OPERATOR_in_privilege_level8518	= { FOLLOW_MULT_OPERATOR_in_privilege_level8518_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_dot_identifier_in_privilege_level8522  */
static	ANTLR3_BITWORD FOLLOW_dot_identifier_in_privilege_level8522_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_dot_identifier_in_privilege_level8522	= { FOLLOW_dot_identifier_in_privilege_level8522_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_require_list_element_in_require_list8533  */
static	ANTLR3_BITWORD FOLLOW_require_list_element_in_require_list8533_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000040000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x4000000000000800) };
static  ANTLR3_BITSET_LIST FOLLOW_require_list_element_in_require_list8533	= { FOLLOW_require_list_element_in_require_list8533_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AND_SYMBOL_in_require_list8536  */
static	ANTLR3_BITWORD FOLLOW_AND_SYMBOL_in_require_list8536_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_list8536	= { FOLLOW_AND_SYMBOL_in_require_list8536_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_require_list_element_in_require_list8539  */
static	ANTLR3_BITWORD FOLLOW_require_list_element_in_require_list8539_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000040000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x4000000000000800) };
static  ANTLR3_BITSET_LIST FOLLOW_require_list_element_in_require_list8539	= { FOLLOW_require_list_element_in_require_list8539_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CIPHER_SYMBOL_in_require_list_element8550  */
static	ANTLR3_BITWORD FOLLOW_CIPHER_SYMBOL_in_require_list_element8550_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CIPHER_SYMBOL_in_require_list_element8550	= { FOLLOW_CIPHER_SYMBOL_in_require_list_element8550_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_require_list_element8552  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_require_list_element8552_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_require_list_element8552	= { FOLLOW_text_string_in_require_list_element8552_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ISSUER_SYMBOL_in_require_list_element8557  */
static	ANTLR3_BITWORD FOLLOW_ISSUER_SYMBOL_in_require_list_element8557_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ISSUER_SYMBOL_in_require_list_element8557	= { FOLLOW_ISSUER_SYMBOL_in_require_list_element8557_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_require_list_element8559  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_require_list_element8559_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_require_list_element8559	= { FOLLOW_text_string_in_require_list_element8559_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SUBJECT_SYMBOL_in_require_list_element8564  */
static	ANTLR3_BITWORD FOLLOW_SUBJECT_SYMBOL_in_require_list_element8564_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SUBJECT_SYMBOL_in_require_list_element8564	= { FOLLOW_SUBJECT_SYMBOL_in_require_list_element8564_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_require_list_element8566  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_require_list_element8566_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_require_list_element8566	= { FOLLOW_text_string_in_require_list_element8566_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GRANT_SYMBOL_in_grant_option8575  */
static	ANTLR3_BITWORD FOLLOW_GRANT_SYMBOL_in_grant_option8575_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_SYMBOL_in_grant_option8575	= { FOLLOW_GRANT_SYMBOL_in_grant_option8575_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPTION_SYMBOL_in_grant_option8577  */
static	ANTLR3_BITWORD FOLLOW_OPTION_SYMBOL_in_grant_option8577_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_OPTION_SYMBOL_in_grant_option8577	= { FOLLOW_OPTION_SYMBOL_in_grant_option8577_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MAX_QUERIES_PER_HOUR_SYMBOL_in_grant_option8582  */
static	ANTLR3_BITWORD FOLLOW_MAX_QUERIES_PER_HOUR_SYMBOL_in_grant_option8582_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010810000800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MAX_QUERIES_PER_HOUR_SYMBOL_in_grant_option8582	= { FOLLOW_MAX_QUERIES_PER_HOUR_SYMBOL_in_grant_option8582_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_grant_option8584  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_grant_option8584_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_grant_option8584	= { FOLLOW_ulong_number_in_grant_option8584_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MAX_UPDATES_PER_HOUR_SYMBOL_in_grant_option8589  */
static	ANTLR3_BITWORD FOLLOW_MAX_UPDATES_PER_HOUR_SYMBOL_in_grant_option8589_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010810000800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MAX_UPDATES_PER_HOUR_SYMBOL_in_grant_option8589	= { FOLLOW_MAX_UPDATES_PER_HOUR_SYMBOL_in_grant_option8589_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_grant_option8591  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_grant_option8591_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_grant_option8591	= { FOLLOW_ulong_number_in_grant_option8591_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MAX_CONNECTIONS_PER_HOUR_SYMBOL_in_grant_option8596  */
static	ANTLR3_BITWORD FOLLOW_MAX_CONNECTIONS_PER_HOUR_SYMBOL_in_grant_option8596_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010810000800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MAX_CONNECTIONS_PER_HOUR_SYMBOL_in_grant_option8596	= { FOLLOW_MAX_CONNECTIONS_PER_HOUR_SYMBOL_in_grant_option8596_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_grant_option8598  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_grant_option8598_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_grant_option8598	= { FOLLOW_ulong_number_in_grant_option8598_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MAX_USER_CONNECTIONS_SYMBOL_in_grant_option8603  */
static	ANTLR3_BITWORD FOLLOW_MAX_USER_CONNECTIONS_SYMBOL_in_grant_option8603_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010810000800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MAX_USER_CONNECTIONS_SYMBOL_in_grant_option8603	= { FOLLOW_MAX_USER_CONNECTIONS_SYMBOL_in_grant_option8603_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_grant_option8605  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_grant_option8605_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_grant_option8605	= { FOLLOW_ulong_number_in_grant_option8605_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ANALYZE_SYMBOL_in_table_administration_statement8616  */
static	ANTLR3_BITWORD FOLLOW_ANALYZE_SYMBOL_in_table_administration_statement8616_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(0x0000002000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_ANALYZE_SYMBOL_in_table_administration_statement8616	= { FOLLOW_ANALYZE_SYMBOL_in_table_administration_statement8616_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_no_write_to_bin_log_in_table_administration_statement8619  */
static	ANTLR3_BITWORD FOLLOW_no_write_to_bin_log_in_table_administration_statement8619_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_table_administration_statement8619	= { FOLLOW_no_write_to_bin_log_in_table_administration_statement8619_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLE_SYMBOL_in_table_administration_statement8622  */
static	ANTLR3_BITWORD FOLLOW_TABLE_SYMBOL_in_table_administration_statement8622_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLE_SYMBOL_in_table_administration_statement8622	= { FOLLOW_TABLE_SYMBOL_in_table_administration_statement8622_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_list_in_table_administration_statement8624  */
static	ANTLR3_BITWORD FOLLOW_table_ref_list_in_table_administration_statement8624_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_list_in_table_administration_statement8624	= { FOLLOW_table_ref_list_in_table_administration_statement8624_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHECK_SYMBOL_in_table_administration_statement8629  */
static	ANTLR3_BITWORD FOLLOW_CHECK_SYMBOL_in_table_administration_statement8629_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_table_administration_statement8629	= { FOLLOW_CHECK_SYMBOL_in_table_administration_statement8629_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLE_SYMBOL_in_table_administration_statement8632  */
static	ANTLR3_BITWORD FOLLOW_TABLE_SYMBOL_in_table_administration_statement8632_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLE_SYMBOL_in_table_administration_statement8632	= { FOLLOW_TABLE_SYMBOL_in_table_administration_statement8632_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_list_in_table_administration_statement8634  */
static	ANTLR3_BITWORD FOLLOW_table_ref_list_in_table_administration_statement8634_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(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_list_in_table_administration_statement8634	= { FOLLOW_table_ref_list_in_table_administration_statement8634_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_check_option_in_table_administration_statement8636  */
static	ANTLR3_BITWORD FOLLOW_check_option_in_table_administration_statement8636_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(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_check_option_in_table_administration_statement8636	= { FOLLOW_check_option_in_table_administration_statement8636_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHECKSUM_SYMBOL_in_table_administration_statement8642  */
static	ANTLR3_BITWORD FOLLOW_CHECKSUM_SYMBOL_in_table_administration_statement8642_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_CHECKSUM_SYMBOL_in_table_administration_statement8642	= { FOLLOW_CHECKSUM_SYMBOL_in_table_administration_statement8642_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLE_SYMBOL_in_table_administration_statement8645  */
static	ANTLR3_BITWORD FOLLOW_TABLE_SYMBOL_in_table_administration_statement8645_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLE_SYMBOL_in_table_administration_statement8645	= { FOLLOW_TABLE_SYMBOL_in_table_administration_statement8645_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_list_in_table_administration_statement8647  */
static	ANTLR3_BITWORD FOLLOW_table_ref_list_in_table_administration_statement8647_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_statement8647	= { FOLLOW_table_ref_list_in_table_administration_statement8647_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPTIMIZE_SYMBOL_in_table_administration_statement8661  */
static	ANTLR3_BITWORD FOLLOW_OPTIMIZE_SYMBOL_in_table_administration_statement8661_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(0x0000002000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_OPTIMIZE_SYMBOL_in_table_administration_statement8661	= { FOLLOW_OPTIMIZE_SYMBOL_in_table_administration_statement8661_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_no_write_to_bin_log_in_table_administration_statement8664  */
static	ANTLR3_BITWORD FOLLOW_no_write_to_bin_log_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(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_no_write_to_bin_log_in_table_administration_statement8664	= { FOLLOW_no_write_to_bin_log_in_table_administration_statement8664_bits, 11	};
/** 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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLE_SYMBOL_in_table_administration_statement8667	= { FOLLOW_TABLE_SYMBOL_in_table_administration_statement8667_bits, 12	};
/** 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(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_list_in_table_administration_statement8669	= { FOLLOW_table_ref_list_in_table_administration_statement8669_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REPAIR_SYMBOL_in_table_administration_statement8674  */
static	ANTLR3_BITWORD FOLLOW_REPAIR_SYMBOL_in_table_administration_statement8674_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(0x0000002000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_REPAIR_SYMBOL_in_table_administration_statement8674	= { FOLLOW_REPAIR_SYMBOL_in_table_administration_statement8674_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_no_write_to_bin_log_in_table_administration_statement8677  */
static	ANTLR3_BITWORD FOLLOW_no_write_to_bin_log_in_table_administration_statement8677_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_table_administration_statement8677	= { FOLLOW_no_write_to_bin_log_in_table_administration_statement8677_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLE_SYMBOL_in_table_administration_statement8680  */
static	ANTLR3_BITWORD FOLLOW_TABLE_SYMBOL_in_table_administration_statement8680_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLE_SYMBOL_in_table_administration_statement8680	= { FOLLOW_TABLE_SYMBOL_in_table_administration_statement8680_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_list_in_table_administration_statement8682  */
static	ANTLR3_BITWORD FOLLOW_table_ref_list_in_table_administration_statement8682_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_statement8682	= { FOLLOW_table_ref_list_in_table_administration_statement8682_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_repair_option_in_table_administration_statement8684  */
static	ANTLR3_BITWORD FOLLOW_repair_option_in_table_administration_statement8684_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_statement8684	= { FOLLOW_repair_option_in_table_administration_statement8684_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BACKUP_SYMBOL_in_table_administration_statement8692  */
static	ANTLR3_BITWORD FOLLOW_BACKUP_SYMBOL_in_table_administration_statement8692_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_BACKUP_SYMBOL_in_table_administration_statement8692	= { FOLLOW_BACKUP_SYMBOL_in_table_administration_statement8692_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLE_SYMBOL_in_table_administration_statement8695  */
static	ANTLR3_BITWORD FOLLOW_TABLE_SYMBOL_in_table_administration_statement8695_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLE_SYMBOL_in_table_administration_statement8695	= { FOLLOW_TABLE_SYMBOL_in_table_administration_statement8695_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_list_in_table_administration_statement8697  */
static	ANTLR3_BITWORD FOLLOW_table_ref_list_in_table_administration_statement8697_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_in_table_administration_statement8697	= { FOLLOW_table_ref_list_in_table_administration_statement8697_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TO_SYMBOL_in_table_administration_statement8699  */
static	ANTLR3_BITWORD FOLLOW_TO_SYMBOL_in_table_administration_statement8699_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_TO_SYMBOL_in_table_administration_statement8699	= { FOLLOW_TO_SYMBOL_in_table_administration_statement8699_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_table_administration_statement8701  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_table_administration_statement8701_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_table_administration_statement8701	= { FOLLOW_string_literal_in_table_administration_statement8701_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RESTORE_SYMBOL_in_table_administration_statement8708  */
static	ANTLR3_BITWORD FOLLOW_RESTORE_SYMBOL_in_table_administration_statement8708_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_RESTORE_SYMBOL_in_table_administration_statement8708	= { FOLLOW_RESTORE_SYMBOL_in_table_administration_statement8708_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLE_SYMBOL_in_table_administration_statement8711  */
static	ANTLR3_BITWORD FOLLOW_TABLE_SYMBOL_in_table_administration_statement8711_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLE_SYMBOL_in_table_administration_statement8711	= { FOLLOW_TABLE_SYMBOL_in_table_administration_statement8711_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_list_in_table_administration_statement8713  */
static	ANTLR3_BITWORD FOLLOW_table_ref_list_in_table_administration_statement8713_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_table_ref_list_in_table_administration_statement8713	= { FOLLOW_table_ref_list_in_table_administration_statement8713_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_table_administration_statement8715  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_table_administration_statement8715_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_table_administration_statement8715	= { FOLLOW_FROM_SYMBOL_in_table_administration_statement8715_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_table_administration_statement8717  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_table_administration_statement8717_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_table_administration_statement8717	= { FOLLOW_string_literal_in_table_administration_statement8717_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOR_SYMBOL_in_check_option8726  */
static	ANTLR3_BITWORD FOLLOW_FOR_SYMBOL_in_check_option8726_bits[]	= { ANTLR3_UINT64_LIT(0x0100000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FOR_SYMBOL_in_check_option8726	= { FOLLOW_FOR_SYMBOL_in_check_option8726_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UPGRADE_SYMBOL_in_check_option8728  */
static	ANTLR3_BITWORD FOLLOW_UPGRADE_SYMBOL_in_check_option8728_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_UPGRADE_SYMBOL_in_check_option8728	= { FOLLOW_UPGRADE_SYMBOL_in_check_option8728_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_QUICK_SYMBOL_in_check_option8732  */
static	ANTLR3_BITWORD FOLLOW_QUICK_SYMBOL_in_check_option8732_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_QUICK_SYMBOL_in_check_option8732	= { FOLLOW_QUICK_SYMBOL_in_check_option8732_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FAST_SYMBOL_in_check_option8736  */
static	ANTLR3_BITWORD FOLLOW_FAST_SYMBOL_in_check_option8736_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_FAST_SYMBOL_in_check_option8736	= { FOLLOW_FAST_SYMBOL_in_check_option8736_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MEDIUM_SYMBOL_in_check_option8740  */
static	ANTLR3_BITWORD FOLLOW_MEDIUM_SYMBOL_in_check_option8740_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_MEDIUM_SYMBOL_in_check_option8740	= { FOLLOW_MEDIUM_SYMBOL_in_check_option8740_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EXTENDED_SYMBOL_in_check_option8744  */
static	ANTLR3_BITWORD FOLLOW_EXTENDED_SYMBOL_in_check_option8744_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EXTENDED_SYMBOL_in_check_option8744	= { FOLLOW_EXTENDED_SYMBOL_in_check_option8744_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHANGED_SYMBOL_in_check_option8748  */
static	ANTLR3_BITWORD FOLLOW_CHANGED_SYMBOL_in_check_option8748_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CHANGED_SYMBOL_in_check_option8748	= { FOLLOW_CHANGED_SYMBOL_in_check_option8748_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INSTALL_SYMBOL_in_install_uninstall_statment8776  */
static	ANTLR3_BITWORD FOLLOW_INSTALL_SYMBOL_in_install_uninstall_statment8776_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_statment8776	= { FOLLOW_INSTALL_SYMBOL_in_install_uninstall_statment8776_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PLUGIN_SYMBOL_in_install_uninstall_statment8779  */
static	ANTLR3_BITWORD FOLLOW_PLUGIN_SYMBOL_in_install_uninstall_statment8779_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_PLUGIN_SYMBOL_in_install_uninstall_statment8779	= { FOLLOW_PLUGIN_SYMBOL_in_install_uninstall_statment8779_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_install_uninstall_statment8781  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_install_uninstall_statment8781_bits[]	= { ANTLR3_UINT64_LIT(0x0004000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_install_uninstall_statment8781	= { FOLLOW_identifier_in_install_uninstall_statment8781_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SONAME_SYMBOL_in_install_uninstall_statment8783  */
static	ANTLR3_BITWORD FOLLOW_SONAME_SYMBOL_in_install_uninstall_statment8783_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SONAME_SYMBOL_in_install_uninstall_statment8783	= { FOLLOW_SONAME_SYMBOL_in_install_uninstall_statment8783_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_install_uninstall_statment8785  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_install_uninstall_statment8785_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_install_uninstall_statment8785	= { FOLLOW_string_literal_in_install_uninstall_statment8785_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNINSTALL_SYMBOL_in_install_uninstall_statment8790  */
static	ANTLR3_BITWORD FOLLOW_UNINSTALL_SYMBOL_in_install_uninstall_statment8790_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_statment8790	= { FOLLOW_UNINSTALL_SYMBOL_in_install_uninstall_statment8790_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PLUGIN_SYMBOL_in_install_uninstall_statment8793  */
static	ANTLR3_BITWORD FOLLOW_PLUGIN_SYMBOL_in_install_uninstall_statment8793_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_PLUGIN_SYMBOL_in_install_uninstall_statment8793	= { FOLLOW_PLUGIN_SYMBOL_in_install_uninstall_statment8793_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_install_uninstall_statment8795  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_install_uninstall_statment8795_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_install_uninstall_statment8795	= { FOLLOW_identifier_in_install_uninstall_statment8795_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SET_SYMBOL_in_set_statement8806  */
static	ANTLR3_BITWORD FOLLOW_SET_SYMBOL_in_set_statement8806_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0002000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0017000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_SET_SYMBOL_in_set_statement8806	= { FOLLOW_SET_SYMBOL_in_set_statement8806_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_option_type_in_set_statement8829  */
static	ANTLR3_BITWORD FOLLOW_option_type_in_set_statement8829_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_statement8829	= { FOLLOW_option_type_in_set_statement8829_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TRANSACTION_SYMBOL_in_set_statement8832  */
static	ANTLR3_BITWORD FOLLOW_TRANSACTION_SYMBOL_in_set_statement8832_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(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_TRANSACTION_SYMBOL_in_set_statement8832	= { FOLLOW_TRANSACTION_SYMBOL_in_set_statement8832_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_transaction_characteristic_in_set_statement8834  */
static	ANTLR3_BITWORD FOLLOW_set_transaction_characteristic_in_set_statement8834_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_transaction_characteristic_in_set_statement8834	= { FOLLOW_set_transaction_characteristic_in_set_statement8834_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ONE_SHOT_SYMBOL_in_set_statement8845  */
static	ANTLR3_BITWORD FOLLOW_ONE_SHOT_SYMBOL_in_set_statement8845_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0002000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0017000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_ONE_SHOT_SYMBOL_in_set_statement8845	= { FOLLOW_ONE_SHOT_SYMBOL_in_set_statement8845_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_option_value_no_option_type_in_set_statement8848  */
static	ANTLR3_BITWORD FOLLOW_option_value_no_option_type_in_set_statement8848_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_option_value_no_option_type_in_set_statement8848	= { FOLLOW_option_value_no_option_type_in_set_statement8848_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_set_statement8851  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_set_statement8851_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0002000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0017000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_set_statement8851	= { FOLLOW_COMMA_SYMBOL_in_set_statement8851_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_option_value_list_in_set_statement8853  */
static	ANTLR3_BITWORD FOLLOW_option_value_list_in_set_statement8853_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_option_value_list_in_set_statement8853	= { FOLLOW_option_value_list_in_set_statement8853_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_option_type_in_set_statement8862  */
static	ANTLR3_BITWORD FOLLOW_option_type_in_set_statement8862_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0002000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_option_type_in_set_statement8862	= { FOLLOW_option_type_in_set_statement8862_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_option_value_following_option_type_in_set_statement8864  */
static	ANTLR3_BITWORD FOLLOW_option_value_following_option_type_in_set_statement8864_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_option_value_following_option_type_in_set_statement8864	= { FOLLOW_option_value_following_option_type_in_set_statement8864_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_set_statement8867  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_set_statement8867_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0002000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0017000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_set_statement8867	= { FOLLOW_COMMA_SYMBOL_in_set_statement8867_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_option_value_list_in_set_statement8869  */
static	ANTLR3_BITWORD FOLLOW_option_value_list_in_set_statement8869_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_option_value_list_in_set_statement8869	= { FOLLOW_option_value_list_in_set_statement8869_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NAMES_SYMBOL_in_option_value_no_option_type8894  */
static	ANTLR3_BITWORD FOLLOW_NAMES_SYMBOL_in_option_value_no_option_type8894_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0002000000000010), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010400000000000), ANTLR3_UINT64_LIT(0x0000001000900000) };
static  ANTLR3_BITSET_LIST FOLLOW_NAMES_SYMBOL_in_option_value_no_option_type8894	= { FOLLOW_NAMES_SYMBOL_in_option_value_no_option_type8894_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_equal_in_option_value_no_option_type8903  */
static	ANTLR3_BITWORD FOLLOW_equal_in_option_value_no_option_type8903_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_equal_in_option_value_no_option_type8903	= { FOLLOW_equal_in_option_value_no_option_type8903_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_option_value_no_option_type8905  */
static	ANTLR3_BITWORD FOLLOW_expression_in_option_value_no_option_type8905_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_option_value_no_option_type8905	= { FOLLOW_expression_in_option_value_no_option_type8905_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_name_or_default_in_option_value_no_option_type8912  */
static	ANTLR3_BITWORD FOLLOW_charset_name_or_default_in_option_value_no_option_type8912_bits[]	= { ANTLR3_UINT64_LIT(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_charset_name_or_default_in_option_value_no_option_type8912	= { FOLLOW_charset_name_or_default_in_option_value_no_option_type8912_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLLATE_SYMBOL_in_option_value_no_option_type8915  */
static	ANTLR3_BITWORD FOLLOW_COLLATE_SYMBOL_in_option_value_no_option_type8915_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0002000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_COLLATE_SYMBOL_in_option_value_no_option_type8915	= { FOLLOW_COLLATE_SYMBOL_in_option_value_no_option_type8915_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_collation_name_or_default_in_option_value_no_option_type8917  */
static	ANTLR3_BITWORD FOLLOW_collation_name_or_default_in_option_value_no_option_type8917_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_collation_name_or_default_in_option_value_no_option_type8917	= { FOLLOW_collation_name_or_default_in_option_value_no_option_type8917_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_variable_name_in_option_value_no_option_type8928  */
static	ANTLR3_BITWORD FOLLOW_variable_name_in_option_value_no_option_type8928_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000800000) };
static  ANTLR3_BITSET_LIST FOLLOW_variable_name_in_option_value_no_option_type8928	= { FOLLOW_variable_name_in_option_value_no_option_type8928_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_equal_in_option_value_no_option_type8930  */
static	ANTLR3_BITWORD FOLLOW_equal_in_option_value_no_option_type8930_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(0x000200A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030070DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_equal_in_option_value_no_option_type8930	= { FOLLOW_equal_in_option_value_no_option_type8930_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_expression_or_default_in_option_value_no_option_type8932  */
static	ANTLR3_BITWORD FOLLOW_set_expression_or_default_in_option_value_no_option_type8932_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_expression_or_default_in_option_value_no_option_type8932	= { FOLLOW_set_expression_or_default_in_option_value_no_option_type8932_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_variable_in_option_value_no_option_type8937  */
static	ANTLR3_BITWORD FOLLOW_user_variable_in_option_value_no_option_type8937_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000800000) };
static  ANTLR3_BITSET_LIST FOLLOW_user_variable_in_option_value_no_option_type8937	= { FOLLOW_user_variable_in_option_value_no_option_type8937_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_equal_in_option_value_no_option_type8939  */
static	ANTLR3_BITWORD FOLLOW_equal_in_option_value_no_option_type8939_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_equal_in_option_value_no_option_type8939	= { FOLLOW_equal_in_option_value_no_option_type8939_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_option_value_no_option_type8941  */
static	ANTLR3_BITWORD FOLLOW_expression_in_option_value_no_option_type8941_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_option_value_no_option_type8941	= { FOLLOW_expression_in_option_value_no_option_type8941_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_system_variable_in_option_value_no_option_type8946  */
static	ANTLR3_BITWORD FOLLOW_system_variable_in_option_value_no_option_type8946_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000800000) };
static  ANTLR3_BITSET_LIST FOLLOW_system_variable_in_option_value_no_option_type8946	= { FOLLOW_system_variable_in_option_value_no_option_type8946_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_equal_in_option_value_no_option_type8948  */
static	ANTLR3_BITWORD FOLLOW_equal_in_option_value_no_option_type8948_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(0x000200A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030070DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_equal_in_option_value_no_option_type8948	= { FOLLOW_equal_in_option_value_no_option_type8948_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_expression_or_default_in_option_value_no_option_type8950  */
static	ANTLR3_BITWORD FOLLOW_set_expression_or_default_in_option_value_no_option_type8950_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_expression_or_default_in_option_value_no_option_type8950	= { FOLLOW_set_expression_or_default_in_option_value_no_option_type8950_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_clause_in_option_value_no_option_type8955  */
static	ANTLR3_BITWORD FOLLOW_charset_clause_in_option_value_no_option_type8955_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_clause_in_option_value_no_option_type8955	= { FOLLOW_charset_clause_in_option_value_no_option_type8955_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_variable_name_in_option_value_following_option_type8964  */
static	ANTLR3_BITWORD FOLLOW_variable_name_in_option_value_following_option_type8964_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000800000) };
static  ANTLR3_BITSET_LIST FOLLOW_variable_name_in_option_value_following_option_type8964	= { FOLLOW_variable_name_in_option_value_following_option_type8964_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_equal_in_option_value_following_option_type8966  */
static	ANTLR3_BITWORD FOLLOW_equal_in_option_value_following_option_type8966_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(0x000200A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030070DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_equal_in_option_value_following_option_type8966	= { FOLLOW_equal_in_option_value_following_option_type8966_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_expression_or_default_in_option_value_following_option_type8968  */
static	ANTLR3_BITWORD FOLLOW_set_expression_or_default_in_option_value_following_option_type8968_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_expression_or_default_in_option_value_following_option_type8968	= { FOLLOW_set_expression_or_default_in_option_value_following_option_type8968_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_set_expression_or_default8978  */
static	ANTLR3_BITWORD FOLLOW_expression_in_set_expression_or_default8978_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_set_expression_or_default8978	= { FOLLOW_expression_in_set_expression_or_default8978_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_set_expression_or_default8983  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_set_expression_or_default8983_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_set_expression_or_default8983	= { FOLLOW_DEFAULT_SYMBOL_in_set_expression_or_default8983_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_set_expression_or_default8988  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_set_expression_or_default8988_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ON_SYMBOL_in_set_expression_or_default8988	= { FOLLOW_ON_SYMBOL_in_set_expression_or_default8988_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALL_SYMBOL_in_set_expression_or_default8993  */
static	ANTLR3_BITWORD FOLLOW_ALL_SYMBOL_in_set_expression_or_default8993_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ALL_SYMBOL_in_set_expression_or_default8993	= { FOLLOW_ALL_SYMBOL_in_set_expression_or_default8993_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_set_expression_or_default8998  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_set_expression_or_default8998_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_set_expression_or_default8998	= { FOLLOW_BINARY_SYMBOL_in_set_expression_or_default8998_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_option_value_in_option_value_list9007  */
static	ANTLR3_BITWORD FOLLOW_option_value_in_option_value_list9007_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_option_value_in_option_value_list9007	= { FOLLOW_option_value_in_option_value_list9007_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_option_value_list9010  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_option_value_list9010_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0002000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0017000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_option_value_list9010	= { FOLLOW_COMMA_SYMBOL_in_option_value_list9010_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_option_value_in_option_value_list9012  */
static	ANTLR3_BITWORD FOLLOW_option_value_in_option_value_list9012_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_option_value_in_option_value_list9012	= { FOLLOW_option_value_in_option_value_list9012_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_option_type_in_option_value9023  */
static	ANTLR3_BITWORD FOLLOW_option_type_in_option_value9023_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0002000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_option_type_in_option_value9023	= { FOLLOW_option_type_in_option_value9023_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_variable_name_in_option_value9025  */
static	ANTLR3_BITWORD FOLLOW_variable_name_in_option_value9025_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000800000) };
static  ANTLR3_BITSET_LIST FOLLOW_variable_name_in_option_value9025	= { FOLLOW_variable_name_in_option_value9025_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_equal_in_option_value9027  */
static	ANTLR3_BITWORD FOLLOW_equal_in_option_value9027_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(0x000200A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030070DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_equal_in_option_value9027	= { FOLLOW_equal_in_option_value9027_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_expression_or_default_in_option_value9029  */
static	ANTLR3_BITWORD FOLLOW_set_expression_or_default_in_option_value9029_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_expression_or_default_in_option_value9029	= { FOLLOW_set_expression_or_default_in_option_value9029_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_option_value_no_option_type_in_option_value9034  */
static	ANTLR3_BITWORD FOLLOW_option_value_no_option_type_in_option_value9034_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_option_value_no_option_type_in_option_value9034	= { FOLLOW_option_value_no_option_type_in_option_value9034_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SHOW_SYMBOL_in_show_statement9045  */
static	ANTLR3_BITWORD FOLLOW_SHOW_SYMBOL_in_show_statement9045_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(0x0000000406010010), ANTLR3_UINT64_LIT(0x0040000080000000), ANTLR3_UINT64_LIT(0x2000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_SHOW_SYMBOL_in_show_statement9045	= { FOLLOW_SHOW_SYMBOL_in_show_statement9045_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AUTHORS_SYMBOL_in_show_statement9055  */
static	ANTLR3_BITWORD FOLLOW_AUTHORS_SYMBOL_in_show_statement9055_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_AUTHORS_SYMBOL_in_show_statement9055	= { FOLLOW_AUTHORS_SYMBOL_in_show_statement9055_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATABASES_SYMBOL_in_show_statement9061  */
static	ANTLR3_BITWORD FOLLOW_DATABASES_SYMBOL_in_show_statement9061_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DATABASES_SYMBOL_in_show_statement9061	= { FOLLOW_DATABASES_SYMBOL_in_show_statement9061_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_like_or_where_in_show_statement9063  */
static	ANTLR3_BITWORD FOLLOW_like_or_where_in_show_statement9063_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_like_or_where_in_show_statement9063	= { FOLLOW_like_or_where_in_show_statement9063_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FULL_SYMBOL_in_show_statement9070  */
static	ANTLR3_BITWORD FOLLOW_FULL_SYMBOL_in_show_statement9070_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_statement9070	= { FOLLOW_FULL_SYMBOL_in_show_statement9070_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLES_SYMBOL_in_show_statement9073  */
static	ANTLR3_BITWORD FOLLOW_TABLES_SYMBOL_in_show_statement9073_bits[]	= { ANTLR3_UINT64_LIT(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(0x1000400000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLES_SYMBOL_in_show_statement9073	= { FOLLOW_TABLES_SYMBOL_in_show_statement9073_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_in_db_in_show_statement9075  */
static	ANTLR3_BITWORD FOLLOW_in_db_in_show_statement9075_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_in_db_in_show_statement9075	= { FOLLOW_in_db_in_show_statement9075_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_like_or_where_in_show_statement9078  */
static	ANTLR3_BITWORD FOLLOW_like_or_where_in_show_statement9078_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_like_or_where_in_show_statement9078	= { FOLLOW_like_or_where_in_show_statement9078_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FULL_SYMBOL_in_show_statement9085  */
static	ANTLR3_BITWORD FOLLOW_FULL_SYMBOL_in_show_statement9085_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_statement9085	= { FOLLOW_FULL_SYMBOL_in_show_statement9085_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TRIGGERS_SYMBOL_in_show_statement9088  */
static	ANTLR3_BITWORD FOLLOW_TRIGGERS_SYMBOL_in_show_statement9088_bits[]	= { ANTLR3_UINT64_LIT(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(0x1000400000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_TRIGGERS_SYMBOL_in_show_statement9088	= { FOLLOW_TRIGGERS_SYMBOL_in_show_statement9088_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_in_db_in_show_statement9090  */
static	ANTLR3_BITWORD FOLLOW_in_db_in_show_statement9090_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_in_db_in_show_statement9090	= { FOLLOW_in_db_in_show_statement9090_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_like_or_where_in_show_statement9093  */
static	ANTLR3_BITWORD FOLLOW_like_or_where_in_show_statement9093_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_like_or_where_in_show_statement9093	= { FOLLOW_like_or_where_in_show_statement9093_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EVENTS_SYMBOL_in_show_statement9100  */
static	ANTLR3_BITWORD FOLLOW_EVENTS_SYMBOL_in_show_statement9100_bits[]	= { ANTLR3_UINT64_LIT(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(0x1000400000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EVENTS_SYMBOL_in_show_statement9100	= { FOLLOW_EVENTS_SYMBOL_in_show_statement9100_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_in_db_in_show_statement9102  */
static	ANTLR3_BITWORD FOLLOW_in_db_in_show_statement9102_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_in_db_in_show_statement9102	= { FOLLOW_in_db_in_show_statement9102_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_like_or_where_in_show_statement9105  */
static	ANTLR3_BITWORD FOLLOW_like_or_where_in_show_statement9105_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_like_or_where_in_show_statement9105	= { FOLLOW_like_or_where_in_show_statement9105_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLE_SYMBOL_in_show_statement9112  */
static	ANTLR3_BITWORD FOLLOW_TABLE_SYMBOL_in_show_statement9112_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_statement9112	= { FOLLOW_TABLE_SYMBOL_in_show_statement9112_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STATUS_SYMBOL_in_show_statement9114  */
static	ANTLR3_BITWORD FOLLOW_STATUS_SYMBOL_in_show_statement9114_bits[]	= { ANTLR3_UINT64_LIT(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(0x1000400000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_STATUS_SYMBOL_in_show_statement9114	= { FOLLOW_STATUS_SYMBOL_in_show_statement9114_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_in_db_in_show_statement9116  */
static	ANTLR3_BITWORD FOLLOW_in_db_in_show_statement9116_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_in_db_in_show_statement9116	= { FOLLOW_in_db_in_show_statement9116_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_like_or_where_in_show_statement9119  */
static	ANTLR3_BITWORD FOLLOW_like_or_where_in_show_statement9119_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_like_or_where_in_show_statement9119	= { FOLLOW_like_or_where_in_show_statement9119_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_SYMBOL_in_show_statement9126  */
static	ANTLR3_BITWORD FOLLOW_OPEN_SYMBOL_in_show_statement9126_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_statement9126	= { FOLLOW_OPEN_SYMBOL_in_show_statement9126_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLES_SYMBOL_in_show_statement9128  */
static	ANTLR3_BITWORD FOLLOW_TABLES_SYMBOL_in_show_statement9128_bits[]	= { ANTLR3_UINT64_LIT(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(0x1000400000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLES_SYMBOL_in_show_statement9128	= { FOLLOW_TABLES_SYMBOL_in_show_statement9128_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_in_db_in_show_statement9130  */
static	ANTLR3_BITWORD FOLLOW_in_db_in_show_statement9130_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_in_db_in_show_statement9130	= { FOLLOW_in_db_in_show_statement9130_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_like_or_where_in_show_statement9133  */
static	ANTLR3_BITWORD FOLLOW_like_or_where_in_show_statement9133_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_like_or_where_in_show_statement9133	= { FOLLOW_like_or_where_in_show_statement9133_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PLUGIN_SYMBOL_in_show_statement9142  */
static	ANTLR3_BITWORD FOLLOW_PLUGIN_SYMBOL_in_show_statement9142_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PLUGIN_SYMBOL_in_show_statement9142	= { FOLLOW_PLUGIN_SYMBOL_in_show_statement9142_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PLUGINS_SYMBOL_in_show_statement9151  */
static	ANTLR3_BITWORD FOLLOW_PLUGINS_SYMBOL_in_show_statement9151_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PLUGINS_SYMBOL_in_show_statement9151	= { FOLLOW_PLUGINS_SYMBOL_in_show_statement9151_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ENGINE_SYMBOL_in_show_statement9157  */
static	ANTLR3_BITWORD FOLLOW_ENGINE_SYMBOL_in_show_statement9157_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_ENGINE_SYMBOL_in_show_statement9157	= { FOLLOW_ENGINE_SYMBOL_in_show_statement9157_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_engine_ref_in_show_statement9159  */
static	ANTLR3_BITWORD FOLLOW_engine_ref_in_show_statement9159_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_statement9159	= { FOLLOW_engine_ref_in_show_statement9159_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_show_statement9161  */
static	ANTLR3_BITWORD FOLLOW_set_in_show_statement9161_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_show_statement9161	= { FOLLOW_set_in_show_statement9161_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FULL_SYMBOL_in_show_statement9173  */
static	ANTLR3_BITWORD FOLLOW_FULL_SYMBOL_in_show_statement9173_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000010000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FULL_SYMBOL_in_show_statement9173	= { FOLLOW_FULL_SYMBOL_in_show_statement9173_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLUMNS_SYMBOL_in_show_statement9176  */
static	ANTLR3_BITWORD FOLLOW_COLUMNS_SYMBOL_in_show_statement9176_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_COLUMNS_SYMBOL_in_show_statement9176	= { FOLLOW_COLUMNS_SYMBOL_in_show_statement9176_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_show_statement9178  */
static	ANTLR3_BITWORD FOLLOW_set_in_show_statement9178_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_show_statement9178	= { FOLLOW_set_in_show_statement9178_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_show_statement9186  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_show_statement9186_bits[]	= { ANTLR3_UINT64_LIT(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(0x1000400000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_in_show_statement9186	= { FOLLOW_table_ref_in_show_statement9186_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_in_db_in_show_statement9188  */
static	ANTLR3_BITWORD FOLLOW_in_db_in_show_statement9188_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_in_db_in_show_statement9188	= { FOLLOW_in_db_in_show_statement9188_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_like_or_where_in_show_statement9191  */
static	ANTLR3_BITWORD FOLLOW_like_or_where_in_show_statement9191_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_like_or_where_in_show_statement9191	= { FOLLOW_like_or_where_in_show_statement9191_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_show_statement9198  */
static	ANTLR3_BITWORD FOLLOW_set_in_show_statement9198_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0080000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_show_statement9198	= { FOLLOW_set_in_show_statement9198_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOGS_SYMBOL_in_show_statement9206  */
static	ANTLR3_BITWORD FOLLOW_LOGS_SYMBOL_in_show_statement9206_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_LOGS_SYMBOL_in_show_statement9206	= { FOLLOW_LOGS_SYMBOL_in_show_statement9206_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SLAVE_SYMBOL_in_show_statement9212  */
static	ANTLR3_BITWORD FOLLOW_SLAVE_SYMBOL_in_show_statement9212_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_statement9212	= { FOLLOW_SLAVE_SYMBOL_in_show_statement9212_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_HOSTS_SYMBOL_in_show_statement9223  */
static	ANTLR3_BITWORD FOLLOW_HOSTS_SYMBOL_in_show_statement9223_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_HOSTS_SYMBOL_in_show_statement9223	= { FOLLOW_HOSTS_SYMBOL_in_show_statement9223_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STATUS_SYMBOL_in_show_statement9231  */
static	ANTLR3_BITWORD FOLLOW_STATUS_SYMBOL_in_show_statement9231_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000200000000) };
static  ANTLR3_BITSET_LIST FOLLOW_STATUS_SYMBOL_in_show_statement9231	= { FOLLOW_STATUS_SYMBOL_in_show_statement9231_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_non_blocking_in_show_statement9233  */
static	ANTLR3_BITWORD FOLLOW_non_blocking_in_show_statement9233_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_non_blocking_in_show_statement9233	= { FOLLOW_non_blocking_in_show_statement9233_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_channel_in_show_statement9235  */
static	ANTLR3_BITWORD FOLLOW_channel_in_show_statement9235_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_channel_in_show_statement9235	= { FOLLOW_channel_in_show_statement9235_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_show_statement9247  */
static	ANTLR3_BITWORD FOLLOW_set_in_show_statement9247_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_show_statement9247	= { FOLLOW_set_in_show_statement9247_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EVENTS_SYMBOL_in_show_statement9255  */
static	ANTLR3_BITWORD FOLLOW_EVENTS_SYMBOL_in_show_statement9255_bits[]	= { ANTLR3_UINT64_LIT(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(0x2000400000028000) };
static  ANTLR3_BITSET_LIST FOLLOW_EVENTS_SYMBOL_in_show_statement9255	= { FOLLOW_EVENTS_SYMBOL_in_show_statement9255_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IN_SYMBOL_in_show_statement9258  */
static	ANTLR3_BITWORD FOLLOW_IN_SYMBOL_in_show_statement9258_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_IN_SYMBOL_in_show_statement9258	= { FOLLOW_IN_SYMBOL_in_show_statement9258_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_show_statement9260  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_show_statement9260_bits[]	= { ANTLR3_UINT64_LIT(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(0x2000000000028000) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_show_statement9260	= { FOLLOW_text_string_in_show_statement9260_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_show_statement9265  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_show_statement9265_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010010000800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_show_statement9265	= { FOLLOW_FROM_SYMBOL_in_show_statement9265_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulonglong_number_in_show_statement9267  */
static	ANTLR3_BITWORD FOLLOW_ulonglong_number_in_show_statement9267_bits[]	= { ANTLR3_UINT64_LIT(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(0x2000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_ulonglong_number_in_show_statement9267	= { FOLLOW_ulonglong_number_in_show_statement9267_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_limit_clause_in_show_statement9271  */
static	ANTLR3_BITWORD FOLLOW_limit_clause_in_show_statement9271_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_limit_clause_in_show_statement9271	= { FOLLOW_limit_clause_in_show_statement9271_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_channel_in_show_statement9274  */
static	ANTLR3_BITWORD FOLLOW_channel_in_show_statement9274_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_channel_in_show_statement9274	= { FOLLOW_channel_in_show_statement9274_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_show_statement9281  */
static	ANTLR3_BITWORD FOLLOW_set_in_show_statement9281_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_show_statement9281	= { FOLLOW_set_in_show_statement9281_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_from_or_in_in_show_statement9293  */
static	ANTLR3_BITWORD FOLLOW_from_or_in_in_show_statement9293_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_from_or_in_in_show_statement9293	= { FOLLOW_from_or_in_in_show_statement9293_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_show_statement9295  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_show_statement9295_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000400000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_in_show_statement9295	= { FOLLOW_table_ref_in_show_statement9295_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_in_db_in_show_statement9297  */
static	ANTLR3_BITWORD FOLLOW_in_db_in_show_statement9297_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_in_db_in_show_statement9297	= { FOLLOW_in_db_in_show_statement9297_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_where_clause_in_show_statement9300  */
static	ANTLR3_BITWORD FOLLOW_where_clause_in_show_statement9300_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_where_clause_in_show_statement9300	= { FOLLOW_where_clause_in_show_statement9300_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STORAGE_SYMBOL_in_show_statement9307  */
static	ANTLR3_BITWORD FOLLOW_STORAGE_SYMBOL_in_show_statement9307_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_STORAGE_SYMBOL_in_show_statement9307	= { FOLLOW_STORAGE_SYMBOL_in_show_statement9307_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ENGINES_SYMBOL_in_show_statement9310  */
static	ANTLR3_BITWORD FOLLOW_ENGINES_SYMBOL_in_show_statement9310_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ENGINES_SYMBOL_in_show_statement9310	= { FOLLOW_ENGINES_SYMBOL_in_show_statement9310_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PRIVILEGES_SYMBOL_in_show_statement9316  */
static	ANTLR3_BITWORD FOLLOW_PRIVILEGES_SYMBOL_in_show_statement9316_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PRIVILEGES_SYMBOL_in_show_statement9316	= { FOLLOW_PRIVILEGES_SYMBOL_in_show_statement9316_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COUNT_SYMBOL_in_show_statement9322  */
static	ANTLR3_BITWORD FOLLOW_COUNT_SYMBOL_in_show_statement9322_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_COUNT_SYMBOL_in_show_statement9322	= { FOLLOW_COUNT_SYMBOL_in_show_statement9322_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_show_statement9324  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_show_statement9324_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_show_statement9324	= { FOLLOW_OPEN_PAR_SYMBOL_in_show_statement9324_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULT_OPERATOR_in_show_statement9326  */
static	ANTLR3_BITWORD FOLLOW_MULT_OPERATOR_in_show_statement9326_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MULT_OPERATOR_in_show_statement9326	= { FOLLOW_MULT_OPERATOR_in_show_statement9326_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_show_statement9328  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_show_statement9328_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_statement9328	= { FOLLOW_CLOSE_PAR_SYMBOL_in_show_statement9328_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_show_statement9330  */
static	ANTLR3_BITWORD FOLLOW_set_in_show_statement9330_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_show_statement9330	= { FOLLOW_set_in_show_statement9330_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WARNINGS_SYMBOL_in_show_statement9342  */
static	ANTLR3_BITWORD FOLLOW_WARNINGS_SYMBOL_in_show_statement9342_bits[]	= { ANTLR3_UINT64_LIT(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(0x2000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_WARNINGS_SYMBOL_in_show_statement9342	= { FOLLOW_WARNINGS_SYMBOL_in_show_statement9342_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_limit_clause_in_show_statement9344  */
static	ANTLR3_BITWORD FOLLOW_limit_clause_in_show_statement9344_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_limit_clause_in_show_statement9344	= { FOLLOW_limit_clause_in_show_statement9344_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ERRORS_SYMBOL_in_show_statement9351  */
static	ANTLR3_BITWORD FOLLOW_ERRORS_SYMBOL_in_show_statement9351_bits[]	= { ANTLR3_UINT64_LIT(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(0x2000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ERRORS_SYMBOL_in_show_statement9351	= { FOLLOW_ERRORS_SYMBOL_in_show_statement9351_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_limit_clause_in_show_statement9353  */
static	ANTLR3_BITWORD FOLLOW_limit_clause_in_show_statement9353_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_limit_clause_in_show_statement9353	= { FOLLOW_limit_clause_in_show_statement9353_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PROFILES_SYMBOL_in_show_statement9360  */
static	ANTLR3_BITWORD FOLLOW_PROFILES_SYMBOL_in_show_statement9360_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PROFILES_SYMBOL_in_show_statement9360	= { FOLLOW_PROFILES_SYMBOL_in_show_statement9360_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PROFILE_SYMBOL_in_show_statement9366  */
static	ANTLR3_BITWORD FOLLOW_PROFILE_SYMBOL_in_show_statement9366_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(0x2000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_PROFILE_SYMBOL_in_show_statement9366	= { FOLLOW_PROFILE_SYMBOL_in_show_statement9366_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_profile_type_in_show_statement9369  */
static	ANTLR3_BITWORD FOLLOW_profile_type_in_show_statement9369_bits[]	= { ANTLR3_UINT64_LIT(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(0x2000000000008000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_profile_type_in_show_statement9369	= { FOLLOW_profile_type_in_show_statement9369_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_show_statement9372  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_show_statement9372_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_statement9372	= { FOLLOW_COMMA_SYMBOL_in_show_statement9372_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_profile_type_in_show_statement9374  */
static	ANTLR3_BITWORD FOLLOW_profile_type_in_show_statement9374_bits[]	= { ANTLR3_UINT64_LIT(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(0x2000000000008000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_profile_type_in_show_statement9374	= { FOLLOW_profile_type_in_show_statement9374_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOR_SYMBOL_in_show_statement9381  */
static	ANTLR3_BITWORD FOLLOW_FOR_SYMBOL_in_show_statement9381_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_statement9381	= { FOLLOW_FOR_SYMBOL_in_show_statement9381_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_QUERY_SYMBOL_in_show_statement9383  */
static	ANTLR3_BITWORD FOLLOW_QUERY_SYMBOL_in_show_statement9383_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_QUERY_SYMBOL_in_show_statement9383	= { FOLLOW_QUERY_SYMBOL_in_show_statement9383_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_NUMBER_in_show_statement9385  */
static	ANTLR3_BITWORD FOLLOW_INT_NUMBER_in_show_statement9385_bits[]	= { ANTLR3_UINT64_LIT(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(0x2000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INT_NUMBER_in_show_statement9385	= { FOLLOW_INT_NUMBER_in_show_statement9385_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_limit_clause_in_show_statement9389  */
static	ANTLR3_BITWORD FOLLOW_limit_clause_in_show_statement9389_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_limit_clause_in_show_statement9389	= { FOLLOW_limit_clause_in_show_statement9389_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_option_type_in_show_statement9396  */
static	ANTLR3_BITWORD FOLLOW_option_type_in_show_statement9396_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_statement9396	= { FOLLOW_option_type_in_show_statement9396_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_show_statement9399  */
static	ANTLR3_BITWORD FOLLOW_set_in_show_statement9399_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_show_statement9399	= { FOLLOW_set_in_show_statement9399_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_like_or_where_in_show_statement9407  */
static	ANTLR3_BITWORD FOLLOW_like_or_where_in_show_statement9407_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_like_or_where_in_show_statement9407	= { FOLLOW_like_or_where_in_show_statement9407_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FULL_SYMBOL_in_show_statement9414  */
static	ANTLR3_BITWORD FOLLOW_FULL_SYMBOL_in_show_statement9414_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_statement9414	= { FOLLOW_FULL_SYMBOL_in_show_statement9414_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PROCESSLIST_SYMBOL_in_show_statement9417  */
static	ANTLR3_BITWORD FOLLOW_PROCESSLIST_SYMBOL_in_show_statement9417_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PROCESSLIST_SYMBOL_in_show_statement9417	= { FOLLOW_PROCESSLIST_SYMBOL_in_show_statement9417_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_in_show_statement9423  */
static	ANTLR3_BITWORD FOLLOW_charset_in_show_statement9423_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_in_show_statement9423	= { FOLLOW_charset_in_show_statement9423_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_like_or_where_in_show_statement9425  */
static	ANTLR3_BITWORD FOLLOW_like_or_where_in_show_statement9425_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_like_or_where_in_show_statement9425	= { FOLLOW_like_or_where_in_show_statement9425_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLLATION_SYMBOL_in_show_statement9432  */
static	ANTLR3_BITWORD FOLLOW_COLLATION_SYMBOL_in_show_statement9432_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COLLATION_SYMBOL_in_show_statement9432	= { FOLLOW_COLLATION_SYMBOL_in_show_statement9432_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_like_or_where_in_show_statement9434  */
static	ANTLR3_BITWORD FOLLOW_like_or_where_in_show_statement9434_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_like_or_where_in_show_statement9434	= { FOLLOW_like_or_where_in_show_statement9434_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CONTRIBUTORS_SYMBOL_in_show_statement9443  */
static	ANTLR3_BITWORD FOLLOW_CONTRIBUTORS_SYMBOL_in_show_statement9443_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CONTRIBUTORS_SYMBOL_in_show_statement9443	= { FOLLOW_CONTRIBUTORS_SYMBOL_in_show_statement9443_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GRANTS_SYMBOL_in_show_statement9449  */
static	ANTLR3_BITWORD FOLLOW_GRANTS_SYMBOL_in_show_statement9449_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_GRANTS_SYMBOL_in_show_statement9449	= { FOLLOW_GRANTS_SYMBOL_in_show_statement9449_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOR_SYMBOL_in_show_statement9452  */
static	ANTLR3_BITWORD FOLLOW_FOR_SYMBOL_in_show_statement9452_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_FOR_SYMBOL_in_show_statement9452	= { FOLLOW_FOR_SYMBOL_in_show_statement9452_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_in_show_statement9454  */
static	ANTLR3_BITWORD FOLLOW_user_in_show_statement9454_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_user_in_show_statement9454	= { FOLLOW_user_in_show_statement9454_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_SYMBOL_in_show_statement9462  */
static	ANTLR3_BITWORD FOLLOW_MASTER_SYMBOL_in_show_statement9462_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_statement9462	= { FOLLOW_MASTER_SYMBOL_in_show_statement9462_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STATUS_SYMBOL_in_show_statement9464  */
static	ANTLR3_BITWORD FOLLOW_STATUS_SYMBOL_in_show_statement9464_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_STATUS_SYMBOL_in_show_statement9464	= { FOLLOW_STATUS_SYMBOL_in_show_statement9464_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CREATE_SYMBOL_in_show_statement9470  */
static	ANTLR3_BITWORD FOLLOW_CREATE_SYMBOL_in_show_statement9470_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(0x0000000800000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000101) };
static  ANTLR3_BITSET_LIST FOLLOW_CREATE_SYMBOL_in_show_statement9470	= { FOLLOW_CREATE_SYMBOL_in_show_statement9470_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATABASE_SYMBOL_in_show_statement9481  */
static	ANTLR3_BITWORD FOLLOW_DATABASE_SYMBOL_in_show_statement9481_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_DATABASE_SYMBOL_in_show_statement9481	= { FOLLOW_DATABASE_SYMBOL_in_show_statement9481_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_if_not_exists_in_show_statement9483  */
static	ANTLR3_BITWORD FOLLOW_if_not_exists_in_show_statement9483_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_if_not_exists_in_show_statement9483	= { FOLLOW_if_not_exists_in_show_statement9483_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_schema_ref_in_show_statement9486  */
static	ANTLR3_BITWORD FOLLOW_schema_ref_in_show_statement9486_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_schema_ref_in_show_statement9486	= { FOLLOW_schema_ref_in_show_statement9486_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EVENT_SYMBOL_in_show_statement9494  */
static	ANTLR3_BITWORD FOLLOW_EVENT_SYMBOL_in_show_statement9494_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_EVENT_SYMBOL_in_show_statement9494	= { FOLLOW_EVENT_SYMBOL_in_show_statement9494_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_event_ref_in_show_statement9496  */
static	ANTLR3_BITWORD FOLLOW_event_ref_in_show_statement9496_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_event_ref_in_show_statement9496	= { FOLLOW_event_ref_in_show_statement9496_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FUNCTION_SYMBOL_in_show_statement9504  */
static	ANTLR3_BITWORD FOLLOW_FUNCTION_SYMBOL_in_show_statement9504_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_FUNCTION_SYMBOL_in_show_statement9504	= { FOLLOW_FUNCTION_SYMBOL_in_show_statement9504_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_function_ref_in_show_statement9506  */
static	ANTLR3_BITWORD FOLLOW_function_ref_in_show_statement9506_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_function_ref_in_show_statement9506	= { FOLLOW_function_ref_in_show_statement9506_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PROCEDURE_SYMBOL_in_show_statement9514  */
static	ANTLR3_BITWORD FOLLOW_PROCEDURE_SYMBOL_in_show_statement9514_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_PROCEDURE_SYMBOL_in_show_statement9514	= { FOLLOW_PROCEDURE_SYMBOL_in_show_statement9514_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_procedure_ref_in_show_statement9516  */
static	ANTLR3_BITWORD FOLLOW_procedure_ref_in_show_statement9516_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_procedure_ref_in_show_statement9516	= { FOLLOW_procedure_ref_in_show_statement9516_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLE_SYMBOL_in_show_statement9524  */
static	ANTLR3_BITWORD FOLLOW_TABLE_SYMBOL_in_show_statement9524_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLE_SYMBOL_in_show_statement9524	= { FOLLOW_TABLE_SYMBOL_in_show_statement9524_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_show_statement9526  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_show_statement9526_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_in_show_statement9526	= { FOLLOW_table_ref_in_show_statement9526_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TRIGGER_SYMBOL_in_show_statement9534  */
static	ANTLR3_BITWORD FOLLOW_TRIGGER_SYMBOL_in_show_statement9534_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_TRIGGER_SYMBOL_in_show_statement9534	= { FOLLOW_TRIGGER_SYMBOL_in_show_statement9534_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_trigger_ref_in_show_statement9536  */
static	ANTLR3_BITWORD FOLLOW_trigger_ref_in_show_statement9536_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_trigger_ref_in_show_statement9536	= { FOLLOW_trigger_ref_in_show_statement9536_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VIEW_SYMBOL_in_show_statement9544  */
static	ANTLR3_BITWORD FOLLOW_VIEW_SYMBOL_in_show_statement9544_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_VIEW_SYMBOL_in_show_statement9544	= { FOLLOW_VIEW_SYMBOL_in_show_statement9544_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_view_ref_in_show_statement9546  */
static	ANTLR3_BITWORD FOLLOW_view_ref_in_show_statement9546_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_view_ref_in_show_statement9546	= { FOLLOW_view_ref_in_show_statement9546_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USER_SYMBOL_in_show_statement9556  */
static	ANTLR3_BITWORD FOLLOW_USER_SYMBOL_in_show_statement9556_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_USER_SYMBOL_in_show_statement9556	= { FOLLOW_USER_SYMBOL_in_show_statement9556_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_in_show_statement9558  */
static	ANTLR3_BITWORD FOLLOW_user_in_show_statement9558_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_user_in_show_statement9558	= { FOLLOW_user_in_show_statement9558_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PROCEDURE_SYMBOL_in_show_statement9569  */
static	ANTLR3_BITWORD FOLLOW_PROCEDURE_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_PROCEDURE_SYMBOL_in_show_statement9569	= { FOLLOW_PROCEDURE_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), ANTLR3_UINT64_LIT(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(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_STATUS_SYMBOL_in_show_statement9571	= { FOLLOW_STATUS_SYMBOL_in_show_statement9571_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_like_or_where_in_show_statement9573  */
static	ANTLR3_BITWORD FOLLOW_like_or_where_in_show_statement9573_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_like_or_where_in_show_statement9573	= { FOLLOW_like_or_where_in_show_statement9573_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FUNCTION_SYMBOL_in_show_statement9580  */
static	ANTLR3_BITWORD FOLLOW_FUNCTION_SYMBOL_in_show_statement9580_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_statement9580	= { FOLLOW_FUNCTION_SYMBOL_in_show_statement9580_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STATUS_SYMBOL_in_show_statement9582  */
static	ANTLR3_BITWORD FOLLOW_STATUS_SYMBOL_in_show_statement9582_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_STATUS_SYMBOL_in_show_statement9582	= { FOLLOW_STATUS_SYMBOL_in_show_statement9582_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_like_or_where_in_show_statement9584  */
static	ANTLR3_BITWORD FOLLOW_like_or_where_in_show_statement9584_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_like_or_where_in_show_statement9584	= { FOLLOW_like_or_where_in_show_statement9584_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PROCEDURE_SYMBOL_in_show_statement9591  */
static	ANTLR3_BITWORD FOLLOW_PROCEDURE_SYMBOL_in_show_statement9591_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000001000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PROCEDURE_SYMBOL_in_show_statement9591	= { FOLLOW_PROCEDURE_SYMBOL_in_show_statement9591_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CODE_SYMBOL_in_show_statement9593  */
static	ANTLR3_BITWORD FOLLOW_CODE_SYMBOL_in_show_statement9593_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_CODE_SYMBOL_in_show_statement9593	= { FOLLOW_CODE_SYMBOL_in_show_statement9593_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_procedure_ref_in_show_statement9595  */
static	ANTLR3_BITWORD FOLLOW_procedure_ref_in_show_statement9595_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_procedure_ref_in_show_statement9595	= { FOLLOW_procedure_ref_in_show_statement9595_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FUNCTION_SYMBOL_in_show_statement9601  */
static	ANTLR3_BITWORD FOLLOW_FUNCTION_SYMBOL_in_show_statement9601_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000001000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FUNCTION_SYMBOL_in_show_statement9601	= { FOLLOW_FUNCTION_SYMBOL_in_show_statement9601_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CODE_SYMBOL_in_show_statement9603  */
static	ANTLR3_BITWORD FOLLOW_CODE_SYMBOL_in_show_statement9603_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_CODE_SYMBOL_in_show_statement9603	= { FOLLOW_CODE_SYMBOL_in_show_statement9603_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_function_ref_in_show_statement9605  */
static	ANTLR3_BITWORD FOLLOW_function_ref_in_show_statement9605_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_function_ref_in_show_statement9605	= { FOLLOW_function_ref_in_show_statement9605_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INNODB_SYMBOL_in_show_statement9613  */
static	ANTLR3_BITWORD FOLLOW_INNODB_SYMBOL_in_show_statement9613_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_statement9613	= { FOLLOW_INNODB_SYMBOL_in_show_statement9613_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STATUS_SYMBOL_in_show_statement9615  */
static	ANTLR3_BITWORD FOLLOW_STATUS_SYMBOL_in_show_statement9615_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_STATUS_SYMBOL_in_show_statement9615	= { FOLLOW_STATUS_SYMBOL_in_show_statement9615_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NONBLOCKING_SYMBOL_in_non_blocking9630  */
static	ANTLR3_BITWORD FOLLOW_NONBLOCKING_SYMBOL_in_non_blocking9630_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_NONBLOCKING_SYMBOL_in_non_blocking9630	= { FOLLOW_NONBLOCKING_SYMBOL_in_non_blocking9630_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_from_or_in_in_in_db9658  */
static	ANTLR3_BITWORD FOLLOW_from_or_in_in_in_db9658_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_from_or_in_in_in_db9658	= { FOLLOW_from_or_in_in_in_db9658_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_in_db9660  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_in_db9660_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_in_db9660	= { FOLLOW_identifier_in_in_db9660_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALL_SYMBOL_in_profile_type9669  */
static	ANTLR3_BITWORD FOLLOW_ALL_SYMBOL_in_profile_type9669_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ALL_SYMBOL_in_profile_type9669	= { FOLLOW_ALL_SYMBOL_in_profile_type9669_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BLOCK_SYMBOL_in_profile_type9674  */
static	ANTLR3_BITWORD FOLLOW_BLOCK_SYMBOL_in_profile_type9674_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000008000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_BLOCK_SYMBOL_in_profile_type9674	= { FOLLOW_BLOCK_SYMBOL_in_profile_type9674_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IO_SYMBOL_in_profile_type9676  */
static	ANTLR3_BITWORD FOLLOW_IO_SYMBOL_in_profile_type9676_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_IO_SYMBOL_in_profile_type9676	= { FOLLOW_IO_SYMBOL_in_profile_type9676_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CONTEXT_SYMBOL_in_profile_type9681  */
static	ANTLR3_BITWORD FOLLOW_CONTEXT_SYMBOL_in_profile_type9681_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_type9681	= { FOLLOW_CONTEXT_SYMBOL_in_profile_type9681_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SWITCHES_SYMBOL_in_profile_type9683  */
static	ANTLR3_BITWORD FOLLOW_SWITCHES_SYMBOL_in_profile_type9683_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SWITCHES_SYMBOL_in_profile_type9683	= { FOLLOW_SWITCHES_SYMBOL_in_profile_type9683_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CPU_SYMBOL_in_profile_type9688  */
static	ANTLR3_BITWORD FOLLOW_CPU_SYMBOL_in_profile_type9688_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CPU_SYMBOL_in_profile_type9688	= { FOLLOW_CPU_SYMBOL_in_profile_type9688_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IPC_SYMBOL_in_profile_type9693  */
static	ANTLR3_BITWORD FOLLOW_IPC_SYMBOL_in_profile_type9693_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_IPC_SYMBOL_in_profile_type9693	= { FOLLOW_IPC_SYMBOL_in_profile_type9693_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MEMORY_SYMBOL_in_profile_type9698  */
static	ANTLR3_BITWORD FOLLOW_MEMORY_SYMBOL_in_profile_type9698_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_MEMORY_SYMBOL_in_profile_type9698	= { FOLLOW_MEMORY_SYMBOL_in_profile_type9698_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PAGE_SYMBOL_in_profile_type9703  */
static	ANTLR3_BITWORD FOLLOW_PAGE_SYMBOL_in_profile_type9703_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000002000) };
static  ANTLR3_BITSET_LIST FOLLOW_PAGE_SYMBOL_in_profile_type9703	= { FOLLOW_PAGE_SYMBOL_in_profile_type9703_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FAULTS_SYMBOL_in_profile_type9705  */
static	ANTLR3_BITWORD FOLLOW_FAULTS_SYMBOL_in_profile_type9705_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_FAULTS_SYMBOL_in_profile_type9705	= { FOLLOW_FAULTS_SYMBOL_in_profile_type9705_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SOURCE_SYMBOL_in_profile_type9710  */
static	ANTLR3_BITWORD FOLLOW_SOURCE_SYMBOL_in_profile_type9710_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SOURCE_SYMBOL_in_profile_type9710	= { FOLLOW_SOURCE_SYMBOL_in_profile_type9710_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SWAPS_SYMBOL_in_profile_type9715  */
static	ANTLR3_BITWORD FOLLOW_SWAPS_SYMBOL_in_profile_type9715_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SWAPS_SYMBOL_in_profile_type9715	= { FOLLOW_SWAPS_SYMBOL_in_profile_type9715_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINLOG_SYMBOL_in_other_administrative_statement9726  */
static	ANTLR3_BITWORD FOLLOW_BINLOG_SYMBOL_in_other_administrative_statement9726_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_BINLOG_SYMBOL_in_other_administrative_statement9726	= { FOLLOW_BINLOG_SYMBOL_in_other_administrative_statement9726_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_other_administrative_statement9729  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_other_administrative_statement9729_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_other_administrative_statement9729	= { FOLLOW_string_literal_in_other_administrative_statement9729_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CACHE_SYMBOL_in_other_administrative_statement9734  */
static	ANTLR3_BITWORD FOLLOW_CACHE_SYMBOL_in_other_administrative_statement9734_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_CACHE_SYMBOL_in_other_administrative_statement9734	= { FOLLOW_CACHE_SYMBOL_in_other_administrative_statement9734_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INDEX_SYMBOL_in_other_administrative_statement9737  */
static	ANTLR3_BITWORD FOLLOW_INDEX_SYMBOL_in_other_administrative_statement9737_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_INDEX_SYMBOL_in_other_administrative_statement9737	= { FOLLOW_INDEX_SYMBOL_in_other_administrative_statement9737_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_key_cache_list_or_parts_in_other_administrative_statement9739  */
static	ANTLR3_BITWORD FOLLOW_key_cache_list_or_parts_in_other_administrative_statement9739_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_key_cache_list_or_parts_in_other_administrative_statement9739	= { FOLLOW_key_cache_list_or_parts_in_other_administrative_statement9739_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IN_SYMBOL_in_other_administrative_statement9741  */
static	ANTLR3_BITWORD FOLLOW_IN_SYMBOL_in_other_administrative_statement9741_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0002000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_IN_SYMBOL_in_other_administrative_statement9741	= { FOLLOW_IN_SYMBOL_in_other_administrative_statement9741_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_other_administrative_statement9744  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_other_administrative_statement9744_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_other_administrative_statement9744	= { FOLLOW_identifier_in_other_administrative_statement9744_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_other_administrative_statement9748  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_other_administrative_statement9748_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_other_administrative_statement9748	= { FOLLOW_DEFAULT_SYMBOL_in_other_administrative_statement9748_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FLUSH_SYMBOL_in_other_administrative_statement9754  */
static	ANTLR3_BITWORD FOLLOW_FLUSH_SYMBOL_in_other_administrative_statement9754_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(0x0000000000000010), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000802000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_FLUSH_SYMBOL_in_other_administrative_statement9754	= { FOLLOW_FLUSH_SYMBOL_in_other_administrative_statement9754_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_no_write_to_bin_log_in_other_administrative_statement9757  */
static	ANTLR3_BITWORD FOLLOW_no_write_to_bin_log_in_other_administrative_statement9757_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(0x0000000000000010), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000800000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_no_write_to_bin_log_in_other_administrative_statement9757	= { FOLLOW_no_write_to_bin_log_in_other_administrative_statement9757_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_flush_tables_in_other_administrative_statement9767  */
static	ANTLR3_BITWORD FOLLOW_flush_tables_in_other_administrative_statement9767_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_flush_tables_in_other_administrative_statement9767	= { FOLLOW_flush_tables_in_other_administrative_statement9767_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_flush_option_in_other_administrative_statement9774  */
static	ANTLR3_BITWORD FOLLOW_flush_option_in_other_administrative_statement9774_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_flush_option_in_other_administrative_statement9774	= { FOLLOW_flush_option_in_other_administrative_statement9774_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_other_administrative_statement9777  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_other_administrative_statement9777_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(0x0000000000000010), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000800000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_other_administrative_statement9777	= { FOLLOW_COMMA_SYMBOL_in_other_administrative_statement9777_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_flush_option_in_other_administrative_statement9779  */
static	ANTLR3_BITWORD FOLLOW_flush_option_in_other_administrative_statement9779_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_flush_option_in_other_administrative_statement9779	= { FOLLOW_flush_option_in_other_administrative_statement9779_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_KILL_SYMBOL_in_other_administrative_statement9790  */
static	ANTLR3_BITWORD FOLLOW_KILL_SYMBOL_in_other_administrative_statement9790_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_KILL_SYMBOL_in_other_administrative_statement9790	= { FOLLOW_KILL_SYMBOL_in_other_administrative_statement9790_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_other_administrative_statement9807  */
static	ANTLR3_BITWORD FOLLOW_set_in_other_administrative_statement9807_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_other_administrative_statement9807	= { FOLLOW_set_in_other_administrative_statement9807_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_other_administrative_statement9817  */
static	ANTLR3_BITWORD FOLLOW_expression_in_other_administrative_statement9817_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_other_administrative_statement9817	= { FOLLOW_expression_in_other_administrative_statement9817_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOAD_SYMBOL_in_other_administrative_statement9822  */
static	ANTLR3_BITWORD FOLLOW_LOAD_SYMBOL_in_other_administrative_statement9822_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_LOAD_SYMBOL_in_other_administrative_statement9822	= { FOLLOW_LOAD_SYMBOL_in_other_administrative_statement9822_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INDEX_SYMBOL_in_other_administrative_statement9825  */
static	ANTLR3_BITWORD FOLLOW_INDEX_SYMBOL_in_other_administrative_statement9825_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_INDEX_SYMBOL_in_other_administrative_statement9825	= { FOLLOW_INDEX_SYMBOL_in_other_administrative_statement9825_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTO_SYMBOL_in_other_administrative_statement9827  */
static	ANTLR3_BITWORD FOLLOW_INTO_SYMBOL_in_other_administrative_statement9827_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000400) };
static  ANTLR3_BITSET_LIST FOLLOW_INTO_SYMBOL_in_other_administrative_statement9827	= { FOLLOW_INTO_SYMBOL_in_other_administrative_statement9827_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CACHE_SYMBOL_in_other_administrative_statement9829  */
static	ANTLR3_BITWORD FOLLOW_CACHE_SYMBOL_in_other_administrative_statement9829_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_CACHE_SYMBOL_in_other_administrative_statement9829	= { FOLLOW_CACHE_SYMBOL_in_other_administrative_statement9829_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_load_table_index_list_in_other_administrative_statement9831  */
static	ANTLR3_BITWORD FOLLOW_load_table_index_list_in_other_administrative_statement9831_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_load_table_index_list_in_other_administrative_statement9831	= { FOLLOW_load_table_index_list_in_other_administrative_statement9831_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RESET_SYMBOL_in_other_administrative_statement9836  */
static	ANTLR3_BITWORD FOLLOW_RESET_SYMBOL_in_other_administrative_statement9836_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_statement9836	= { FOLLOW_RESET_SYMBOL_in_other_administrative_statement9836_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_reset_option_in_other_administrative_statement9839  */
static	ANTLR3_BITWORD FOLLOW_reset_option_in_other_administrative_statement9839_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_reset_option_in_other_administrative_statement9839	= { FOLLOW_reset_option_in_other_administrative_statement9839_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_other_administrative_statement9842  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_other_administrative_statement9842_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_statement9842	= { FOLLOW_COMMA_SYMBOL_in_other_administrative_statement9842_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_reset_option_in_other_administrative_statement9844  */
static	ANTLR3_BITWORD FOLLOW_reset_option_in_other_administrative_statement9844_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_reset_option_in_other_administrative_statement9844	= { FOLLOW_reset_option_in_other_administrative_statement9844_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SHUTDOWN_SYMBOL_in_other_administrative_statement9853  */
static	ANTLR3_BITWORD FOLLOW_SHUTDOWN_SYMBOL_in_other_administrative_statement9853_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SHUTDOWN_SYMBOL_in_other_administrative_statement9853	= { FOLLOW_SHUTDOWN_SYMBOL_in_other_administrative_statement9853_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_key_cache_list_in_key_cache_list_or_parts9873  */
static	ANTLR3_BITWORD FOLLOW_key_cache_list_in_key_cache_list_or_parts9873_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_key_cache_list_in_key_cache_list_or_parts9873	= { FOLLOW_key_cache_list_in_key_cache_list_or_parts9873_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_assign_to_keycache_partition_in_key_cache_list_or_parts9886  */
static	ANTLR3_BITWORD FOLLOW_assign_to_keycache_partition_in_key_cache_list_or_parts9886_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_assign_to_keycache_partition_in_key_cache_list_or_parts9886	= { FOLLOW_assign_to_keycache_partition_in_key_cache_list_or_parts9886_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_assign_to_keycache_in_key_cache_list9903  */
static	ANTLR3_BITWORD FOLLOW_assign_to_keycache_in_key_cache_list9903_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_assign_to_keycache_in_key_cache_list9903	= { FOLLOW_assign_to_keycache_in_key_cache_list9903_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_key_cache_list9906  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_key_cache_list9906_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_key_cache_list9906	= { FOLLOW_COMMA_SYMBOL_in_key_cache_list9906_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_assign_to_keycache_in_key_cache_list9908  */
static	ANTLR3_BITWORD FOLLOW_assign_to_keycache_in_key_cache_list9908_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_assign_to_keycache_in_key_cache_list9908	= { FOLLOW_assign_to_keycache_in_key_cache_list9908_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_assign_to_keycache9919  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_assign_to_keycache9919_bits[]	= { ANTLR3_UINT64_LIT(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(0x0080000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_in_assign_to_keycache9919	= { FOLLOW_table_ref_in_assign_to_keycache9919_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_cache_keys_spec_in_assign_to_keycache9921  */
static	ANTLR3_BITWORD FOLLOW_cache_keys_spec_in_assign_to_keycache9921_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_cache_keys_spec_in_assign_to_keycache9921	= { FOLLOW_cache_keys_spec_in_assign_to_keycache9921_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_assign_to_keycache_partition9931  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_assign_to_keycache_partition9931_bits[]	= { ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_in_assign_to_keycache_partition9931	= { FOLLOW_table_ref_in_assign_to_keycache_partition9931_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_assign_to_keycache_partition9933  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_assign_to_keycache_partition9933_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_PARTITION_SYMBOL_in_assign_to_keycache_partition9933	= { FOLLOW_PARTITION_SYMBOL_in_assign_to_keycache_partition9933_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_assign_to_keycache_partition9935  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_assign_to_keycache_partition9935_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_assign_to_keycache_partition9935	= { FOLLOW_OPEN_PAR_SYMBOL_in_assign_to_keycache_partition9935_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALL_SYMBOL_in_assign_to_keycache_partition9938  */
static	ANTLR3_BITWORD FOLLOW_ALL_SYMBOL_in_assign_to_keycache_partition9938_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_ALL_SYMBOL_in_assign_to_keycache_partition9938	= { FOLLOW_ALL_SYMBOL_in_assign_to_keycache_partition9938_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_in_assign_to_keycache_partition9942  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_in_assign_to_keycache_partition9942_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_identifier_list_in_assign_to_keycache_partition9942	= { FOLLOW_identifier_list_in_assign_to_keycache_partition9942_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_assign_to_keycache_partition9945  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_assign_to_keycache_partition9945_bits[]	= { ANTLR3_UINT64_LIT(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(0x0080000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_assign_to_keycache_partition9945	= { FOLLOW_CLOSE_PAR_SYMBOL_in_assign_to_keycache_partition9945_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_cache_keys_spec_in_assign_to_keycache_partition9947  */
static	ANTLR3_BITWORD FOLLOW_cache_keys_spec_in_assign_to_keycache_partition9947_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_cache_keys_spec_in_assign_to_keycache_partition9947	= { FOLLOW_cache_keys_spec_in_assign_to_keycache_partition9947_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_cache_keys_spec9957  */
static	ANTLR3_BITWORD FOLLOW_set_in_cache_keys_spec9957_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_set_in_cache_keys_spec9957	= { FOLLOW_set_in_cache_keys_spec9957_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_cache_keys_spec9965  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_cache_keys_spec9965_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_cache_keys_spec9965	= { FOLLOW_OPEN_PAR_SYMBOL_in_cache_keys_spec9965_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_key_usage_element_in_cache_keys_spec9968  */
static	ANTLR3_BITWORD FOLLOW_key_usage_element_in_cache_keys_spec9968_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_key_usage_element_in_cache_keys_spec9968	= { FOLLOW_key_usage_element_in_cache_keys_spec9968_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_cache_keys_spec9971  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_cache_keys_spec9971_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_cache_keys_spec9971	= { FOLLOW_COMMA_SYMBOL_in_cache_keys_spec9971_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_key_usage_element_in_cache_keys_spec9973  */
static	ANTLR3_BITWORD FOLLOW_key_usage_element_in_cache_keys_spec9973_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_key_usage_element_in_cache_keys_spec9973	= { FOLLOW_key_usage_element_in_cache_keys_spec9973_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_cache_keys_spec9979  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_cache_keys_spec9979_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_cache_keys_spec9979	= { FOLLOW_CLOSE_PAR_SYMBOL_in_cache_keys_spec9979_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_key_usage_element9988  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_key_usage_element9988_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_key_usage_element9988	= { FOLLOW_identifier_in_key_usage_element9988_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PRIMARY_SYMBOL_in_key_usage_element9993  */
static	ANTLR3_BITWORD FOLLOW_PRIMARY_SYMBOL_in_key_usage_element9993_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PRIMARY_SYMBOL_in_key_usage_element9993	= { FOLLOW_PRIMARY_SYMBOL_in_key_usage_element9993_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DES_KEY_FILE_SYMBOL_in_flush_option10002  */
static	ANTLR3_BITWORD FOLLOW_DES_KEY_FILE_SYMBOL_in_flush_option10002_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DES_KEY_FILE_SYMBOL_in_flush_option10002	= { FOLLOW_DES_KEY_FILE_SYMBOL_in_flush_option10002_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_HOSTS_SYMBOL_in_flush_option10007  */
static	ANTLR3_BITWORD FOLLOW_HOSTS_SYMBOL_in_flush_option10007_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_HOSTS_SYMBOL_in_flush_option10007	= { FOLLOW_HOSTS_SYMBOL_in_flush_option10007_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_log_type_in_flush_option10012  */
static	ANTLR3_BITWORD FOLLOW_log_type_in_flush_option10012_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0080000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_log_type_in_flush_option10012	= { FOLLOW_log_type_in_flush_option10012_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOGS_SYMBOL_in_flush_option10015  */
static	ANTLR3_BITWORD FOLLOW_LOGS_SYMBOL_in_flush_option10015_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_LOGS_SYMBOL_in_flush_option10015	= { FOLLOW_LOGS_SYMBOL_in_flush_option10015_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RELAY_SYMBOL_in_flush_option10020  */
static	ANTLR3_BITWORD FOLLOW_RELAY_SYMBOL_in_flush_option10020_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0080000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_RELAY_SYMBOL_in_flush_option10020	= { FOLLOW_RELAY_SYMBOL_in_flush_option10020_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOGS_SYMBOL_in_flush_option10022  */
static	ANTLR3_BITWORD FOLLOW_LOGS_SYMBOL_in_flush_option10022_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_LOGS_SYMBOL_in_flush_option10022	= { FOLLOW_LOGS_SYMBOL_in_flush_option10022_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_channel_in_flush_option10024  */
static	ANTLR3_BITWORD FOLLOW_channel_in_flush_option10024_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_channel_in_flush_option10024	= { FOLLOW_channel_in_flush_option10024_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PRIVILEGES_SYMBOL_in_flush_option10030  */
static	ANTLR3_BITWORD FOLLOW_PRIVILEGES_SYMBOL_in_flush_option10030_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PRIVILEGES_SYMBOL_in_flush_option10030	= { FOLLOW_PRIVILEGES_SYMBOL_in_flush_option10030_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_QUERY_SYMBOL_in_flush_option10035  */
static	ANTLR3_BITWORD FOLLOW_QUERY_SYMBOL_in_flush_option10035_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000400) };
static  ANTLR3_BITSET_LIST FOLLOW_QUERY_SYMBOL_in_flush_option10035	= { FOLLOW_QUERY_SYMBOL_in_flush_option10035_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CACHE_SYMBOL_in_flush_option10037  */
static	ANTLR3_BITWORD FOLLOW_CACHE_SYMBOL_in_flush_option10037_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CACHE_SYMBOL_in_flush_option10037	= { FOLLOW_CACHE_SYMBOL_in_flush_option10037_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STATUS_SYMBOL_in_flush_option10042  */
static	ANTLR3_BITWORD FOLLOW_STATUS_SYMBOL_in_flush_option10042_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_STATUS_SYMBOL_in_flush_option10042	= { FOLLOW_STATUS_SYMBOL_in_flush_option10042_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USER_RESOURCES_SYMBOL_in_flush_option10047  */
static	ANTLR3_BITWORD FOLLOW_USER_RESOURCES_SYMBOL_in_flush_option10047_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_USER_RESOURCES_SYMBOL_in_flush_option10047	= { FOLLOW_USER_RESOURCES_SYMBOL_in_flush_option10047_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPTIMIZER_COSTS_SYMBOL_in_flush_option10054  */
static	ANTLR3_BITWORD FOLLOW_OPTIMIZER_COSTS_SYMBOL_in_flush_option10054_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_OPTIMIZER_COSTS_SYMBOL_in_flush_option10054	= { FOLLOW_OPTIMIZER_COSTS_SYMBOL_in_flush_option10054_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_flush_tables10092  */
static	ANTLR3_BITWORD FOLLOW_set_in_flush_tables10092_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010010000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_flush_tables10092	= { FOLLOW_set_in_flush_tables10092_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WITH_SYMBOL_in_flush_tables10105  */
static	ANTLR3_BITWORD FOLLOW_WITH_SYMBOL_in_flush_tables10105_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_WITH_SYMBOL_in_flush_tables10105	= { FOLLOW_WITH_SYMBOL_in_flush_tables10105_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_READ_SYMBOL_in_flush_tables10107  */
static	ANTLR3_BITWORD FOLLOW_READ_SYMBOL_in_flush_tables10107_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_READ_SYMBOL_in_flush_tables10107	= { FOLLOW_READ_SYMBOL_in_flush_tables10107_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOCK_SYMBOL_in_flush_tables10109  */
static	ANTLR3_BITWORD FOLLOW_LOCK_SYMBOL_in_flush_tables10109_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_LOCK_SYMBOL_in_flush_tables10109	= { FOLLOW_LOCK_SYMBOL_in_flush_tables10109_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_in_flush_tables10115  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_in_flush_tables10115_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000008000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_list_in_flush_tables10115	= { FOLLOW_identifier_list_in_flush_tables10115_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_flush_tables_options_in_flush_tables10117  */
static	ANTLR3_BITWORD FOLLOW_flush_tables_options_in_flush_tables10117_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_flush_tables_options_in_flush_tables10117	= { FOLLOW_flush_tables_options_in_flush_tables10117_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOR_SYMBOL_in_flush_tables_options10133  */
static	ANTLR3_BITWORD FOLLOW_FOR_SYMBOL_in_flush_tables_options10133_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000400) };
static  ANTLR3_BITSET_LIST FOLLOW_FOR_SYMBOL_in_flush_tables_options10133	= { FOLLOW_FOR_SYMBOL_in_flush_tables_options10133_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EXPORT_SYMBOL_in_flush_tables_options10135  */
static	ANTLR3_BITWORD FOLLOW_EXPORT_SYMBOL_in_flush_tables_options10135_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EXPORT_SYMBOL_in_flush_tables_options10135	= { FOLLOW_EXPORT_SYMBOL_in_flush_tables_options10135_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WITH_SYMBOL_in_flush_tables_options10140  */
static	ANTLR3_BITWORD FOLLOW_WITH_SYMBOL_in_flush_tables_options10140_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_WITH_SYMBOL_in_flush_tables_options10140	= { FOLLOW_WITH_SYMBOL_in_flush_tables_options10140_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_READ_SYMBOL_in_flush_tables_options10142  */
static	ANTLR3_BITWORD FOLLOW_READ_SYMBOL_in_flush_tables_options10142_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_READ_SYMBOL_in_flush_tables_options10142	= { FOLLOW_READ_SYMBOL_in_flush_tables_options10142_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOCK_SYMBOL_in_flush_tables_options10144  */
static	ANTLR3_BITWORD FOLLOW_LOCK_SYMBOL_in_flush_tables_options10144_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_LOCK_SYMBOL_in_flush_tables_options10144	= { FOLLOW_LOCK_SYMBOL_in_flush_tables_options10144_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_load_table_index_list10153  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_load_table_index_list10153_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(0x00800000C0000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_in_load_table_index_list10153	= { FOLLOW_table_ref_in_load_table_index_list10153_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_load_table_index_partion_in_load_table_index_list10155  */
static	ANTLR3_BITWORD FOLLOW_load_table_index_partion_in_load_table_index_list10155_bits[]	= { ANTLR3_UINT64_LIT(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(0x00800000C0000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_load_table_index_partion_in_load_table_index_list10155	= { FOLLOW_load_table_index_partion_in_load_table_index_list10155_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_with_parentheses_in_load_table_index_list10170  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_with_parentheses_in_load_table_index_list10170_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000040000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_list_with_parentheses_in_load_table_index_list10170	= { FOLLOW_identifier_list_with_parentheses_in_load_table_index_list10170_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IGNORE_SYMBOL_in_load_table_index_list10175  */
static	ANTLR3_BITWORD FOLLOW_IGNORE_SYMBOL_in_load_table_index_list10175_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000800000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_IGNORE_SYMBOL_in_load_table_index_list10175	= { FOLLOW_IGNORE_SYMBOL_in_load_table_index_list10175_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LEAVES_SYMBOL_in_load_table_index_list10177  */
static	ANTLR3_BITWORD FOLLOW_LEAVES_SYMBOL_in_load_table_index_list10177_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_LEAVES_SYMBOL_in_load_table_index_list10177	= { FOLLOW_LEAVES_SYMBOL_in_load_table_index_list10177_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_load_table_index_partion10193  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_load_table_index_partion10193_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_PARTITION_SYMBOL_in_load_table_index_partion10193	= { FOLLOW_PARTITION_SYMBOL_in_load_table_index_partion10193_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_load_table_index_partion10195  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_load_table_index_partion10195_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_load_table_index_partion10195	= { FOLLOW_OPEN_PAR_SYMBOL_in_load_table_index_partion10195_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_in_load_table_index_partion10198  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_in_load_table_index_partion10198_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_identifier_list_in_load_table_index_partion10198	= { FOLLOW_identifier_list_in_load_table_index_partion10198_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALL_SYMBOL_in_load_table_index_partion10202  */
static	ANTLR3_BITWORD FOLLOW_ALL_SYMBOL_in_load_table_index_partion10202_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_ALL_SYMBOL_in_load_table_index_partion10202	= { FOLLOW_ALL_SYMBOL_in_load_table_index_partion10202_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_load_table_index_partion10205  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_load_table_index_partion10205_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_load_table_index_partion10205	= { FOLLOW_CLOSE_PAR_SYMBOL_in_load_table_index_partion10205_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_SYMBOL_in_reset_option10215  */
static	ANTLR3_BITWORD FOLLOW_MASTER_SYMBOL_in_reset_option10215_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_MASTER_SYMBOL_in_reset_option10215	= { FOLLOW_MASTER_SYMBOL_in_reset_option10215_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_QUERY_SYMBOL_in_reset_option10220  */
static	ANTLR3_BITWORD FOLLOW_QUERY_SYMBOL_in_reset_option10220_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000400) };
static  ANTLR3_BITSET_LIST FOLLOW_QUERY_SYMBOL_in_reset_option10220	= { FOLLOW_QUERY_SYMBOL_in_reset_option10220_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CACHE_SYMBOL_in_reset_option10222  */
static	ANTLR3_BITWORD FOLLOW_CACHE_SYMBOL_in_reset_option10222_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CACHE_SYMBOL_in_reset_option10222	= { FOLLOW_CACHE_SYMBOL_in_reset_option10222_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SLAVE_SYMBOL_in_reset_option10227  */
static	ANTLR3_BITWORD FOLLOW_SLAVE_SYMBOL_in_reset_option10227_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(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_SLAVE_SYMBOL_in_reset_option10227	= { FOLLOW_SLAVE_SYMBOL_in_reset_option10227_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALL_SYMBOL_in_reset_option10229  */
static	ANTLR3_BITWORD FOLLOW_ALL_SYMBOL_in_reset_option10229_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_ALL_SYMBOL_in_reset_option10229	= { FOLLOW_ALL_SYMBOL_in_reset_option10229_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_channel_in_reset_option10232  */
static	ANTLR3_BITWORD FOLLOW_channel_in_reset_option10232_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_channel_in_reset_option10232	= { FOLLOW_channel_in_reset_option10232_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_describe_command_in_utility_statement10244  */
static	ANTLR3_BITWORD FOLLOW_describe_command_in_utility_statement10244_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0008000000000000), ANTLR3_UINT64_LIT(0x0000001000008000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000100200), ANTLR3_UINT64_LIT(0x0010000000020000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_describe_command_in_utility_statement10244	= { FOLLOW_describe_command_in_utility_statement10244_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_utility_statement10253  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_utility_statement10253_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0030000000000000), ANTLR3_UINT64_LIT(0x0000001800100000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_in_utility_statement10253	= { FOLLOW_table_ref_in_utility_statement10253_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_utility_statement10256  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_utility_statement10256_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_utility_statement10256	= { FOLLOW_text_string_in_utility_statement10256_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_utility_statement10260  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_utility_statement10260_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_utility_statement10260	= { FOLLOW_identifier_in_utility_statement10260_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EXTENDED_SYMBOL_in_utility_statement10292  */
static	ANTLR3_BITWORD FOLLOW_EXTENDED_SYMBOL_in_utility_statement10292_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0008000000000000), ANTLR3_UINT64_LIT(0x0000001000008000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000100200), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_EXTENDED_SYMBOL_in_utility_statement10292	= { FOLLOW_EXTENDED_SYMBOL_in_utility_statement10292_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITIONS_SYMBOL_in_utility_statement10304  */
static	ANTLR3_BITWORD FOLLOW_PARTITIONS_SYMBOL_in_utility_statement10304_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0008000000000000), ANTLR3_UINT64_LIT(0x0000001000008000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000100200), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITIONS_SYMBOL_in_utility_statement10304	= { FOLLOW_PARTITIONS_SYMBOL_in_utility_statement10304_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FORMAT_SYMBOL_in_utility_statement10316  */
static	ANTLR3_BITWORD FOLLOW_FORMAT_SYMBOL_in_utility_statement10316_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_FORMAT_SYMBOL_in_utility_statement10316	= { FOLLOW_FORMAT_SYMBOL_in_utility_statement10316_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_utility_statement10318  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_utility_statement10318_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_utility_statement10318	= { FOLLOW_EQUAL_OPERATOR_in_utility_statement10318_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_identifier_in_utility_statement10320  */
static	ANTLR3_BITWORD FOLLOW_text_or_identifier_in_utility_statement10320_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0008000000000000), ANTLR3_UINT64_LIT(0x0000001000008000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000100200), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_identifier_in_utility_statement10320	= { FOLLOW_text_or_identifier_in_utility_statement10320_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_explainable_statement_in_utility_statement10329  */
static	ANTLR3_BITWORD FOLLOW_explainable_statement_in_utility_statement10329_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_explainable_statement_in_utility_statement10329	= { FOLLOW_explainable_statement_in_utility_statement10329_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_HELP_SYMBOL_in_utility_statement10338  */
static	ANTLR3_BITWORD FOLLOW_HELP_SYMBOL_in_utility_statement10338_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_HELP_SYMBOL_in_utility_statement10338	= { FOLLOW_HELP_SYMBOL_in_utility_statement10338_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_identifier_in_utility_statement10341  */
static	ANTLR3_BITWORD FOLLOW_text_or_identifier_in_utility_statement10341_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_identifier_in_utility_statement10341	= { FOLLOW_text_or_identifier_in_utility_statement10341_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_use_command_in_utility_statement10346  */
static	ANTLR3_BITWORD FOLLOW_use_command_in_utility_statement10346_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_use_command_in_utility_statement10346	= { FOLLOW_use_command_in_utility_statement10346_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DESCRIBE_SYMBOL_in_describe_command10355  */
static	ANTLR3_BITWORD FOLLOW_DESCRIBE_SYMBOL_in_describe_command10355_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DESCRIBE_SYMBOL_in_describe_command10355	= { FOLLOW_DESCRIBE_SYMBOL_in_describe_command10355_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DESC_SYMBOL_in_describe_command10360  */
static	ANTLR3_BITWORD FOLLOW_DESC_SYMBOL_in_describe_command10360_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DESC_SYMBOL_in_describe_command10360	= { FOLLOW_DESC_SYMBOL_in_describe_command10360_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_statement_in_explainable_statement10371  */
static	ANTLR3_BITWORD FOLLOW_select_statement_in_explainable_statement10371_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_select_statement_in_explainable_statement10371	= { FOLLOW_select_statement_in_explainable_statement10371_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_delete_statement_in_explainable_statement10385  */
static	ANTLR3_BITWORD FOLLOW_delete_statement_in_explainable_statement10385_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_delete_statement_in_explainable_statement10385	= { FOLLOW_delete_statement_in_explainable_statement10385_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_insert_statement_in_explainable_statement10392  */
static	ANTLR3_BITWORD FOLLOW_insert_statement_in_explainable_statement10392_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_insert_statement_in_explainable_statement10392	= { FOLLOW_insert_statement_in_explainable_statement10392_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_replace_statement_in_explainable_statement10399  */
static	ANTLR3_BITWORD FOLLOW_replace_statement_in_explainable_statement10399_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_replace_statement_in_explainable_statement10399	= { FOLLOW_replace_statement_in_explainable_statement10399_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_update_statement_in_explainable_statement10406  */
static	ANTLR3_BITWORD FOLLOW_update_statement_in_explainable_statement10406_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_update_statement_in_explainable_statement10406	= { FOLLOW_update_statement_in_explainable_statement10406_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOR_SYMBOL_in_explainable_statement10417  */
static	ANTLR3_BITWORD FOLLOW_FOR_SYMBOL_in_explainable_statement10417_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FOR_SYMBOL_in_explainable_statement10417	= { FOLLOW_FOR_SYMBOL_in_explainable_statement10417_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CONNECTION_SYMBOL_in_explainable_statement10419  */
static	ANTLR3_BITWORD FOLLOW_CONNECTION_SYMBOL_in_explainable_statement10419_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010800000000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CONNECTION_SYMBOL_in_explainable_statement10419	= { FOLLOW_CONNECTION_SYMBOL_in_explainable_statement10419_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_real_ulong_number_in_explainable_statement10421  */
static	ANTLR3_BITWORD FOLLOW_real_ulong_number_in_explainable_statement10421_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_real_ulong_number_in_explainable_statement10421	= { FOLLOW_real_ulong_number_in_explainable_statement10421_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USE_SYMBOL_in_use_command10430  */
static	ANTLR3_BITWORD FOLLOW_USE_SYMBOL_in_use_command10430_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_USE_SYMBOL_in_use_command10430	= { FOLLOW_USE_SYMBOL_in_use_command10430_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_use_command10432  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_use_command10432_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_use_command10432	= { FOLLOW_identifier_in_use_command10432_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_logical_or_expression_in_expression10456  */
static	ANTLR3_BITWORD FOLLOW_logical_or_expression_in_expression10456_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_logical_or_expression_in_expression10456	= { FOLLOW_logical_or_expression_in_expression10456_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_logical_xor_expression_in_logical_or_expression10473  */
static	ANTLR3_BITWORD FOLLOW_logical_xor_expression_in_logical_or_expression10473_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_logical_xor_expression_in_logical_or_expression10473	= { FOLLOW_logical_xor_expression_in_logical_or_expression10473_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_logical_or_expression10489  */
static	ANTLR3_BITWORD FOLLOW_set_in_logical_or_expression10489_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_logical_or_expression10489	= { FOLLOW_set_in_logical_or_expression10489_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_logical_xor_expression_in_logical_or_expression10498  */
static	ANTLR3_BITWORD FOLLOW_logical_xor_expression_in_logical_or_expression10498_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_logical_xor_expression_in_logical_or_expression10498	= { FOLLOW_logical_xor_expression_in_logical_or_expression10498_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_logical_and_expression_in_logical_xor_expression10509  */
static	ANTLR3_BITWORD FOLLOW_logical_and_expression_in_logical_xor_expression10509_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000040000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_logical_and_expression_in_logical_xor_expression10509	= { FOLLOW_logical_and_expression_in_logical_xor_expression10509_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_XOR_SYMBOL_in_logical_xor_expression10525  */
static	ANTLR3_BITWORD FOLLOW_XOR_SYMBOL_in_logical_xor_expression10525_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_XOR_SYMBOL_in_logical_xor_expression10525	= { FOLLOW_XOR_SYMBOL_in_logical_xor_expression10525_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_logical_and_expression_in_logical_xor_expression10528  */
static	ANTLR3_BITWORD FOLLOW_logical_and_expression_in_logical_xor_expression10528_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000040000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_logical_and_expression_in_logical_xor_expression10528	= { FOLLOW_logical_and_expression_in_logical_xor_expression10528_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_logical_not_expression_in_logical_and_expression10539  */
static	ANTLR3_BITWORD FOLLOW_logical_not_expression_in_logical_and_expression10539_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), 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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0080000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_logical_not_expression_in_logical_and_expression10539	= { FOLLOW_logical_not_expression_in_logical_and_expression10539_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_logical_and_expression10555  */
static	ANTLR3_BITWORD FOLLOW_set_in_logical_and_expression10555_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_logical_and_expression10555	= { FOLLOW_set_in_logical_and_expression10555_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_logical_not_expression_in_logical_and_expression10564  */
static	ANTLR3_BITWORD FOLLOW_logical_not_expression_in_logical_and_expression10564_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), 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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0080000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_logical_not_expression_in_logical_and_expression10564	= { FOLLOW_logical_not_expression_in_logical_and_expression10564_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NOT_SYMBOL_in_logical_not_expression10575  */
static	ANTLR3_BITWORD FOLLOW_NOT_SYMBOL_in_logical_not_expression10575_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_NOT_SYMBOL_in_logical_not_expression10575	= { FOLLOW_NOT_SYMBOL_in_logical_not_expression10575_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_logical_not_expression_in_logical_not_expression10578  */
static	ANTLR3_BITWORD FOLLOW_logical_not_expression_in_logical_not_expression10578_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_logical_not_expression_in_logical_not_expression10578	= { FOLLOW_logical_not_expression_in_logical_not_expression10578_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_boolean_primary_expression_in_logical_not_expression10583  */
static	ANTLR3_BITWORD FOLLOW_boolean_primary_expression_in_logical_not_expression10583_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_boolean_primary_expression_in_logical_not_expression10583	= { FOLLOW_boolean_primary_expression_in_logical_not_expression10583_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_predicate_in_boolean_primary_expression10592  */
static	ANTLR3_BITWORD FOLLOW_predicate_in_boolean_primary_expression10592_bits[]	= { ANTLR3_UINT64_LIT(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(0x0004000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8001800300800000), ANTLR3_UINT64_LIT(0x0000000000000003) };
static  ANTLR3_BITSET_LIST FOLLOW_predicate_in_boolean_primary_expression10592	= { FOLLOW_predicate_in_boolean_primary_expression10592_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_comparison_operator_in_boolean_primary_expression10613  */
static	ANTLR3_BITWORD FOLLOW_comparison_operator_in_boolean_primary_expression10613_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(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060D44880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_comparison_operator_in_boolean_primary_expression10613	= { FOLLOW_comparison_operator_in_boolean_primary_expression10613_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_boolean_primary_expression10627  */
static	ANTLR3_BITWORD FOLLOW_set_in_boolean_primary_expression10627_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_set_in_boolean_primary_expression10627	= { FOLLOW_set_in_boolean_primary_expression10627_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_subquery_in_boolean_primary_expression10635  */
static	ANTLR3_BITWORD FOLLOW_subquery_in_boolean_primary_expression10635_bits[]	= { ANTLR3_UINT64_LIT(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(0x0004000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8001800300800000), ANTLR3_UINT64_LIT(0x0000000000000003) };
static  ANTLR3_BITSET_LIST FOLLOW_subquery_in_boolean_primary_expression10635	= { FOLLOW_subquery_in_boolean_primary_expression10635_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_predicate_in_boolean_primary_expression10643  */
static	ANTLR3_BITWORD FOLLOW_predicate_in_boolean_primary_expression10643_bits[]	= { ANTLR3_UINT64_LIT(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(0x0004000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8001800300800000), ANTLR3_UINT64_LIT(0x0000000000000003) };
static  ANTLR3_BITSET_LIST FOLLOW_predicate_in_boolean_primary_expression10643	= { FOLLOW_predicate_in_boolean_primary_expression10643_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IS_SYMBOL_in_boolean_primary_expression10672  */
static	ANTLR3_BITWORD FOLLOW_IS_SYMBOL_in_boolean_primary_expression10672_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(0x0000000000000080), ANTLR3_UINT64_LIT(0x000000C800000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000400) };
static  ANTLR3_BITSET_LIST FOLLOW_IS_SYMBOL_in_boolean_primary_expression10672	= { FOLLOW_IS_SYMBOL_in_boolean_primary_expression10672_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NOT_SYMBOL_in_boolean_primary_expression10675  */
static	ANTLR3_BITWORD FOLLOW_NOT_SYMBOL_in_boolean_primary_expression10675_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(0x0000000000000080), ANTLR3_UINT64_LIT(0x000000C000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000400) };
static  ANTLR3_BITSET_LIST FOLLOW_NOT_SYMBOL_in_boolean_primary_expression10675	= { FOLLOW_NOT_SYMBOL_in_boolean_primary_expression10675_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_null_literal_in_boolean_primary_expression10680  */
static	ANTLR3_BITWORD FOLLOW_null_literal_in_boolean_primary_expression10680_bits[]	= { ANTLR3_UINT64_LIT(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(0x0004000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8001800300800000), ANTLR3_UINT64_LIT(0x0000000000000003) };
static  ANTLR3_BITSET_LIST FOLLOW_null_literal_in_boolean_primary_expression10680	= { FOLLOW_null_literal_in_boolean_primary_expression10680_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FALSE_SYMBOL_in_boolean_primary_expression10684  */
static	ANTLR3_BITWORD FOLLOW_FALSE_SYMBOL_in_boolean_primary_expression10684_bits[]	= { ANTLR3_UINT64_LIT(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(0x0004000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8001800300800000), ANTLR3_UINT64_LIT(0x0000000000000003) };
static  ANTLR3_BITSET_LIST FOLLOW_FALSE_SYMBOL_in_boolean_primary_expression10684	= { FOLLOW_FALSE_SYMBOL_in_boolean_primary_expression10684_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TRUE_SYMBOL_in_boolean_primary_expression10688  */
static	ANTLR3_BITWORD FOLLOW_TRUE_SYMBOL_in_boolean_primary_expression10688_bits[]	= { ANTLR3_UINT64_LIT(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(0x0004000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8001800300800000), ANTLR3_UINT64_LIT(0x0000000000000003) };
static  ANTLR3_BITSET_LIST FOLLOW_TRUE_SYMBOL_in_boolean_primary_expression10688	= { FOLLOW_TRUE_SYMBOL_in_boolean_primary_expression10688_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNKNOWN_SYMBOL_in_boolean_primary_expression10692  */
static	ANTLR3_BITWORD FOLLOW_UNKNOWN_SYMBOL_in_boolean_primary_expression10692_bits[]	= { ANTLR3_UINT64_LIT(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(0x0004000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8001800300800000), ANTLR3_UINT64_LIT(0x0000000000000003) };
static  ANTLR3_BITSET_LIST FOLLOW_UNKNOWN_SYMBOL_in_boolean_primary_expression10692	= { FOLLOW_UNKNOWN_SYMBOL_in_boolean_primary_expression10692_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_bitwise_or_expression_in_predicate10709  */
static	ANTLR3_BITWORD FOLLOW_bitwise_or_expression_in_predicate10709_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(0x0000000000000004), ANTLR3_UINT64_LIT(0x1000400000000000), ANTLR3_UINT64_LIT(0x0000000800000000), ANTLR3_UINT64_LIT(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_bitwise_or_expression_in_predicate10709	= { FOLLOW_bitwise_or_expression_in_predicate10709_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NOT_SYMBOL_in_predicate10730  */
static	ANTLR3_BITWORD FOLLOW_NOT_SYMBOL_in_predicate10730_bits[]	= { ANTLR3_UINT64_LIT(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(0x1000400000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_NOT_SYMBOL_in_predicate10730	= { FOLLOW_NOT_SYMBOL_in_predicate10730_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BETWEEN_SYMBOL_in_predicate10744  */
static	ANTLR3_BITWORD FOLLOW_BETWEEN_SYMBOL_in_predicate10744_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060D44880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_BETWEEN_SYMBOL_in_predicate10744	= { FOLLOW_BETWEEN_SYMBOL_in_predicate10744_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_bitwise_or_expression_in_predicate10747  */
static	ANTLR3_BITWORD FOLLOW_bitwise_or_expression_in_predicate10747_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_bitwise_or_expression_in_predicate10747	= { FOLLOW_bitwise_or_expression_in_predicate10747_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AND_SYMBOL_in_predicate10749  */
static	ANTLR3_BITWORD FOLLOW_AND_SYMBOL_in_predicate10749_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060D44880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_AND_SYMBOL_in_predicate10749	= { FOLLOW_AND_SYMBOL_in_predicate10749_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_predicate_in_predicate10751  */
static	ANTLR3_BITWORD FOLLOW_predicate_in_predicate10751_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_predicate_in_predicate10751	= { FOLLOW_predicate_in_predicate10751_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LIKE_SYMBOL_in_predicate10760  */
static	ANTLR3_BITWORD FOLLOW_LIKE_SYMBOL_in_predicate10760_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060D44880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_LIKE_SYMBOL_in_predicate10760	= { FOLLOW_LIKE_SYMBOL_in_predicate10760_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_unary_expression_in_predicate10763  */
static	ANTLR3_BITWORD FOLLOW_unary_expression_in_predicate10763_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_unary_expression_in_predicate10763	= { FOLLOW_unary_expression_in_predicate10763_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ESCAPE_SYMBOL_in_predicate10779  */
static	ANTLR3_BITWORD FOLLOW_ESCAPE_SYMBOL_in_predicate10779_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000010204000C4), ANTLR3_UINT64_LIT(0x030060D04880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1C37000122E00600), ANTLR3_UINT64_LIT(0x0400011810120800), ANTLR3_UINT64_LIT(0x0000000C00000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ESCAPE_SYMBOL_in_predicate10779	= { FOLLOW_ESCAPE_SYMBOL_in_predicate10779_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_primary_in_predicate10781  */
static	ANTLR3_BITWORD FOLLOW_primary_in_predicate10781_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_primary_in_predicate10781	= { FOLLOW_primary_in_predicate10781_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REGEXP_SYMBOL_in_predicate10792  */
static	ANTLR3_BITWORD FOLLOW_REGEXP_SYMBOL_in_predicate10792_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060D44880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_REGEXP_SYMBOL_in_predicate10792	= { FOLLOW_REGEXP_SYMBOL_in_predicate10792_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_bitwise_or_expression_in_predicate10795  */
static	ANTLR3_BITWORD FOLLOW_bitwise_or_expression_in_predicate10795_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_bitwise_or_expression_in_predicate10795	= { FOLLOW_bitwise_or_expression_in_predicate10795_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IN_SYMBOL_in_predicate10804  */
static	ANTLR3_BITWORD FOLLOW_IN_SYMBOL_in_predicate10804_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_IN_SYMBOL_in_predicate10804	= { FOLLOW_IN_SYMBOL_in_predicate10804_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_predicate_in_in_predicate10806  */
static	ANTLR3_BITWORD FOLLOW_predicate_in_in_predicate10806_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_predicate_in_in_predicate10806	= { FOLLOW_predicate_in_in_predicate10806_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SOUNDS_SYMBOL_in_predicate10825  */
static	ANTLR3_BITWORD FOLLOW_SOUNDS_SYMBOL_in_predicate10825_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_SOUNDS_SYMBOL_in_predicate10825	= { FOLLOW_SOUNDS_SYMBOL_in_predicate10825_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LIKE_SYMBOL_in_predicate10828  */
static	ANTLR3_BITWORD FOLLOW_LIKE_SYMBOL_in_predicate10828_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060D44880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_LIKE_SYMBOL_in_predicate10828	= { FOLLOW_LIKE_SYMBOL_in_predicate10828_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_bitwise_or_expression_in_predicate10830  */
static	ANTLR3_BITWORD FOLLOW_bitwise_or_expression_in_predicate10830_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_bitwise_or_expression_in_predicate10830	= { FOLLOW_bitwise_or_expression_in_predicate10830_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_subquery_in_predicate_in10849  */
static	ANTLR3_BITWORD FOLLOW_subquery_in_predicate_in10849_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_subquery_in_predicate_in10849	= { FOLLOW_subquery_in_predicate_in10849_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_with_parentheses_in_predicate_in10854  */
static	ANTLR3_BITWORD FOLLOW_expression_list_with_parentheses_in_predicate_in10854_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_list_with_parentheses_in_predicate_in10854	= { FOLLOW_expression_list_with_parentheses_in_predicate_in10854_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_bitwise_and_expression_in_bitwise_or_expression10863  */
static	ANTLR3_BITWORD FOLLOW_bitwise_and_expression_in_bitwise_or_expression10863_bits[]	= { ANTLR3_UINT64_LIT(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(0x0100000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_bitwise_and_expression_in_bitwise_or_expression10863	= { FOLLOW_bitwise_and_expression_in_bitwise_or_expression10863_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BITWISE_OR_OPERATOR_in_bitwise_or_expression10879  */
static	ANTLR3_BITWORD FOLLOW_BITWISE_OR_OPERATOR_in_bitwise_or_expression10879_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060D44880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_BITWISE_OR_OPERATOR_in_bitwise_or_expression10879	= { FOLLOW_BITWISE_OR_OPERATOR_in_bitwise_or_expression10879_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_bitwise_and_expression_in_bitwise_or_expression10882  */
static	ANTLR3_BITWORD FOLLOW_bitwise_and_expression_in_bitwise_or_expression10882_bits[]	= { ANTLR3_UINT64_LIT(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(0x0100000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_bitwise_and_expression_in_bitwise_or_expression10882	= { FOLLOW_bitwise_and_expression_in_bitwise_or_expression10882_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_shift_expression_in_bitwise_and_expression10893  */
static	ANTLR3_BITWORD FOLLOW_shift_expression_in_bitwise_and_expression10893_bits[]	= { ANTLR3_UINT64_LIT(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(0x0040000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_shift_expression_in_bitwise_and_expression10893	= { FOLLOW_shift_expression_in_bitwise_and_expression10893_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BITWISE_AND_OPERATOR_in_bitwise_and_expression10909  */
static	ANTLR3_BITWORD FOLLOW_BITWISE_AND_OPERATOR_in_bitwise_and_expression10909_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060D44880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_BITWISE_AND_OPERATOR_in_bitwise_and_expression10909	= { FOLLOW_BITWISE_AND_OPERATOR_in_bitwise_and_expression10909_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_shift_expression_in_bitwise_and_expression10912  */
static	ANTLR3_BITWORD FOLLOW_shift_expression_in_bitwise_and_expression10912_bits[]	= { ANTLR3_UINT64_LIT(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(0x0040000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_shift_expression_in_bitwise_and_expression10912	= { FOLLOW_shift_expression_in_bitwise_and_expression10912_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_additive_expression_in_shift_expression10923  */
static	ANTLR3_BITWORD FOLLOW_additive_expression_in_shift_expression10923_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000030000) };
static  ANTLR3_BITSET_LIST FOLLOW_additive_expression_in_shift_expression10923	= { FOLLOW_additive_expression_in_shift_expression10923_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_shift_expression10939  */
static	ANTLR3_BITWORD FOLLOW_set_in_shift_expression10939_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060D44880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_shift_expression10939	= { FOLLOW_set_in_shift_expression10939_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_additive_expression_in_shift_expression10948  */
static	ANTLR3_BITWORD FOLLOW_additive_expression_in_shift_expression10948_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000030000) };
static  ANTLR3_BITSET_LIST FOLLOW_additive_expression_in_shift_expression10948	= { FOLLOW_additive_expression_in_shift_expression10948_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_multiplicative_expression_in_additive_expression10959  */
static	ANTLR3_BITWORD FOLLOW_multiplicative_expression_in_additive_expression10959_bits[]	= { ANTLR3_UINT64_LIT(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(0x0800000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_multiplicative_expression_in_additive_expression10959	= { FOLLOW_multiplicative_expression_in_additive_expression10959_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_additive_expression10975  */
static	ANTLR3_BITWORD FOLLOW_set_in_additive_expression10975_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060D44880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_additive_expression10975	= { FOLLOW_set_in_additive_expression10975_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_multiplicative_expression_in_additive_expression10984  */
static	ANTLR3_BITWORD FOLLOW_multiplicative_expression_in_additive_expression10984_bits[]	= { ANTLR3_UINT64_LIT(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(0x0800000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_multiplicative_expression_in_additive_expression10984	= { FOLLOW_multiplicative_expression_in_additive_expression10984_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_bitwise_xor_expression_in_multiplicative_expression10995  */
static	ANTLR3_BITWORD FOLLOW_bitwise_xor_expression_in_multiplicative_expression10995_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000008000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x500000000000C000) };
static  ANTLR3_BITSET_LIST FOLLOW_bitwise_xor_expression_in_multiplicative_expression10995	= { FOLLOW_bitwise_xor_expression_in_multiplicative_expression10995_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_multiplication_operator_in_multiplicative_expression11011  */
static	ANTLR3_BITWORD FOLLOW_multiplication_operator_in_multiplicative_expression11011_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060D44880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_multiplication_operator_in_multiplicative_expression11011	= { FOLLOW_multiplication_operator_in_multiplicative_expression11011_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_bitwise_xor_expression_in_multiplicative_expression11014  */
static	ANTLR3_BITWORD FOLLOW_bitwise_xor_expression_in_multiplicative_expression11014_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000008000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x500000000000C000) };
static  ANTLR3_BITSET_LIST FOLLOW_bitwise_xor_expression_in_multiplicative_expression11014	= { FOLLOW_bitwise_xor_expression_in_multiplicative_expression11014_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_concat_expression_in_bitwise_xor_expression11025  */
static	ANTLR3_BITWORD FOLLOW_concat_expression_in_bitwise_xor_expression11025_bits[]	= { ANTLR3_UINT64_LIT(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_concat_expression_in_bitwise_xor_expression11025	= { FOLLOW_concat_expression_in_bitwise_xor_expression11025_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BITWISE_XOR_OPERATOR_in_bitwise_xor_expression11041  */
static	ANTLR3_BITWORD FOLLOW_BITWISE_XOR_OPERATOR_in_bitwise_xor_expression11041_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060D44880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_BITWISE_XOR_OPERATOR_in_bitwise_xor_expression11041	= { FOLLOW_BITWISE_XOR_OPERATOR_in_bitwise_xor_expression11041_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_concat_expression_in_bitwise_xor_expression11044  */
static	ANTLR3_BITWORD FOLLOW_concat_expression_in_bitwise_xor_expression11044_bits[]	= { ANTLR3_UINT64_LIT(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_concat_expression_in_bitwise_xor_expression11044	= { FOLLOW_concat_expression_in_bitwise_xor_expression11044_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_unary_expression_in_concat_expression11056  */
static	ANTLR3_BITWORD FOLLOW_unary_expression_in_concat_expression11056_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_unary_expression_in_concat_expression11056	= { FOLLOW_unary_expression_in_concat_expression11056_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CONCAT_PIPES_SYMBOL_in_concat_expression11072  */
static	ANTLR3_BITWORD FOLLOW_CONCAT_PIPES_SYMBOL_in_concat_expression11072_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060D44880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_CONCAT_PIPES_SYMBOL_in_concat_expression11072	= { FOLLOW_CONCAT_PIPES_SYMBOL_in_concat_expression11072_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_unary_expression_in_concat_expression11075  */
static	ANTLR3_BITWORD FOLLOW_unary_expression_in_concat_expression11075_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_unary_expression_in_concat_expression11075	= { FOLLOW_unary_expression_in_concat_expression11075_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_unary_expression11086  */
static	ANTLR3_BITWORD FOLLOW_set_in_unary_expression11086_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060D44880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_unary_expression11086	= { FOLLOW_set_in_unary_expression11086_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_unary_expression_in_unary_expression11098  */
static	ANTLR3_BITWORD FOLLOW_unary_expression_in_unary_expression11098_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_unary_expression_in_unary_expression11098	= { FOLLOW_unary_expression_in_unary_expression11098_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_not_expression_in_unary_expression11103  */
static	ANTLR3_BITWORD FOLLOW_not_expression_in_unary_expression11103_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_not_expression_in_unary_expression11103	= { FOLLOW_not_expression_in_unary_expression11103_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_not2_rule_in_not_expression11112  */
static	ANTLR3_BITWORD FOLLOW_not2_rule_in_not_expression11112_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060D04880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1C37000122E00600), ANTLR3_UINT64_LIT(0x0400011810120800), ANTLR3_UINT64_LIT(0x0000000C00000000) };
static  ANTLR3_BITSET_LIST FOLLOW_not2_rule_in_not_expression11112	= { FOLLOW_not2_rule_in_not_expression11112_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_interval_expression_in_not_expression11115  */
static	ANTLR3_BITWORD FOLLOW_interval_expression_in_not_expression11115_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_interval_expression_in_not_expression11115	= { FOLLOW_interval_expression_in_not_expression11115_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTERVAL_SYMBOL_in_interval_expression11124  */
static	ANTLR3_BITWORD FOLLOW_INTERVAL_SYMBOL_in_interval_expression11124_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_INTERVAL_SYMBOL_in_interval_expression11124	= { FOLLOW_INTERVAL_SYMBOL_in_interval_expression11124_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_interval_function_in_interval_expression11156  */
static	ANTLR3_BITWORD FOLLOW_interval_function_in_interval_expression11156_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_interval_function_in_interval_expression11156	= { FOLLOW_interval_function_in_interval_expression11156_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_interval_time_span_in_interval_expression11163  */
static	ANTLR3_BITWORD FOLLOW_interval_time_span_in_interval_expression11163_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_interval_time_span_in_interval_expression11163	= { FOLLOW_interval_time_span_in_interval_expression11163_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_primary_in_interval_expression11172  */
static	ANTLR3_BITWORD FOLLOW_primary_in_interval_expression11172_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_primary_in_interval_expression11172	= { FOLLOW_primary_in_interval_expression11172_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_interval_function11181  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_interval_function11181_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_interval_function11181	= { FOLLOW_OPEN_PAR_SYMBOL_in_interval_function11181_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_interval_function11183  */
static	ANTLR3_BITWORD FOLLOW_expression_in_interval_function11183_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_interval_function11183	= { FOLLOW_expression_in_interval_function11183_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_interval_function11186  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_interval_function11186_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_interval_function11186	= { FOLLOW_COMMA_SYMBOL_in_interval_function11186_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_interval_function11188  */
static	ANTLR3_BITWORD FOLLOW_expression_in_interval_function11188_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_interval_function11188	= { FOLLOW_expression_in_interval_function11188_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_interval_function11192  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_interval_function11192_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_interval_function11192	= { FOLLOW_CLOSE_PAR_SYMBOL_in_interval_function11192_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_interval_in_interval_time_span11224  */
static	ANTLR3_BITWORD FOLLOW_interval_in_interval_time_span11224_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_interval_in_interval_time_span11224	= { FOLLOW_interval_in_interval_time_span11224_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_literal_in_primary11260  */
static	ANTLR3_BITWORD FOLLOW_literal_in_primary11260_bits[]	= { ANTLR3_UINT64_LIT(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_literal_in_primary11260	= { FOLLOW_literal_in_primary11260_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_function_call_in_primary11266  */
static	ANTLR3_BITWORD FOLLOW_function_call_in_primary11266_bits[]	= { ANTLR3_UINT64_LIT(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_function_call_in_primary11266	= { FOLLOW_function_call_in_primary11266_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_runtime_function_call_in_primary11272  */
static	ANTLR3_BITWORD FOLLOW_runtime_function_call_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(0x0000000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_runtime_function_call_in_primary11272	= { FOLLOW_runtime_function_call_in_primary11272_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_ref_in_primary11279  */
static	ANTLR3_BITWORD FOLLOW_column_ref_in_primary11279_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000080000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_column_ref_in_primary11279	= { FOLLOW_column_ref_in_primary11279_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_jsonOperator_in_primary11281  */
static	ANTLR3_BITWORD FOLLOW_jsonOperator_in_primary11281_bits[]	= { ANTLR3_UINT64_LIT(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_jsonOperator_in_primary11281	= { FOLLOW_jsonOperator_in_primary11281_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARAM_MARKER_in_primary11288  */
static	ANTLR3_BITWORD FOLLOW_PARAM_MARKER_in_primary11288_bits[]	= { ANTLR3_UINT64_LIT(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_PARAM_MARKER_in_primary11288	= { FOLLOW_PARAM_MARKER_in_primary11288_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_variable_in_primary11294  */
static	ANTLR3_BITWORD FOLLOW_variable_in_primary11294_bits[]	= { ANTLR3_UINT64_LIT(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_variable_in_primary11294	= { FOLLOW_variable_in_primary11294_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EXISTS_SYMBOL_in_primary11300  */
static	ANTLR3_BITWORD FOLLOW_EXISTS_SYMBOL_in_primary11300_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_EXISTS_SYMBOL_in_primary11300	= { FOLLOW_EXISTS_SYMBOL_in_primary11300_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_subquery_in_primary11302  */
static	ANTLR3_BITWORD FOLLOW_subquery_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(0x0000000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_subquery_in_primary11302	= { FOLLOW_subquery_in_primary11302_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_with_nested_parentheses_in_primary11308  */
static	ANTLR3_BITWORD FOLLOW_expression_with_nested_parentheses_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(0x0000000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_with_nested_parentheses_in_primary11308	= { FOLLOW_expression_with_nested_parentheses_in_primary11308_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ROW_SYMBOL_in_primary11314  */
static	ANTLR3_BITWORD FOLLOW_ROW_SYMBOL_in_primary11314_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_ROW_SYMBOL_in_primary11314	= { FOLLOW_ROW_SYMBOL_in_primary11314_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_primary11316  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_primary11316_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_primary11316	= { FOLLOW_OPEN_PAR_SYMBOL_in_primary11316_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_primary11318  */
static	ANTLR3_BITWORD FOLLOW_expression_in_primary11318_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_primary11318	= { FOLLOW_expression_in_primary11318_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_primary11321  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_primary11321_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_primary11321	= { FOLLOW_COMMA_SYMBOL_in_primary11321_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_primary11323  */
static	ANTLR3_BITWORD FOLLOW_expression_in_primary11323_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_primary11323	= { FOLLOW_expression_in_primary11323_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_primary11327  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_primary11327_bits[]	= { ANTLR3_UINT64_LIT(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_CLOSE_PAR_SYMBOL_in_primary11327	= { FOLLOW_CLOSE_PAR_SYMBOL_in_primary11327_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_CURLY_SYMBOL_in_primary11333  */
static	ANTLR3_BITWORD FOLLOW_OPEN_CURLY_SYMBOL_in_primary11333_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_CURLY_SYMBOL_in_primary11333	= { FOLLOW_OPEN_CURLY_SYMBOL_in_primary11333_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_primary11335  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_primary11335_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_primary11335	= { FOLLOW_identifier_in_primary11335_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_primary11337  */
static	ANTLR3_BITWORD FOLLOW_expression_in_primary11337_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_primary11337	= { FOLLOW_expression_in_primary11337_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_CURLY_SYMBOL_in_primary11339  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_CURLY_SYMBOL_in_primary11339_bits[]	= { ANTLR3_UINT64_LIT(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_CLOSE_CURLY_SYMBOL_in_primary11339	= { FOLLOW_CLOSE_CURLY_SYMBOL_in_primary11339_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_match_expression_in_primary11345  */
static	ANTLR3_BITWORD FOLLOW_match_expression_in_primary11345_bits[]	= { ANTLR3_UINT64_LIT(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_match_expression_in_primary11345	= { FOLLOW_match_expression_in_primary11345_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_case_expression_in_primary11351  */
static	ANTLR3_BITWORD FOLLOW_case_expression_in_primary11351_bits[]	= { ANTLR3_UINT64_LIT(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_case_expression_in_primary11351	= { FOLLOW_case_expression_in_primary11351_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_cast_expression_in_primary11357  */
static	ANTLR3_BITWORD FOLLOW_cast_expression_in_primary11357_bits[]	= { ANTLR3_UINT64_LIT(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_cast_expression_in_primary11357	= { FOLLOW_cast_expression_in_primary11357_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLLATE_SYMBOL_in_primary11379  */
static	ANTLR3_BITWORD FOLLOW_COLLATE_SYMBOL_in_primary11379_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_COLLATE_SYMBOL_in_primary11379	= { FOLLOW_COLLATE_SYMBOL_in_primary11379_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_collation_name_in_primary11381  */
static	ANTLR3_BITWORD FOLLOW_collation_name_in_primary11381_bits[]	= { ANTLR3_UINT64_LIT(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_collation_name_in_primary11381	= { FOLLOW_collation_name_in_primary11381_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_JSON_SEPARATOR_SYMBOL_in_jsonOperator11395  */
static	ANTLR3_BITWORD FOLLOW_JSON_SEPARATOR_SYMBOL_in_jsonOperator11395_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_JSON_SEPARATOR_SYMBOL_in_jsonOperator11395	= { FOLLOW_JSON_SEPARATOR_SYMBOL_in_jsonOperator11395_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_jsonOperator11397  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_jsonOperator11397_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_jsonOperator11397	= { FOLLOW_text_string_in_jsonOperator11397_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_JSON_UNQUOTED_SEPARATOR_SYMBOL_in_jsonOperator11405  */
static	ANTLR3_BITWORD FOLLOW_JSON_UNQUOTED_SEPARATOR_SYMBOL_in_jsonOperator11405_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_JSON_UNQUOTED_SEPARATOR_SYMBOL_in_jsonOperator11405	= { FOLLOW_JSON_UNQUOTED_SEPARATOR_SYMBOL_in_jsonOperator11405_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_jsonOperator11407  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_jsonOperator11407_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_jsonOperator11407	= { FOLLOW_text_string_in_jsonOperator11407_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_subquery_in_expression_with_nested_parentheses11420  */
static	ANTLR3_BITWORD FOLLOW_subquery_in_expression_with_nested_parentheses11420_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_subquery_in_expression_with_nested_parentheses11420	= { FOLLOW_subquery_in_expression_with_nested_parentheses11420_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_with_parentheses_in_expression_with_nested_parentheses11425  */
static	ANTLR3_BITWORD FOLLOW_expression_list_with_parentheses_in_expression_with_nested_parentheses11425_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_list_with_parentheses_in_expression_with_nested_parentheses11425	= { FOLLOW_expression_list_with_parentheses_in_expression_with_nested_parentheses11425_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_runtime_function_call_expression_in_runtime_function_call11503  */
static	ANTLR3_BITWORD FOLLOW_runtime_function_call_expression_in_runtime_function_call11503_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_runtime_function_call_expression_in_runtime_function_call11503	= { FOLLOW_runtime_function_call_expression_in_runtime_function_call11503_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHAR_SYMBOL_in_runtime_function_call_expression11522  */
static	ANTLR3_BITWORD FOLLOW_CHAR_SYMBOL_in_runtime_function_call_expression11522_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CHAR_SYMBOL_in_runtime_function_call_expression11522	= { FOLLOW_CHAR_SYMBOL_in_runtime_function_call_expression11522_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11524  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11524_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11524	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11524_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_in_runtime_function_call_expression11526  */
static	ANTLR3_BITWORD FOLLOW_expression_list_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(0x8000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_list_in_runtime_function_call_expression11526	= { FOLLOW_expression_list_in_runtime_function_call_expression11526_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USING_SYMBOL_in_runtime_function_call_expression11529  */
static	ANTLR3_BITWORD FOLLOW_USING_SYMBOL_in_runtime_function_call_expression11529_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000010), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_USING_SYMBOL_in_runtime_function_call_expression11529	= { FOLLOW_USING_SYMBOL_in_runtime_function_call_expression11529_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_name_in_runtime_function_call_expression11531  */
static	ANTLR3_BITWORD FOLLOW_charset_name_in_runtime_function_call_expression11531_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_charset_name_in_runtime_function_call_expression11531	= { FOLLOW_charset_name_in_runtime_function_call_expression11531_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11535  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11535_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11535	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11535_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CURRENT_USER_SYMBOL_in_runtime_function_call_expression11540  */
static	ANTLR3_BITWORD FOLLOW_CURRENT_USER_SYMBOL_in_runtime_function_call_expression11540_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CURRENT_USER_SYMBOL_in_runtime_function_call_expression11540	= { FOLLOW_CURRENT_USER_SYMBOL_in_runtime_function_call_expression11540_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_parentheses_in_runtime_function_call_expression11542  */
static	ANTLR3_BITWORD FOLLOW_parentheses_in_runtime_function_call_expression11542_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_parentheses_in_runtime_function_call_expression11542	= { FOLLOW_parentheses_in_runtime_function_call_expression11542_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATE_SYMBOL_in_runtime_function_call_expression11548  */
static	ANTLR3_BITWORD FOLLOW_DATE_SYMBOL_in_runtime_function_call_expression11548_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_DATE_SYMBOL_in_runtime_function_call_expression11548	= { FOLLOW_DATE_SYMBOL_in_runtime_function_call_expression11548_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11550  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11550_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11550	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11550_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11552  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11552_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11552	= { FOLLOW_expression_in_runtime_function_call_expression11552_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11554  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11554_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11554	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11554_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DAY_SYMBOL_in_runtime_function_call_expression11559  */
static	ANTLR3_BITWORD FOLLOW_DAY_SYMBOL_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DAY_SYMBOL_in_runtime_function_call_expression11559	= { FOLLOW_DAY_SYMBOL_in_runtime_function_call_expression11559_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11561  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11561_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11561	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11561_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11563  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11563_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11563	= { FOLLOW_expression_in_runtime_function_call_expression11563_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11565  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11565_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11565	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11565_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_HOUR_SYMBOL_in_runtime_function_call_expression11570  */
static	ANTLR3_BITWORD FOLLOW_HOUR_SYMBOL_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_HOUR_SYMBOL_in_runtime_function_call_expression11570	= { FOLLOW_HOUR_SYMBOL_in_runtime_function_call_expression11570_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11572  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11572_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11572	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11572_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11574  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11574_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11574	= { FOLLOW_expression_in_runtime_function_call_expression11574_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11576  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11576_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11576	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11576_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INSERT_SYMBOL_in_runtime_function_call_expression11581  */
static	ANTLR3_BITWORD FOLLOW_INSERT_SYMBOL_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INSERT_SYMBOL_in_runtime_function_call_expression11581	= { FOLLOW_INSERT_SYMBOL_in_runtime_function_call_expression11581_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11583  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11583_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11583	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11583_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11585  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11585_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11585	= { FOLLOW_expression_in_runtime_function_call_expression11585_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11587  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11587_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11587	= { FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11587_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11589  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11589_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11589	= { FOLLOW_expression_in_runtime_function_call_expression11589_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11591  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11591_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11591	= { FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11591_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11593  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11593_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11593	= { FOLLOW_expression_in_runtime_function_call_expression11593_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11595  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11595_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11595	= { FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11595_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11597  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11597_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11597	= { FOLLOW_expression_in_runtime_function_call_expression11597_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11599  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11599_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11599	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11599_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LEFT_SYMBOL_in_runtime_function_call_expression11606  */
static	ANTLR3_BITWORD FOLLOW_LEFT_SYMBOL_in_runtime_function_call_expression11606_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_LEFT_SYMBOL_in_runtime_function_call_expression11606	= { FOLLOW_LEFT_SYMBOL_in_runtime_function_call_expression11606_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11608  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11608_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11608	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11608_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11610  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11610_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11610	= { FOLLOW_expression_in_runtime_function_call_expression11610_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11612  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11612_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11612	= { FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11612_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11614  */
static	ANTLR3_BITWORD FOLLOW_expression_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(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_runtime_function_call_expression11614	= { FOLLOW_expression_in_runtime_function_call_expression11614_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11616  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11616_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11616	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11616_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MINUTE_SYMBOL_in_runtime_function_call_expression11621  */
static	ANTLR3_BITWORD FOLLOW_MINUTE_SYMBOL_in_runtime_function_call_expression11621_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MINUTE_SYMBOL_in_runtime_function_call_expression11621	= { FOLLOW_MINUTE_SYMBOL_in_runtime_function_call_expression11621_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11623  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11623_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11623	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11623_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11625  */
static	ANTLR3_BITWORD FOLLOW_expression_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(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_runtime_function_call_expression11625	= { FOLLOW_expression_in_runtime_function_call_expression11625_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11627  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11627_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11627	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11627_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MONTH_SYMBOL_in_runtime_function_call_expression11632  */
static	ANTLR3_BITWORD FOLLOW_MONTH_SYMBOL_in_runtime_function_call_expression11632_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MONTH_SYMBOL_in_runtime_function_call_expression11632	= { FOLLOW_MONTH_SYMBOL_in_runtime_function_call_expression11632_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11634  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11634_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11634	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11634_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11636  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11636_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11636	= { FOLLOW_expression_in_runtime_function_call_expression11636_bits, 11	};
/** 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_RIGHT_SYMBOL_in_runtime_function_call_expression11643  */
static	ANTLR3_BITWORD FOLLOW_RIGHT_SYMBOL_in_runtime_function_call_expression11643_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_RIGHT_SYMBOL_in_runtime_function_call_expression11643	= { FOLLOW_RIGHT_SYMBOL_in_runtime_function_call_expression11643_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11645  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11645_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11645	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11645_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11647  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11647_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11647	= { FOLLOW_expression_in_runtime_function_call_expression11647_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11649  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11649_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11649	= { FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11649_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11651  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11651_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11651	= { FOLLOW_expression_in_runtime_function_call_expression11651_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11653  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11653_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11653	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11653_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SECOND_SYMBOL_in_runtime_function_call_expression11658  */
static	ANTLR3_BITWORD FOLLOW_SECOND_SYMBOL_in_runtime_function_call_expression11658_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_SECOND_SYMBOL_in_runtime_function_call_expression11658	= { FOLLOW_SECOND_SYMBOL_in_runtime_function_call_expression11658_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11660  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11660_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11660	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11660_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11662  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11662_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11662	= { FOLLOW_expression_in_runtime_function_call_expression11662_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11664  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11664_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11664	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11664_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TIME_SYMBOL_in_runtime_function_call_expression11669  */
static	ANTLR3_BITWORD FOLLOW_TIME_SYMBOL_in_runtime_function_call_expression11669_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_TIME_SYMBOL_in_runtime_function_call_expression11669	= { FOLLOW_TIME_SYMBOL_in_runtime_function_call_expression11669_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11671  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11671_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11671	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11671_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11673  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11673_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11673	= { FOLLOW_expression_in_runtime_function_call_expression11673_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11675  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11675_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11675	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11675_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TIMESTAMP_SYMBOL_in_runtime_function_call_expression11680  */
static	ANTLR3_BITWORD FOLLOW_TIMESTAMP_SYMBOL_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(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_TIMESTAMP_SYMBOL_in_runtime_function_call_expression11680	= { FOLLOW_TIMESTAMP_SYMBOL_in_runtime_function_call_expression11680_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11682  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11682_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11682	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11682_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11684  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11684_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_runtime_function_call_expression11684	= { FOLLOW_expression_in_runtime_function_call_expression11684_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11687  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11687_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11687	= { FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11687_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11689  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11689_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11689	= { FOLLOW_expression_in_runtime_function_call_expression11689_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11693  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11693_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11693	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11693_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_trim_function_in_runtime_function_call_expression11698  */
static	ANTLR3_BITWORD FOLLOW_trim_function_in_runtime_function_call_expression11698_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_trim_function_in_runtime_function_call_expression11698	= { FOLLOW_trim_function_in_runtime_function_call_expression11698_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USER_SYMBOL_in_runtime_function_call_expression11703  */
static	ANTLR3_BITWORD FOLLOW_USER_SYMBOL_in_runtime_function_call_expression11703_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_USER_SYMBOL_in_runtime_function_call_expression11703	= { FOLLOW_USER_SYMBOL_in_runtime_function_call_expression11703_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_parentheses_in_runtime_function_call_expression11705  */
static	ANTLR3_BITWORD FOLLOW_parentheses_in_runtime_function_call_expression11705_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_parentheses_in_runtime_function_call_expression11705	= { FOLLOW_parentheses_in_runtime_function_call_expression11705_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VALUES_SYMBOL_in_runtime_function_call_expression11710  */
static	ANTLR3_BITWORD FOLLOW_VALUES_SYMBOL_in_runtime_function_call_expression11710_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_VALUES_SYMBOL_in_runtime_function_call_expression11710	= { FOLLOW_VALUES_SYMBOL_in_runtime_function_call_expression11710_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11712  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11712_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11712	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11712_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11714  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11714_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11714	= { FOLLOW_expression_in_runtime_function_call_expression11714_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11716  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11716_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11716	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11716_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_YEAR_SYMBOL_in_runtime_function_call_expression11721  */
static	ANTLR3_BITWORD FOLLOW_YEAR_SYMBOL_in_runtime_function_call_expression11721_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_YEAR_SYMBOL_in_runtime_function_call_expression11721	= { FOLLOW_YEAR_SYMBOL_in_runtime_function_call_expression11721_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11723  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11723_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11723	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11723_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11725  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11725_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11725	= { FOLLOW_expression_in_runtime_function_call_expression11725_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11727  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11727_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11727	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11727_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_runtime_function_call_expression11735  */
static	ANTLR3_BITWORD FOLLOW_set_in_runtime_function_call_expression11735_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_set_in_runtime_function_call_expression11735	= { FOLLOW_set_in_runtime_function_call_expression11735_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11743  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11743_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11743	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11743_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11745  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11745_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11745	= { FOLLOW_expression_in_runtime_function_call_expression11745_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11747  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11747_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11747	= { FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11747_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11749  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11749_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11749	= { FOLLOW_expression_in_runtime_function_call_expression11749_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11751  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11751_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11751	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11751_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CURDATE_SYMBOL_in_runtime_function_call_expression11756  */
static	ANTLR3_BITWORD FOLLOW_CURDATE_SYMBOL_in_runtime_function_call_expression11756_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CURDATE_SYMBOL_in_runtime_function_call_expression11756	= { FOLLOW_CURDATE_SYMBOL_in_runtime_function_call_expression11756_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_parentheses_in_runtime_function_call_expression11758  */
static	ANTLR3_BITWORD FOLLOW_parentheses_in_runtime_function_call_expression11758_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_parentheses_in_runtime_function_call_expression11758	= { FOLLOW_parentheses_in_runtime_function_call_expression11758_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CURTIME_SYMBOL_in_runtime_function_call_expression11764  */
static	ANTLR3_BITWORD FOLLOW_CURTIME_SYMBOL_in_runtime_function_call_expression11764_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CURTIME_SYMBOL_in_runtime_function_call_expression11764	= { FOLLOW_CURTIME_SYMBOL_in_runtime_function_call_expression11764_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_time_function_parameters_in_runtime_function_call_expression11766  */
static	ANTLR3_BITWORD FOLLOW_time_function_parameters_in_runtime_function_call_expression11766_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_time_function_parameters_in_runtime_function_call_expression11766	= { FOLLOW_time_function_parameters_in_runtime_function_call_expression11766_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_runtime_function_call_expression11772  */
static	ANTLR3_BITWORD FOLLOW_set_in_runtime_function_call_expression11772_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_set_in_runtime_function_call_expression11772	= { FOLLOW_set_in_runtime_function_call_expression11772_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11780  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11780_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11780	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11780_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11782  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11782_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11782	= { FOLLOW_expression_in_runtime_function_call_expression11782_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11784  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11784_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000080000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11784	= { FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11784_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTERVAL_SYMBOL_in_runtime_function_call_expression11786  */
static	ANTLR3_BITWORD FOLLOW_INTERVAL_SYMBOL_in_runtime_function_call_expression11786_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_INTERVAL_SYMBOL_in_runtime_function_call_expression11786	= { FOLLOW_INTERVAL_SYMBOL_in_runtime_function_call_expression11786_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_interval_in_runtime_function_call_expression11788  */
static	ANTLR3_BITWORD FOLLOW_interval_in_runtime_function_call_expression11788_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_interval_in_runtime_function_call_expression11788	= { FOLLOW_interval_in_runtime_function_call_expression11788_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11790  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11790_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11790	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11790_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EXTRACT_SYMBOL_in_runtime_function_call_expression11795  */
static	ANTLR3_BITWORD FOLLOW_EXTRACT_SYMBOL_in_runtime_function_call_expression11795_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_EXTRACT_SYMBOL_in_runtime_function_call_expression11795	= { FOLLOW_EXTRACT_SYMBOL_in_runtime_function_call_expression11795_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11797  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11797_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(0x00001E0000000000), ANTLR3_UINT64_LIT(0x000000001C010000), ANTLR3_UINT64_LIT(0x0000000000600000), ANTLR3_UINT64_LIT(0x0000000000080000), ANTLR3_UINT64_LIT(0x0000080000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11797	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11797_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_interval_unit_in_runtime_function_call_expression11799  */
static	ANTLR3_BITWORD FOLLOW_interval_unit_in_runtime_function_call_expression11799_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_interval_unit_in_runtime_function_call_expression11799	= { FOLLOW_interval_unit_in_runtime_function_call_expression11799_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_runtime_function_call_expression11801  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_runtime_function_call_expression11801_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_runtime_function_call_expression11801	= { FOLLOW_FROM_SYMBOL_in_runtime_function_call_expression11801_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11803  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11803_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11803	= { FOLLOW_expression_in_runtime_function_call_expression11803_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11805  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11805_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11805	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11805_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GET_FORMAT_SYMBOL_in_runtime_function_call_expression11810  */
static	ANTLR3_BITWORD FOLLOW_GET_FORMAT_SYMBOL_in_runtime_function_call_expression11810_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_GET_FORMAT_SYMBOL_in_runtime_function_call_expression11810	= { FOLLOW_GET_FORMAT_SYMBOL_in_runtime_function_call_expression11810_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11812  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11812_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_expression11812	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11812_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_date_time_type_in_runtime_function_call_expression11814  */
static	ANTLR3_BITWORD FOLLOW_date_time_type_in_runtime_function_call_expression11814_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_date_time_type_in_runtime_function_call_expression11814	= { FOLLOW_date_time_type_in_runtime_function_call_expression11814_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11817  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11817_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11817	= { FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11817_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11819  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11819_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11819	= { FOLLOW_expression_in_runtime_function_call_expression11819_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11821  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11821_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11821	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11821_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NOW_SYMBOL_in_runtime_function_call_expression11826  */
static	ANTLR3_BITWORD FOLLOW_NOW_SYMBOL_in_runtime_function_call_expression11826_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_NOW_SYMBOL_in_runtime_function_call_expression11826	= { FOLLOW_NOW_SYMBOL_in_runtime_function_call_expression11826_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_time_function_parameters_in_runtime_function_call_expression11828  */
static	ANTLR3_BITWORD FOLLOW_time_function_parameters_in_runtime_function_call_expression11828_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_time_function_parameters_in_runtime_function_call_expression11828	= { FOLLOW_time_function_parameters_in_runtime_function_call_expression11828_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_POSITION_SYMBOL_in_runtime_function_call_expression11834  */
static	ANTLR3_BITWORD FOLLOW_POSITION_SYMBOL_in_runtime_function_call_expression11834_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_POSITION_SYMBOL_in_runtime_function_call_expression11834	= { FOLLOW_POSITION_SYMBOL_in_runtime_function_call_expression11834_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11836  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11836_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060D44880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11836	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11836_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_bitwise_or_expression_in_runtime_function_call_expression11838  */
static	ANTLR3_BITWORD FOLLOW_bitwise_or_expression_in_runtime_function_call_expression11838_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_bitwise_or_expression_in_runtime_function_call_expression11838	= { FOLLOW_bitwise_or_expression_in_runtime_function_call_expression11838_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IN_SYMBOL_in_runtime_function_call_expression11840  */
static	ANTLR3_BITWORD FOLLOW_IN_SYMBOL_in_runtime_function_call_expression11840_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_IN_SYMBOL_in_runtime_function_call_expression11840	= { FOLLOW_IN_SYMBOL_in_runtime_function_call_expression11840_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11842  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11842_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11842	= { FOLLOW_expression_in_runtime_function_call_expression11842_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11844  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11844_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11844	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11844_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_substring_function_in_runtime_function_call_expression11849  */
static	ANTLR3_BITWORD FOLLOW_substring_function_in_runtime_function_call_expression11849_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_substring_function_in_runtime_function_call_expression11849	= { FOLLOW_substring_function_in_runtime_function_call_expression11849_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SYSDATE_SYMBOL_in_runtime_function_call_expression11854  */
static	ANTLR3_BITWORD FOLLOW_SYSDATE_SYMBOL_in_runtime_function_call_expression11854_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SYSDATE_SYMBOL_in_runtime_function_call_expression11854	= { FOLLOW_SYSDATE_SYMBOL_in_runtime_function_call_expression11854_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_time_function_parameters_in_runtime_function_call_expression11856  */
static	ANTLR3_BITWORD FOLLOW_time_function_parameters_in_runtime_function_call_expression11856_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_time_function_parameters_in_runtime_function_call_expression11856	= { FOLLOW_time_function_parameters_in_runtime_function_call_expression11856_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_runtime_function_call_expression11862  */
static	ANTLR3_BITWORD FOLLOW_set_in_runtime_function_call_expression11862_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_set_in_runtime_function_call_expression11862	= { FOLLOW_set_in_runtime_function_call_expression11862_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11870  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11870_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(0x0000000000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11870	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11870_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_interval_timestamp_unit_in_runtime_function_call_expression11872  */
static	ANTLR3_BITWORD FOLLOW_interval_timestamp_unit_in_runtime_function_call_expression11872_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_interval_timestamp_unit_in_runtime_function_call_expression11872	= { FOLLOW_interval_timestamp_unit_in_runtime_function_call_expression11872_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11874  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11874_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11874	= { FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11874_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11876  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11876_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11876	= { FOLLOW_expression_in_runtime_function_call_expression11876_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11878  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11878_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11878	= { FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11878_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11880  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11880_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11880	= { FOLLOW_expression_in_runtime_function_call_expression11880_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11882  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11882_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11882	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11882_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UTC_DATE_SYMBOL_in_runtime_function_call_expression11887  */
static	ANTLR3_BITWORD FOLLOW_UTC_DATE_SYMBOL_in_runtime_function_call_expression11887_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_UTC_DATE_SYMBOL_in_runtime_function_call_expression11887	= { FOLLOW_UTC_DATE_SYMBOL_in_runtime_function_call_expression11887_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_parentheses_in_runtime_function_call_expression11889  */
static	ANTLR3_BITWORD FOLLOW_parentheses_in_runtime_function_call_expression11889_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_parentheses_in_runtime_function_call_expression11889	= { FOLLOW_parentheses_in_runtime_function_call_expression11889_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UTC_TIME_SYMBOL_in_runtime_function_call_expression11895  */
static	ANTLR3_BITWORD FOLLOW_UTC_TIME_SYMBOL_in_runtime_function_call_expression11895_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_UTC_TIME_SYMBOL_in_runtime_function_call_expression11895	= { FOLLOW_UTC_TIME_SYMBOL_in_runtime_function_call_expression11895_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_time_function_parameters_in_runtime_function_call_expression11897  */
static	ANTLR3_BITWORD FOLLOW_time_function_parameters_in_runtime_function_call_expression11897_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_time_function_parameters_in_runtime_function_call_expression11897	= { FOLLOW_time_function_parameters_in_runtime_function_call_expression11897_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UTC_TIMESTAMP_SYMBOL_in_runtime_function_call_expression11903  */
static	ANTLR3_BITWORD FOLLOW_UTC_TIMESTAMP_SYMBOL_in_runtime_function_call_expression11903_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_UTC_TIMESTAMP_SYMBOL_in_runtime_function_call_expression11903	= { FOLLOW_UTC_TIMESTAMP_SYMBOL_in_runtime_function_call_expression11903_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_time_function_parameters_in_runtime_function_call_expression11905  */
static	ANTLR3_BITWORD FOLLOW_time_function_parameters_in_runtime_function_call_expression11905_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_time_function_parameters_in_runtime_function_call_expression11905	= { FOLLOW_time_function_parameters_in_runtime_function_call_expression11905_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ASCII_SYMBOL_in_runtime_function_call_expression11914  */
static	ANTLR3_BITWORD FOLLOW_ASCII_SYMBOL_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ASCII_SYMBOL_in_runtime_function_call_expression11914	= { FOLLOW_ASCII_SYMBOL_in_runtime_function_call_expression11914_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11916  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_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(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11916	= { FOLLOW_OPEN_PAR_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_runtime_function_call_expression11918	= { FOLLOW_expression_in_runtime_function_call_expression11918_bits, 11	};
/** 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_CHARSET_SYMBOL_in_runtime_function_call_expression11925  */
static	ANTLR3_BITWORD FOLLOW_CHARSET_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(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CHARSET_SYMBOL_in_runtime_function_call_expression11925	= { FOLLOW_CHARSET_SYMBOL_in_runtime_function_call_expression11925_bits, 9	};
/** 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(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_runtime_function_call_expression11929	= { FOLLOW_expression_in_runtime_function_call_expression11929_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11931  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11931_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11931	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11931_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COALESCE_SYMBOL_in_runtime_function_call_expression11936  */
static	ANTLR3_BITWORD FOLLOW_COALESCE_SYMBOL_in_runtime_function_call_expression11936_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_COALESCE_SYMBOL_in_runtime_function_call_expression11936	= { FOLLOW_COALESCE_SYMBOL_in_runtime_function_call_expression11936_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_with_parentheses_in_runtime_function_call_expression11938  */
static	ANTLR3_BITWORD FOLLOW_expression_list_with_parentheses_in_runtime_function_call_expression11938_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_list_with_parentheses_in_runtime_function_call_expression11938	= { FOLLOW_expression_list_with_parentheses_in_runtime_function_call_expression11938_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLLATION_SYMBOL_in_runtime_function_call_expression11943  */
static	ANTLR3_BITWORD FOLLOW_COLLATION_SYMBOL_in_runtime_function_call_expression11943_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_COLLATION_SYMBOL_in_runtime_function_call_expression11943	= { FOLLOW_COLLATION_SYMBOL_in_runtime_function_call_expression11943_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11945  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11945_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11945	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11945_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11947  */
static	ANTLR3_BITWORD FOLLOW_expression_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(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_runtime_function_call_expression11947	= { FOLLOW_expression_in_runtime_function_call_expression11947_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11949  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11949_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11949	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11949_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATABASE_SYMBOL_in_runtime_function_call_expression11954  */
static	ANTLR3_BITWORD FOLLOW_DATABASE_SYMBOL_in_runtime_function_call_expression11954_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_DATABASE_SYMBOL_in_runtime_function_call_expression11954	= { FOLLOW_DATABASE_SYMBOL_in_runtime_function_call_expression11954_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_parentheses_in_runtime_function_call_expression11956  */
static	ANTLR3_BITWORD FOLLOW_parentheses_in_runtime_function_call_expression11956_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_parentheses_in_runtime_function_call_expression11956	= { FOLLOW_parentheses_in_runtime_function_call_expression11956_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IF_SYMBOL_in_runtime_function_call_expression11961  */
static	ANTLR3_BITWORD FOLLOW_IF_SYMBOL_in_runtime_function_call_expression11961_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_IF_SYMBOL_in_runtime_function_call_expression11961	= { FOLLOW_IF_SYMBOL_in_runtime_function_call_expression11961_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11963  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11963_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11963	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11963_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11965  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11965_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11965	= { FOLLOW_expression_in_runtime_function_call_expression11965_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11967  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11967_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11967	= { FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11967_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11969  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11969_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11969	= { FOLLOW_expression_in_runtime_function_call_expression11969_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11971  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11971_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11971	= { FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11971_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11973  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11973_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11973	= { FOLLOW_expression_in_runtime_function_call_expression11973_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11975  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11975_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11975	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11975_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FORMAT_SYMBOL_in_runtime_function_call_expression11980  */
static	ANTLR3_BITWORD FOLLOW_FORMAT_SYMBOL_in_runtime_function_call_expression11980_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_FORMAT_SYMBOL_in_runtime_function_call_expression11980	= { FOLLOW_FORMAT_SYMBOL_in_runtime_function_call_expression11980_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11982  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11982_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11982	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11982_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11984  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11984_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11984	= { FOLLOW_expression_in_runtime_function_call_expression11984_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11986  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11986_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11986	= { FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11986_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11988  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11988_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_runtime_function_call_expression11988	= { FOLLOW_expression_in_runtime_function_call_expression11988_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11991  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11991_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11991	= { FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11991_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11993  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11993_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11993	= { FOLLOW_expression_in_runtime_function_call_expression11993_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11997  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11997_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11997	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11997_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MICROSECOND_SYMBOL_in_runtime_function_call_expression12002  */
static	ANTLR3_BITWORD FOLLOW_MICROSECOND_SYMBOL_in_runtime_function_call_expression12002_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MICROSECOND_SYMBOL_in_runtime_function_call_expression12002	= { FOLLOW_MICROSECOND_SYMBOL_in_runtime_function_call_expression12002_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12004  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12004_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12004	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12004_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression12006  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression12006_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression12006	= { FOLLOW_expression_in_runtime_function_call_expression12006_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12008  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12008_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12008	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12008_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MOD_SYMBOL_in_runtime_function_call_expression12013  */
static	ANTLR3_BITWORD FOLLOW_MOD_SYMBOL_in_runtime_function_call_expression12013_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MOD_SYMBOL_in_runtime_function_call_expression12013	= { FOLLOW_MOD_SYMBOL_in_runtime_function_call_expression12013_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12015  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12015_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12015	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12015_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression12017  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression12017_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression12017	= { FOLLOW_expression_in_runtime_function_call_expression12017_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12019  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12019_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12019	= { FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12019_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression12021  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression12021_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression12021	= { FOLLOW_expression_in_runtime_function_call_expression12021_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12023  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12023_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12023	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12023_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OLD_PASSWORD_SYMBOL_in_runtime_function_call_expression12030  */
static	ANTLR3_BITWORD FOLLOW_OLD_PASSWORD_SYMBOL_in_runtime_function_call_expression12030_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_OLD_PASSWORD_SYMBOL_in_runtime_function_call_expression12030	= { FOLLOW_OLD_PASSWORD_SYMBOL_in_runtime_function_call_expression12030_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12032  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12032_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12032	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12032_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_runtime_function_call_expression12034  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_runtime_function_call_expression12034_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_string_literal_in_runtime_function_call_expression12034	= { FOLLOW_string_literal_in_runtime_function_call_expression12034_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12036  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12036_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12036	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12036_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PASSWORD_SYMBOL_in_runtime_function_call_expression12041  */
static	ANTLR3_BITWORD FOLLOW_PASSWORD_SYMBOL_in_runtime_function_call_expression12041_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_PASSWORD_SYMBOL_in_runtime_function_call_expression12041	= { FOLLOW_PASSWORD_SYMBOL_in_runtime_function_call_expression12041_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12043  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12043_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12043	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12043_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression12045  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression12045_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression12045	= { FOLLOW_expression_in_runtime_function_call_expression12045_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12047  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12047_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12047	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12047_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_QUARTER_SYMBOL_in_runtime_function_call_expression12052  */
static	ANTLR3_BITWORD FOLLOW_QUARTER_SYMBOL_in_runtime_function_call_expression12052_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_QUARTER_SYMBOL_in_runtime_function_call_expression12052	= { FOLLOW_QUARTER_SYMBOL_in_runtime_function_call_expression12052_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12054  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12054_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12054	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12054_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression12056  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression12056_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression12056	= { FOLLOW_expression_in_runtime_function_call_expression12056_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12058  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12058_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12058	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12058_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REPEAT_SYMBOL_in_runtime_function_call_expression12063  */
static	ANTLR3_BITWORD FOLLOW_REPEAT_SYMBOL_in_runtime_function_call_expression12063_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_REPEAT_SYMBOL_in_runtime_function_call_expression12063	= { FOLLOW_REPEAT_SYMBOL_in_runtime_function_call_expression12063_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12065  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12065_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12065	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12065_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression12067  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression12067_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression12067	= { FOLLOW_expression_in_runtime_function_call_expression12067_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12069  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12069_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12069	= { FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12069_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression12071  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression12071_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression12071	= { FOLLOW_expression_in_runtime_function_call_expression12071_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12073  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12073_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12073	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12073_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REPLACE_SYMBOL_in_runtime_function_call_expression12078  */
static	ANTLR3_BITWORD FOLLOW_REPLACE_SYMBOL_in_runtime_function_call_expression12078_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_REPLACE_SYMBOL_in_runtime_function_call_expression12078	= { FOLLOW_REPLACE_SYMBOL_in_runtime_function_call_expression12078_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12080  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12080_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12080	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12080_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression12082  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression12082_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression12082	= { FOLLOW_expression_in_runtime_function_call_expression12082_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12084  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12084_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12084	= { FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12084_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression12086  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression12086_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression12086	= { FOLLOW_expression_in_runtime_function_call_expression12086_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12088  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12088_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12088	= { FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12088_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression12090  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression12090_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression12090	= { FOLLOW_expression_in_runtime_function_call_expression12090_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12092  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12092_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12092	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12092_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REVERSE_SYMBOL_in_runtime_function_call_expression12097  */
static	ANTLR3_BITWORD FOLLOW_REVERSE_SYMBOL_in_runtime_function_call_expression12097_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_REVERSE_SYMBOL_in_runtime_function_call_expression12097	= { FOLLOW_REVERSE_SYMBOL_in_runtime_function_call_expression12097_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12099  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12099_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12099	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12099_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression12101  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression12101_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression12101	= { FOLLOW_expression_in_runtime_function_call_expression12101_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12103  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12103_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12103	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12103_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ROW_COUNT_SYMBOL_in_runtime_function_call_expression12108  */
static	ANTLR3_BITWORD FOLLOW_ROW_COUNT_SYMBOL_in_runtime_function_call_expression12108_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_ROW_COUNT_SYMBOL_in_runtime_function_call_expression12108	= { FOLLOW_ROW_COUNT_SYMBOL_in_runtime_function_call_expression12108_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_parentheses_in_runtime_function_call_expression12110  */
static	ANTLR3_BITWORD FOLLOW_parentheses_in_runtime_function_call_expression12110_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_parentheses_in_runtime_function_call_expression12110	= { FOLLOW_parentheses_in_runtime_function_call_expression12110_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TRUNCATE_SYMBOL_in_runtime_function_call_expression12115  */
static	ANTLR3_BITWORD FOLLOW_TRUNCATE_SYMBOL_in_runtime_function_call_expression12115_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_TRUNCATE_SYMBOL_in_runtime_function_call_expression12115	= { FOLLOW_TRUNCATE_SYMBOL_in_runtime_function_call_expression12115_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12117  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12117_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12117	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12117_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression12119  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression12119_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression12119	= { FOLLOW_expression_in_runtime_function_call_expression12119_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12121  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12121_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12121	= { FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12121_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression12123  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression12123_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression12123	= { FOLLOW_expression_in_runtime_function_call_expression12123_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12125  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12125_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12125	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12125_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WEEK_SYMBOL_in_runtime_function_call_expression12130  */
static	ANTLR3_BITWORD FOLLOW_WEEK_SYMBOL_in_runtime_function_call_expression12130_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_WEEK_SYMBOL_in_runtime_function_call_expression12130	= { FOLLOW_WEEK_SYMBOL_in_runtime_function_call_expression12130_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12132  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12132_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12132	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12132_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression12134  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression12134_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_runtime_function_call_expression12134	= { FOLLOW_expression_in_runtime_function_call_expression12134_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12137  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12137_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12137	= { FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12137_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression12139  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression12139_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression12139	= { FOLLOW_expression_in_runtime_function_call_expression12139_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12143  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12143_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12143	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12143_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WEIGHT_STRING_SYMBOL_in_runtime_function_call_expression12150  */
static	ANTLR3_BITWORD FOLLOW_WEIGHT_STRING_SYMBOL_in_runtime_function_call_expression12150_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_WEIGHT_STRING_SYMBOL_in_runtime_function_call_expression12150	= { FOLLOW_WEIGHT_STRING_SYMBOL_in_runtime_function_call_expression12150_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12152  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12152_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12152	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12152_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression12154  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression12154_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8000800000000000), ANTLR3_UINT64_LIT(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_runtime_function_call_expression12154	= { FOLLOW_expression_in_runtime_function_call_expression12154_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AS_SYMBOL_in_runtime_function_call_expression12164  */
static	ANTLR3_BITWORD FOLLOW_AS_SYMBOL_in_runtime_function_call_expression12164_bits[]	= { ANTLR3_UINT64_LIT(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_AS_SYMBOL_in_runtime_function_call_expression12164	= { FOLLOW_AS_SYMBOL_in_runtime_function_call_expression12164_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHAR_SYMBOL_in_runtime_function_call_expression12166  */
static	ANTLR3_BITWORD FOLLOW_CHAR_SYMBOL_in_runtime_function_call_expression12166_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CHAR_SYMBOL_in_runtime_function_call_expression12166	= { FOLLOW_CHAR_SYMBOL_in_runtime_function_call_expression12166_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_length_in_runtime_function_call_expression12168  */
static	ANTLR3_BITWORD FOLLOW_field_length_in_runtime_function_call_expression12168_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_field_length_in_runtime_function_call_expression12168	= { FOLLOW_field_length_in_runtime_function_call_expression12168_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_weight_string_levels_in_runtime_function_call_expression12172  */
static	ANTLR3_BITWORD FOLLOW_weight_string_levels_in_runtime_function_call_expression12172_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_weight_string_levels_in_runtime_function_call_expression12172	= { FOLLOW_weight_string_levels_in_runtime_function_call_expression12172_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AS_SYMBOL_in_runtime_function_call_expression12180  */
static	ANTLR3_BITWORD FOLLOW_AS_SYMBOL_in_runtime_function_call_expression12180_bits[]	= { ANTLR3_UINT64_LIT(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_AS_SYMBOL_in_runtime_function_call_expression12180	= { FOLLOW_AS_SYMBOL_in_runtime_function_call_expression12180_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_runtime_function_call_expression12182  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_runtime_function_call_expression12182_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_BINARY_SYMBOL_in_runtime_function_call_expression12182	= { FOLLOW_BINARY_SYMBOL_in_runtime_function_call_expression12182_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_length_in_runtime_function_call_expression12184  */
static	ANTLR3_BITWORD FOLLOW_field_length_in_runtime_function_call_expression12184_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_field_length_in_runtime_function_call_expression12184	= { FOLLOW_field_length_in_runtime_function_call_expression12184_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12191  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12191_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010810000800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12191	= { FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12191_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_runtime_function_call_expression12193  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_runtime_function_call_expression12193_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_ulong_number_in_runtime_function_call_expression12193	= { FOLLOW_ulong_number_in_runtime_function_call_expression12193_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12195  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12195_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010810000800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12195	= { FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12195_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_runtime_function_call_expression12197  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_runtime_function_call_expression12197_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_ulong_number_in_runtime_function_call_expression12197	= { FOLLOW_ulong_number_in_runtime_function_call_expression12197_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12199  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12199_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010810000800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12199	= { FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12199_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_runtime_function_call_expression12201  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_runtime_function_call_expression12201_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_ulong_number_in_runtime_function_call_expression12201	= { FOLLOW_ulong_number_in_runtime_function_call_expression12201_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12209  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12209_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12209	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12209_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_geometry_function_in_runtime_function_call_expression12214  */
static	ANTLR3_BITWORD FOLLOW_geometry_function_in_runtime_function_call_expression12214_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_geometry_function_in_runtime_function_call_expression12214	= { FOLLOW_geometry_function_in_runtime_function_call_expression12214_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_aggregate_function_in_runtime_function_call_expression12219  */
static	ANTLR3_BITWORD FOLLOW_aggregate_function_in_runtime_function_call_expression12219_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_aggregate_function_in_runtime_function_call_expression12219	= { FOLLOW_aggregate_function_in_runtime_function_call_expression12219_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_time_function_parameters12228  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_time_function_parameters12228_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0000010000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_time_function_parameters12228	= { FOLLOW_OPEN_PAR_SYMBOL_in_time_function_parameters12228_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_fractional_precision_in_time_function_parameters12230  */
static	ANTLR3_BITWORD FOLLOW_fractional_precision_in_time_function_parameters12230_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_fractional_precision_in_time_function_parameters12230	= { FOLLOW_fractional_precision_in_time_function_parameters12230_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_time_function_parameters12233  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_time_function_parameters12233_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_time_function_parameters12233	= { FOLLOW_CLOSE_PAR_SYMBOL_in_time_function_parameters12233_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_NUMBER_in_fractional_precision12246  */
static	ANTLR3_BITWORD FOLLOW_INT_NUMBER_in_fractional_precision12246_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_INT_NUMBER_in_fractional_precision12246	= { FOLLOW_INT_NUMBER_in_fractional_precision12246_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LEVEL_SYMBOL_in_weight_string_levels12255  */
static	ANTLR3_BITWORD FOLLOW_LEVEL_SYMBOL_in_weight_string_levels12255_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010800000000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_LEVEL_SYMBOL_in_weight_string_levels12255	= { FOLLOW_LEVEL_SYMBOL_in_weight_string_levels12255_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_real_ulong_number_in_weight_string_levels12262  */
static	ANTLR3_BITWORD FOLLOW_real_ulong_number_in_weight_string_levels12262_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_real_ulong_number_in_weight_string_levels12262	= { FOLLOW_real_ulong_number_in_weight_string_levels12262_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MINUS_OPERATOR_in_weight_string_levels12264  */
static	ANTLR3_BITWORD FOLLOW_MINUS_OPERATOR_in_weight_string_levels12264_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010800000000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MINUS_OPERATOR_in_weight_string_levels12264	= { FOLLOW_MINUS_OPERATOR_in_weight_string_levels12264_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_real_ulong_number_in_weight_string_levels12266  */
static	ANTLR3_BITWORD FOLLOW_real_ulong_number_in_weight_string_levels12266_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_real_ulong_number_in_weight_string_levels12266	= { FOLLOW_real_ulong_number_in_weight_string_levels12266_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_weight_string_level_list_item_in_weight_string_levels12272  */
static	ANTLR3_BITWORD FOLLOW_weight_string_level_list_item_in_weight_string_levels12272_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_weight_string_level_list_item_in_weight_string_levels12272	= { FOLLOW_weight_string_level_list_item_in_weight_string_levels12272_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_weight_string_levels12275  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_weight_string_levels12275_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010800000000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_weight_string_levels12275	= { FOLLOW_COMMA_SYMBOL_in_weight_string_levels12275_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_weight_string_level_list_item_in_weight_string_levels12277  */
static	ANTLR3_BITWORD FOLLOW_weight_string_level_list_item_in_weight_string_levels12277_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_weight_string_level_list_item_in_weight_string_levels12277	= { FOLLOW_weight_string_level_list_item_in_weight_string_levels12277_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_real_ulong_number_in_weight_string_level_list_item12291  */
static	ANTLR3_BITWORD FOLLOW_real_ulong_number_in_weight_string_level_list_item12291_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000000000), ANTLR3_UINT64_LIT(0x8000000000000000), ANTLR3_UINT64_LIT(0x0020000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_real_ulong_number_in_weight_string_level_list_item12291	= { FOLLOW_real_ulong_number_in_weight_string_level_list_item12291_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_weight_string_level_list_item12298  */
static	ANTLR3_BITWORD FOLLOW_set_in_weight_string_level_list_item12298_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_item12298	= { FOLLOW_set_in_weight_string_level_list_item12298_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REVERSE_SYMBOL_in_weight_string_level_list_item12306  */
static	ANTLR3_BITWORD FOLLOW_REVERSE_SYMBOL_in_weight_string_level_list_item12306_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_REVERSE_SYMBOL_in_weight_string_level_list_item12306	= { FOLLOW_REVERSE_SYMBOL_in_weight_string_level_list_item12306_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REVERSE_SYMBOL_in_weight_string_level_list_item12313  */
static	ANTLR3_BITWORD FOLLOW_REVERSE_SYMBOL_in_weight_string_level_list_item12313_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_REVERSE_SYMBOL_in_weight_string_level_list_item12313	= { FOLLOW_REVERSE_SYMBOL_in_weight_string_level_list_item12313_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TRIM_SYMBOL_in_trim_function12350  */
static	ANTLR3_BITWORD FOLLOW_TRIM_SYMBOL_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_TRIM_SYMBOL_in_trim_function12350	= { FOLLOW_TRIM_SYMBOL_in_trim_function12350_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_trim_function12352  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_trim_function12352_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013110), ANTLR3_UINT64_LIT(0x0A000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00680), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_trim_function12352	= { FOLLOW_OPEN_PAR_SYMBOL_in_trim_function12352_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_trim_function12359  */
static	ANTLR3_BITWORD FOLLOW_expression_in_trim_function12359_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_trim_function12359	= { FOLLOW_expression_in_trim_function12359_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_trim_function12362  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_trim_function12362_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_trim_function12362	= { FOLLOW_FROM_SYMBOL_in_trim_function12362_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_trim_function12364  */
static	ANTLR3_BITWORD FOLLOW_expression_in_trim_function12364_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_trim_function12364	= { FOLLOW_expression_in_trim_function12364_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LEADING_SYMBOL_in_trim_function12372  */
static	ANTLR3_BITWORD FOLLOW_LEADING_SYMBOL_in_trim_function12372_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204200C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_LEADING_SYMBOL_in_trim_function12372	= { FOLLOW_LEADING_SYMBOL_in_trim_function12372_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_trim_function12374  */
static	ANTLR3_BITWORD FOLLOW_expression_in_trim_function12374_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_trim_function12374	= { FOLLOW_expression_in_trim_function12374_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_trim_function12377  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_trim_function12377_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_trim_function12377	= { FOLLOW_FROM_SYMBOL_in_trim_function12377_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_trim_function12379  */
static	ANTLR3_BITWORD FOLLOW_expression_in_trim_function12379_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_trim_function12379	= { FOLLOW_expression_in_trim_function12379_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TRAILING_SYMBOL_in_trim_function12385  */
static	ANTLR3_BITWORD FOLLOW_TRAILING_SYMBOL_in_trim_function12385_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204200C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_TRAILING_SYMBOL_in_trim_function12385	= { FOLLOW_TRAILING_SYMBOL_in_trim_function12385_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_trim_function12387  */
static	ANTLR3_BITWORD FOLLOW_expression_in_trim_function12387_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_trim_function12387	= { FOLLOW_expression_in_trim_function12387_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_trim_function12390  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_trim_function12390_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_trim_function12390	= { FOLLOW_FROM_SYMBOL_in_trim_function12390_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_trim_function12392  */
static	ANTLR3_BITWORD FOLLOW_expression_in_trim_function12392_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_trim_function12392	= { FOLLOW_expression_in_trim_function12392_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BOTH_SYMBOL_in_trim_function12398  */
static	ANTLR3_BITWORD FOLLOW_BOTH_SYMBOL_in_trim_function12398_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204200C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_BOTH_SYMBOL_in_trim_function12398	= { FOLLOW_BOTH_SYMBOL_in_trim_function12398_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_trim_function12400  */
static	ANTLR3_BITWORD FOLLOW_expression_in_trim_function12400_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_trim_function12400	= { FOLLOW_expression_in_trim_function12400_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_trim_function12403  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_trim_function12403_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_trim_function12403	= { FOLLOW_FROM_SYMBOL_in_trim_function12403_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_trim_function12405  */
static	ANTLR3_BITWORD FOLLOW_expression_in_trim_function12405_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_trim_function12405	= { FOLLOW_expression_in_trim_function12405_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_trim_function12411  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_trim_function12411_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_trim_function12411	= { FOLLOW_CLOSE_PAR_SYMBOL_in_trim_function12411_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SUBSTRING_SYMBOL_in_substring_function12420  */
static	ANTLR3_BITWORD FOLLOW_SUBSTRING_SYMBOL_in_substring_function12420_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_SUBSTRING_SYMBOL_in_substring_function12420	= { FOLLOW_SUBSTRING_SYMBOL_in_substring_function12420_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_substring_function12422  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_substring_function12422_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_substring_function12422	= { FOLLOW_OPEN_PAR_SYMBOL_in_substring_function12422_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_substring_function12424  */
static	ANTLR3_BITWORD FOLLOW_expression_in_substring_function12424_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_substring_function12424	= { FOLLOW_expression_in_substring_function12424_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_substring_function12431  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_substring_function12431_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_substring_function12431	= { FOLLOW_COMMA_SYMBOL_in_substring_function12431_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_substring_function12433  */
static	ANTLR3_BITWORD FOLLOW_expression_in_substring_function12433_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_substring_function12433	= { FOLLOW_expression_in_substring_function12433_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_substring_function12436  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_substring_function12436_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_substring_function12436	= { FOLLOW_COMMA_SYMBOL_in_substring_function12436_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_substring_function12438  */
static	ANTLR3_BITWORD FOLLOW_expression_in_substring_function12438_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_substring_function12438	= { FOLLOW_expression_in_substring_function12438_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_substring_function12446  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_substring_function12446_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_substring_function12446	= { FOLLOW_FROM_SYMBOL_in_substring_function12446_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_substring_function12448  */
static	ANTLR3_BITWORD FOLLOW_expression_in_substring_function12448_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_substring_function12448	= { FOLLOW_expression_in_substring_function12448_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOR_SYMBOL_in_substring_function12451  */
static	ANTLR3_BITWORD FOLLOW_FOR_SYMBOL_in_substring_function12451_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_FOR_SYMBOL_in_substring_function12451	= { FOLLOW_FOR_SYMBOL_in_substring_function12451_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_substring_function12453  */
static	ANTLR3_BITWORD FOLLOW_expression_in_substring_function12453_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_substring_function12453	= { FOLLOW_expression_in_substring_function12453_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_substring_function12461  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_substring_function12461_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_substring_function12461	= { FOLLOW_CLOSE_PAR_SYMBOL_in_substring_function12461_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GEOMETRYCOLLECTION_SYMBOL_in_geometry_function12471  */
static	ANTLR3_BITWORD FOLLOW_GEOMETRYCOLLECTION_SYMBOL_in_geometry_function12471_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_GEOMETRYCOLLECTION_SYMBOL_in_geometry_function12471	= { FOLLOW_GEOMETRYCOLLECTION_SYMBOL_in_geometry_function12471_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_optional_expression_list_with_parentheses_in_geometry_function12473  */
static	ANTLR3_BITWORD FOLLOW_optional_expression_list_with_parentheses_in_geometry_function12473_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_optional_expression_list_with_parentheses_in_geometry_function12473	= { FOLLOW_optional_expression_list_with_parentheses_in_geometry_function12473_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LINESTRING_SYMBOL_in_geometry_function12478  */
static	ANTLR3_BITWORD FOLLOW_LINESTRING_SYMBOL_in_geometry_function12478_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_LINESTRING_SYMBOL_in_geometry_function12478	= { FOLLOW_LINESTRING_SYMBOL_in_geometry_function12478_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_with_parentheses_in_geometry_function12480  */
static	ANTLR3_BITWORD FOLLOW_expression_list_with_parentheses_in_geometry_function12480_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_list_with_parentheses_in_geometry_function12480	= { FOLLOW_expression_list_with_parentheses_in_geometry_function12480_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULTILINESTRING_SYMBOL_in_geometry_function12485  */
static	ANTLR3_BITWORD FOLLOW_MULTILINESTRING_SYMBOL_in_geometry_function12485_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MULTILINESTRING_SYMBOL_in_geometry_function12485	= { FOLLOW_MULTILINESTRING_SYMBOL_in_geometry_function12485_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_with_parentheses_in_geometry_function12487  */
static	ANTLR3_BITWORD FOLLOW_expression_list_with_parentheses_in_geometry_function12487_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_list_with_parentheses_in_geometry_function12487	= { FOLLOW_expression_list_with_parentheses_in_geometry_function12487_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULTIPOINT_SYMBOL_in_geometry_function12492  */
static	ANTLR3_BITWORD FOLLOW_MULTIPOINT_SYMBOL_in_geometry_function12492_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MULTIPOINT_SYMBOL_in_geometry_function12492	= { FOLLOW_MULTIPOINT_SYMBOL_in_geometry_function12492_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_with_parentheses_in_geometry_function12494  */
static	ANTLR3_BITWORD FOLLOW_expression_list_with_parentheses_in_geometry_function12494_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_list_with_parentheses_in_geometry_function12494	= { FOLLOW_expression_list_with_parentheses_in_geometry_function12494_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULTIPOLYGON_SYMBOL_in_geometry_function12499  */
static	ANTLR3_BITWORD FOLLOW_MULTIPOLYGON_SYMBOL_in_geometry_function12499_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MULTIPOLYGON_SYMBOL_in_geometry_function12499	= { FOLLOW_MULTIPOLYGON_SYMBOL_in_geometry_function12499_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_with_parentheses_in_geometry_function12501  */
static	ANTLR3_BITWORD FOLLOW_expression_list_with_parentheses_in_geometry_function12501_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_list_with_parentheses_in_geometry_function12501	= { FOLLOW_expression_list_with_parentheses_in_geometry_function12501_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_POINT_SYMBOL_in_geometry_function12506  */
static	ANTLR3_BITWORD FOLLOW_POINT_SYMBOL_in_geometry_function12506_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_POINT_SYMBOL_in_geometry_function12506	= { FOLLOW_POINT_SYMBOL_in_geometry_function12506_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_geometry_function12508  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_geometry_function12508_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_geometry_function12508	= { FOLLOW_OPEN_PAR_SYMBOL_in_geometry_function12508_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_geometry_function12510  */
static	ANTLR3_BITWORD FOLLOW_expression_in_geometry_function12510_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_geometry_function12510	= { FOLLOW_expression_in_geometry_function12510_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_geometry_function12512  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_geometry_function12512_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_geometry_function12512	= { FOLLOW_COMMA_SYMBOL_in_geometry_function12512_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_geometry_function12514  */
static	ANTLR3_BITWORD FOLLOW_expression_in_geometry_function12514_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_geometry_function12514	= { FOLLOW_expression_in_geometry_function12514_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_geometry_function12516  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_geometry_function12516_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_geometry_function12516	= { FOLLOW_CLOSE_PAR_SYMBOL_in_geometry_function12516_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_POLYGON_SYMBOL_in_geometry_function12521  */
static	ANTLR3_BITWORD FOLLOW_POLYGON_SYMBOL_in_geometry_function12521_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_POLYGON_SYMBOL_in_geometry_function12521	= { FOLLOW_POLYGON_SYMBOL_in_geometry_function12521_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_with_parentheses_in_geometry_function12523  */
static	ANTLR3_BITWORD FOLLOW_expression_list_with_parentheses_in_geometry_function12523_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_list_with_parentheses_in_geometry_function12523	= { FOLLOW_expression_list_with_parentheses_in_geometry_function12523_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CONTAINS_SYMBOL_in_geometry_function12530  */
static	ANTLR3_BITWORD FOLLOW_CONTAINS_SYMBOL_in_geometry_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(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CONTAINS_SYMBOL_in_geometry_function12530	= { FOLLOW_CONTAINS_SYMBOL_in_geometry_function12530_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_geometry_function12532  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_geometry_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(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_geometry_function12532	= { FOLLOW_OPEN_PAR_SYMBOL_in_geometry_function12532_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_geometry_function12534  */
static	ANTLR3_BITWORD FOLLOW_expression_in_geometry_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(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_expression_in_geometry_function12534	= { FOLLOW_expression_in_geometry_function12534_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_geometry_function12536  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_geometry_function12536_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_geometry_function12536	= { FOLLOW_COMMA_SYMBOL_in_geometry_function12536_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_geometry_function12538  */
static	ANTLR3_BITWORD FOLLOW_expression_in_geometry_function12538_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_geometry_function12538	= { FOLLOW_expression_in_geometry_function12538_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_geometry_function12540  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_geometry_function12540_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_geometry_function12540	= { FOLLOW_CLOSE_PAR_SYMBOL_in_geometry_function12540_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AVG_SYMBOL_in_aggregate_function12549  */
static	ANTLR3_BITWORD FOLLOW_AVG_SYMBOL_in_aggregate_function12549_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_AVG_SYMBOL_in_aggregate_function12549	= { FOLLOW_AVG_SYMBOL_in_aggregate_function12549_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12551  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12551_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(0x010000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12551	= { FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12551_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DISTINCT_SYMBOL_in_aggregate_function12553  */
static	ANTLR3_BITWORD FOLLOW_DISTINCT_SYMBOL_in_aggregate_function12553_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(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_DISTINCT_SYMBOL_in_aggregate_function12553	= { FOLLOW_DISTINCT_SYMBOL_in_aggregate_function12553_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_in_aggregate_expression_in_aggregate_function12556  */
static	ANTLR3_BITWORD FOLLOW_in_aggregate_expression_in_aggregate_function12556_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_in_aggregate_expression_in_aggregate_function12556	= { FOLLOW_in_aggregate_expression_in_aggregate_function12556_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12558  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12558_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12558	= { FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12558_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BIT_AND_SYMBOL_in_aggregate_function12563  */
static	ANTLR3_BITWORD FOLLOW_BIT_AND_SYMBOL_in_aggregate_function12563_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_BIT_AND_SYMBOL_in_aggregate_function12563	= { FOLLOW_BIT_AND_SYMBOL_in_aggregate_function12563_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12565  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12565_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(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12565	= { FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12565_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_in_aggregate_expression_in_aggregate_function12567	= { FOLLOW_in_aggregate_expression_in_aggregate_function12567_bits, 11	};
/** 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_BIT_OR_SYMBOL_in_aggregate_function12574  */
static	ANTLR3_BITWORD FOLLOW_BIT_OR_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(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_BIT_OR_SYMBOL_in_aggregate_function12574	= { FOLLOW_BIT_OR_SYMBOL_in_aggregate_function12574_bits, 9	};
/** 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(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_in_aggregate_expression_in_aggregate_function12578	= { FOLLOW_in_aggregate_expression_in_aggregate_function12578_bits, 11	};
/** 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_BIT_XOR_SYMBOL_in_aggregate_function12585  */
static	ANTLR3_BITWORD FOLLOW_BIT_XOR_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(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_BIT_XOR_SYMBOL_in_aggregate_function12585	= { FOLLOW_BIT_XOR_SYMBOL_in_aggregate_function12585_bits, 9	};
/** 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(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_in_aggregate_expression_in_aggregate_function12589	= { FOLLOW_in_aggregate_expression_in_aggregate_function12589_bits, 11	};
/** 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_count_function_in_aggregate_function12596  */
static	ANTLR3_BITWORD FOLLOW_count_function_in_aggregate_function12596_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_count_function_in_aggregate_function12596	= { FOLLOW_count_function_in_aggregate_function12596_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MIN_SYMBOL_in_aggregate_function12601  */
static	ANTLR3_BITWORD FOLLOW_MIN_SYMBOL_in_aggregate_function12601_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MIN_SYMBOL_in_aggregate_function12601	= { FOLLOW_MIN_SYMBOL_in_aggregate_function12601_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12603  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12603_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(0x010000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12603	= { FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12603_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DISTINCT_SYMBOL_in_aggregate_function12605  */
static	ANTLR3_BITWORD FOLLOW_DISTINCT_SYMBOL_in_aggregate_function12605_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(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_DISTINCT_SYMBOL_in_aggregate_function12605	= { FOLLOW_DISTINCT_SYMBOL_in_aggregate_function12605_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_in_aggregate_expression_in_aggregate_function12608  */
static	ANTLR3_BITWORD FOLLOW_in_aggregate_expression_in_aggregate_function12608_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_in_aggregate_expression_in_aggregate_function12608	= { FOLLOW_in_aggregate_expression_in_aggregate_function12608_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12610  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12610_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12610	= { FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12610_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MAX_SYMBOL_in_aggregate_function12615  */
static	ANTLR3_BITWORD FOLLOW_MAX_SYMBOL_in_aggregate_function12615_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MAX_SYMBOL_in_aggregate_function12615	= { FOLLOW_MAX_SYMBOL_in_aggregate_function12615_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12617  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12617_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(0x010000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12617	= { FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12617_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DISTINCT_SYMBOL_in_aggregate_function12619  */
static	ANTLR3_BITWORD FOLLOW_DISTINCT_SYMBOL_in_aggregate_function12619_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(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_DISTINCT_SYMBOL_in_aggregate_function12619	= { FOLLOW_DISTINCT_SYMBOL_in_aggregate_function12619_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_in_aggregate_expression_in_aggregate_function12622  */
static	ANTLR3_BITWORD FOLLOW_in_aggregate_expression_in_aggregate_function12622_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_in_aggregate_expression_in_aggregate_function12622	= { FOLLOW_in_aggregate_expression_in_aggregate_function12622_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12624  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12624_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12624	= { FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12624_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STD_SYMBOL_in_aggregate_function12629  */
static	ANTLR3_BITWORD FOLLOW_STD_SYMBOL_in_aggregate_function12629_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_STD_SYMBOL_in_aggregate_function12629	= { FOLLOW_STD_SYMBOL_in_aggregate_function12629_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12631  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12631_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(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12631	= { FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12631_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_in_aggregate_expression_in_aggregate_function12633  */
static	ANTLR3_BITWORD FOLLOW_in_aggregate_expression_in_aggregate_function12633_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_in_aggregate_expression_in_aggregate_function12633	= { FOLLOW_in_aggregate_expression_in_aggregate_function12633_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12635  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12635_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12635	= { FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12635_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VARIANCE_SYMBOL_in_aggregate_function12640  */
static	ANTLR3_BITWORD FOLLOW_VARIANCE_SYMBOL_in_aggregate_function12640_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_VARIANCE_SYMBOL_in_aggregate_function12640	= { FOLLOW_VARIANCE_SYMBOL_in_aggregate_function12640_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12642  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12642_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(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12642	= { FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12642_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_in_aggregate_expression_in_aggregate_function12644  */
static	ANTLR3_BITWORD FOLLOW_in_aggregate_expression_in_aggregate_function12644_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_in_aggregate_expression_in_aggregate_function12644	= { FOLLOW_in_aggregate_expression_in_aggregate_function12644_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12646  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12646_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12646	= { FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12646_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STDDEV_SAMP_SYMBOL_in_aggregate_function12651  */
static	ANTLR3_BITWORD FOLLOW_STDDEV_SAMP_SYMBOL_in_aggregate_function12651_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_STDDEV_SAMP_SYMBOL_in_aggregate_function12651	= { FOLLOW_STDDEV_SAMP_SYMBOL_in_aggregate_function12651_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12653  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12653_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(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12653	= { FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12653_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_in_aggregate_expression_in_aggregate_function12655  */
static	ANTLR3_BITWORD FOLLOW_in_aggregate_expression_in_aggregate_function12655_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_in_aggregate_expression_in_aggregate_function12655	= { FOLLOW_in_aggregate_expression_in_aggregate_function12655_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12657  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12657_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12657	= { FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12657_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VAR_SAMP_SYMBOL_in_aggregate_function12662  */
static	ANTLR3_BITWORD FOLLOW_VAR_SAMP_SYMBOL_in_aggregate_function12662_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_VAR_SAMP_SYMBOL_in_aggregate_function12662	= { FOLLOW_VAR_SAMP_SYMBOL_in_aggregate_function12662_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12664  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12664_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(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12664	= { FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12664_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_in_aggregate_expression_in_aggregate_function12666  */
static	ANTLR3_BITWORD FOLLOW_in_aggregate_expression_in_aggregate_function12666_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_in_aggregate_expression_in_aggregate_function12666	= { FOLLOW_in_aggregate_expression_in_aggregate_function12666_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12668  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12668_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12668	= { FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12668_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SUM_SYMBOL_in_aggregate_function12673  */
static	ANTLR3_BITWORD FOLLOW_SUM_SYMBOL_in_aggregate_function12673_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_SUM_SYMBOL_in_aggregate_function12673	= { FOLLOW_SUM_SYMBOL_in_aggregate_function12673_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12675  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12675_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(0x010000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12675	= { FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12675_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DISTINCT_SYMBOL_in_aggregate_function12677  */
static	ANTLR3_BITWORD FOLLOW_DISTINCT_SYMBOL_in_aggregate_function12677_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(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_DISTINCT_SYMBOL_in_aggregate_function12677	= { FOLLOW_DISTINCT_SYMBOL_in_aggregate_function12677_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_in_aggregate_expression_in_aggregate_function12680  */
static	ANTLR3_BITWORD FOLLOW_in_aggregate_expression_in_aggregate_function12680_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_in_aggregate_expression_in_aggregate_function12680	= { FOLLOW_in_aggregate_expression_in_aggregate_function12680_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12682  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12682_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12682	= { FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12682_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GROUP_CONCAT_SYMBOL_in_aggregate_function12687  */
static	ANTLR3_BITWORD FOLLOW_GROUP_CONCAT_SYMBOL_in_aggregate_function12687_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_GROUP_CONCAT_SYMBOL_in_aggregate_function12687	= { FOLLOW_GROUP_CONCAT_SYMBOL_in_aggregate_function12687_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12689  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12689_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x010000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12689	= { FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12689_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DISTINCT_SYMBOL_in_aggregate_function12691  */
static	ANTLR3_BITWORD FOLLOW_DISTINCT_SYMBOL_in_aggregate_function12691_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_DISTINCT_SYMBOL_in_aggregate_function12691	= { FOLLOW_DISTINCT_SYMBOL_in_aggregate_function12691_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_in_aggregate_function12694  */
static	ANTLR3_BITWORD FOLLOW_expression_list_in_aggregate_function12694_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0008000000000000), ANTLR3_UINT64_LIT(0x0000000000800000), ANTLR3_UINT64_LIT(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_list_in_aggregate_function12694	= { FOLLOW_expression_list_in_aggregate_function12694_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_order_by_clause_in_aggregate_function12696  */
static	ANTLR3_BITWORD FOLLOW_order_by_clause_in_aggregate_function12696_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_order_by_clause_in_aggregate_function12696	= { FOLLOW_order_by_clause_in_aggregate_function12696_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SEPARATOR_SYMBOL_in_aggregate_function12700  */
static	ANTLR3_BITWORD FOLLOW_SEPARATOR_SYMBOL_in_aggregate_function12700_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SEPARATOR_SYMBOL_in_aggregate_function12700	= { FOLLOW_SEPARATOR_SYMBOL_in_aggregate_function12700_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_aggregate_function12702  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_aggregate_function12702_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_text_string_in_aggregate_function12702	= { FOLLOW_text_string_in_aggregate_function12702_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12706  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12706_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12706	= { FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12706_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALL_SYMBOL_in_in_aggregate_expression12715  */
static	ANTLR3_BITWORD FOLLOW_ALL_SYMBOL_in_in_aggregate_expression12715_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_ALL_SYMBOL_in_in_aggregate_expression12715	= { FOLLOW_ALL_SYMBOL_in_in_aggregate_expression12715_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_in_aggregate_expression12718  */
static	ANTLR3_BITWORD FOLLOW_expression_in_in_aggregate_expression12718_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_in_aggregate_expression12718	= { FOLLOW_expression_in_in_aggregate_expression12718_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COUNT_SYMBOL_in_count_function12727  */
static	ANTLR3_BITWORD FOLLOW_COUNT_SYMBOL_in_count_function12727_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_COUNT_SYMBOL_in_count_function12727	= { FOLLOW_COUNT_SYMBOL_in_count_function12727_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_count_function12729  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_count_function12729_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(0x010000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x4D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_count_function12729	= { FOLLOW_OPEN_PAR_SYMBOL_in_count_function12729_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALL_SYMBOL_in_count_function12736  */
static	ANTLR3_BITWORD FOLLOW_ALL_SYMBOL_in_count_function12736_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_ALL_SYMBOL_in_count_function12736	= { FOLLOW_ALL_SYMBOL_in_count_function12736_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULT_OPERATOR_in_count_function12739  */
static	ANTLR3_BITWORD FOLLOW_MULT_OPERATOR_in_count_function12739_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MULT_OPERATOR_in_count_function12739	= { FOLLOW_MULT_OPERATOR_in_count_function12739_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_in_aggregate_expression_in_count_function12745  */
static	ANTLR3_BITWORD FOLLOW_in_aggregate_expression_in_count_function12745_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_in_aggregate_expression_in_count_function12745	= { FOLLOW_in_aggregate_expression_in_count_function12745_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DISTINCT_SYMBOL_in_count_function12751  */
static	ANTLR3_BITWORD FOLLOW_DISTINCT_SYMBOL_in_count_function12751_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_DISTINCT_SYMBOL_in_count_function12751	= { FOLLOW_DISTINCT_SYMBOL_in_count_function12751_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_in_count_function12753  */
static	ANTLR3_BITWORD FOLLOW_expression_list_in_count_function12753_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_list_in_count_function12753	= { FOLLOW_expression_list_in_count_function12753_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_count_function12759  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_count_function12759_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_count_function12759	= { FOLLOW_CLOSE_PAR_SYMBOL_in_count_function12759_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_function_call_expression_in_function_call12768  */
static	ANTLR3_BITWORD FOLLOW_function_call_expression_in_function_call12768_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_function_call_expression_in_function_call12768	= { FOLLOW_function_call_expression_in_function_call12768_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_pure_identifier_in_function_call_expression12786  */
static	ANTLR3_BITWORD FOLLOW_pure_identifier_in_function_call_expression12786_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_pure_identifier_in_function_call_expression12786	= { FOLLOW_pure_identifier_in_function_call_expression12786_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_function_call_expression12793  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_function_call_expression12793_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x9CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_function_call_expression12793	= { FOLLOW_OPEN_PAR_SYMBOL_in_function_call_expression12793_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_aliased_expression_list_in_function_call_expression12795  */
static	ANTLR3_BITWORD FOLLOW_aliased_expression_list_in_function_call_expression12795_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_aliased_expression_list_in_function_call_expression12795	= { FOLLOW_aliased_expression_list_in_function_call_expression12795_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_function_call_expression12798  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_function_call_expression12798_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_function_call_expression12798	= { FOLLOW_CLOSE_PAR_SYMBOL_in_function_call_expression12798_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_dot_identifier_in_function_call_expression12805  */
static	ANTLR3_BITWORD FOLLOW_dot_identifier_in_function_call_expression12805_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_dot_identifier_in_function_call_expression12805	= { FOLLOW_dot_identifier_in_function_call_expression12805_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_function_call_expression12807  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_function_call_expression12807_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x9CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_function_call_expression12807	= { FOLLOW_OPEN_PAR_SYMBOL_in_function_call_expression12807_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_in_function_call_expression12809  */
static	ANTLR3_BITWORD FOLLOW_expression_list_in_function_call_expression12809_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_list_in_function_call_expression12809	= { FOLLOW_expression_list_in_function_call_expression12809_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_function_call_expression12812  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_function_call_expression12812_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_function_call_expression12812	= { FOLLOW_CLOSE_PAR_SYMBOL_in_function_call_expression12812_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_aliased_expression_in_aliased_expression_list12825  */
static	ANTLR3_BITWORD FOLLOW_aliased_expression_in_aliased_expression_list12825_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_aliased_expression_in_aliased_expression_list12825	= { FOLLOW_aliased_expression_in_aliased_expression_list12825_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_aliased_expression_list12828  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_aliased_expression_list12828_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_aliased_expression_list12828	= { FOLLOW_COMMA_SYMBOL_in_aliased_expression_list12828_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_aliased_expression_in_aliased_expression_list12830  */
static	ANTLR3_BITWORD FOLLOW_aliased_expression_in_aliased_expression_list12830_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_aliased_expression_in_aliased_expression_list12830	= { FOLLOW_aliased_expression_in_aliased_expression_list12830_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_aliased_expression12841  */
static	ANTLR3_BITWORD FOLLOW_expression_in_aliased_expression12841_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0030800000000000), ANTLR3_UINT64_LIT(0x0000001800100000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_aliased_expression12841	= { FOLLOW_expression_in_aliased_expression12841_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_alias_in_aliased_expression12843  */
static	ANTLR3_BITWORD FOLLOW_select_alias_in_aliased_expression12843_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_select_alias_in_aliased_expression12843	= { FOLLOW_select_alias_in_aliased_expression12843_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_variable_in_variable12864  */
static	ANTLR3_BITWORD FOLLOW_user_variable_in_variable12864_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_user_variable_in_variable12864	= { FOLLOW_user_variable_in_variable12864_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ASSIGN_OPERATOR_in_variable12867  */
static	ANTLR3_BITWORD FOLLOW_ASSIGN_OPERATOR_in_variable12867_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_ASSIGN_OPERATOR_in_variable12867	= { FOLLOW_ASSIGN_OPERATOR_in_variable12867_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_variable12870  */
static	ANTLR3_BITWORD FOLLOW_expression_in_variable12870_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_variable12870	= { FOLLOW_expression_in_variable12870_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_system_variable_in_variable12877  */
static	ANTLR3_BITWORD FOLLOW_system_variable_in_variable12877_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_system_variable_in_variable12877	= { FOLLOW_system_variable_in_variable12877_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AT_SIGN_SYMBOL_in_user_variable12887  */
static	ANTLR3_BITWORD FOLLOW_AT_SIGN_SYMBOL_in_user_variable12887_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_AT_SIGN_SYMBOL_in_user_variable12887	= { FOLLOW_AT_SIGN_SYMBOL_in_user_variable12887_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_identifier_in_user_variable12889  */
static	ANTLR3_BITWORD FOLLOW_text_or_identifier_in_user_variable12889_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_identifier_in_user_variable12889	= { FOLLOW_text_or_identifier_in_user_variable12889_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AT_TEXT_SUFFIX_in_user_variable12903  */
static	ANTLR3_BITWORD FOLLOW_AT_TEXT_SUFFIX_in_user_variable12903_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_AT_TEXT_SUFFIX_in_user_variable12903	= { FOLLOW_AT_TEXT_SUFFIX_in_user_variable12903_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AT_AT_SIGN_SYMBOL_in_system_variable12913  */
static	ANTLR3_BITWORD FOLLOW_AT_AT_SIGN_SYMBOL_in_system_variable12913_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0002000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_AT_AT_SIGN_SYMBOL_in_system_variable12913	= { FOLLOW_AT_AT_SIGN_SYMBOL_in_system_variable12913_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_option_type_in_system_variable12929  */
static	ANTLR3_BITWORD FOLLOW_option_type_in_system_variable12929_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_option_type_in_system_variable12929	= { FOLLOW_option_type_in_system_variable12929_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DOT_SYMBOL_in_system_variable12931  */
static	ANTLR3_BITWORD FOLLOW_DOT_SYMBOL_in_system_variable12931_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0002000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_DOT_SYMBOL_in_system_variable12931	= { FOLLOW_DOT_SYMBOL_in_system_variable12931_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_variable_name_in_system_variable12935  */
static	ANTLR3_BITWORD FOLLOW_variable_name_in_system_variable12935_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_variable_name_in_system_variable12935	= { FOLLOW_variable_name_in_system_variable12935_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_variable_name12944  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_variable_name12944_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_variable_name12944	= { FOLLOW_identifier_in_variable_name12944_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_dot_identifier_in_variable_name12946  */
static	ANTLR3_BITWORD FOLLOW_dot_identifier_in_variable_name12946_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_dot_identifier_in_variable_name12946	= { FOLLOW_dot_identifier_in_variable_name12946_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_variable_name12956  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_variable_name12956_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_DEFAULT_SYMBOL_in_variable_name12956	= { FOLLOW_DEFAULT_SYMBOL_in_variable_name12956_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_dot_identifier_in_variable_name12958  */
static	ANTLR3_BITWORD FOLLOW_dot_identifier_in_variable_name12958_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_dot_identifier_in_variable_name12958	= { FOLLOW_dot_identifier_in_variable_name12958_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MATCH_SYMBOL_in_match_expression12967  */
static	ANTLR3_BITWORD FOLLOW_MATCH_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(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MATCH_SYMBOL_in_match_expression12967	= { FOLLOW_MATCH_SYMBOL_in_match_expression12967_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_match_expression12970  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_match_expression12970_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_match_expression12970	= { FOLLOW_OPEN_PAR_SYMBOL_in_match_expression12970_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_name_list_in_match_expression12972  */
static	ANTLR3_BITWORD FOLLOW_field_name_list_in_match_expression12972_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_field_name_list_in_match_expression12972	= { FOLLOW_field_name_list_in_match_expression12972_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_match_expression12974  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_match_expression12974_bits[]	= { ANTLR3_UINT64_LIT(0x4000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_match_expression12974	= { FOLLOW_CLOSE_PAR_SYMBOL_in_match_expression12974_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AGAINST_SYMBOL_in_match_expression12976  */
static	ANTLR3_BITWORD FOLLOW_AGAINST_SYMBOL_in_match_expression12976_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_AGAINST_SYMBOL_in_match_expression12976	= { FOLLOW_AGAINST_SYMBOL_in_match_expression12976_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_match_expression12978  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_match_expression12978_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060D44880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_match_expression12978	= { FOLLOW_OPEN_PAR_SYMBOL_in_match_expression12978_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_bitwise_or_expression_in_match_expression12980  */
static	ANTLR3_BITWORD FOLLOW_bitwise_or_expression_in_match_expression12980_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8000010000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_bitwise_or_expression_in_match_expression12980	= { FOLLOW_bitwise_or_expression_in_match_expression12980_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IN_SYMBOL_in_match_expression12989  */
static	ANTLR3_BITWORD FOLLOW_IN_SYMBOL_in_match_expression12989_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000002000) };
static  ANTLR3_BITSET_LIST FOLLOW_IN_SYMBOL_in_match_expression12989	= { FOLLOW_IN_SYMBOL_in_match_expression12989_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BOOLEAN_SYMBOL_in_match_expression12991  */
static	ANTLR3_BITWORD FOLLOW_BOOLEAN_SYMBOL_in_match_expression12991_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_expression12991	= { FOLLOW_BOOLEAN_SYMBOL_in_match_expression12991_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MODE_SYMBOL_in_match_expression12993  */
static	ANTLR3_BITWORD FOLLOW_MODE_SYMBOL_in_match_expression12993_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MODE_SYMBOL_in_match_expression12993	= { FOLLOW_MODE_SYMBOL_in_match_expression12993_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IN_SYMBOL_in_match_expression13001  */
static	ANTLR3_BITWORD FOLLOW_IN_SYMBOL_in_match_expression13001_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_SYMBOL_in_match_expression13001	= { FOLLOW_IN_SYMBOL_in_match_expression13001_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NATURAL_SYMBOL_in_match_expression13003  */
static	ANTLR3_BITWORD FOLLOW_NATURAL_SYMBOL_in_match_expression13003_bits[]	= { ANTLR3_UINT64_LIT(0x0000000020000000) };
static  ANTLR3_BITSET_LIST FOLLOW_NATURAL_SYMBOL_in_match_expression13003	= { FOLLOW_NATURAL_SYMBOL_in_match_expression13003_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LANGUAGE_SYMBOL_in_match_expression13005  */
static	ANTLR3_BITWORD FOLLOW_LANGUAGE_SYMBOL_in_match_expression13005_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_expression13005	= { FOLLOW_LANGUAGE_SYMBOL_in_match_expression13005_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MODE_SYMBOL_in_match_expression13007  */
static	ANTLR3_BITWORD FOLLOW_MODE_SYMBOL_in_match_expression13007_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8000010000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MODE_SYMBOL_in_match_expression13007	= { FOLLOW_MODE_SYMBOL_in_match_expression13007_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WITH_SYMBOL_in_match_expression13012  */
static	ANTLR3_BITWORD FOLLOW_WITH_SYMBOL_in_match_expression13012_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_expression13012	= { FOLLOW_WITH_SYMBOL_in_match_expression13012_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_QUERY_SYMBOL_in_match_expression13014  */
static	ANTLR3_BITWORD FOLLOW_QUERY_SYMBOL_in_match_expression13014_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000200) };
static  ANTLR3_BITSET_LIST FOLLOW_QUERY_SYMBOL_in_match_expression13014	= { FOLLOW_QUERY_SYMBOL_in_match_expression13014_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EXPANSION_SYMBOL_in_match_expression13016  */
static	ANTLR3_BITWORD FOLLOW_EXPANSION_SYMBOL_in_match_expression13016_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_EXPANSION_SYMBOL_in_match_expression13016	= { FOLLOW_EXPANSION_SYMBOL_in_match_expression13016_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_match_expression13026  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_match_expression13026_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_match_expression13026	= { FOLLOW_CLOSE_PAR_SYMBOL_in_match_expression13026_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CASE_SYMBOL_in_case_expression13036  */
static	ANTLR3_BITWORD FOLLOW_CASE_SYMBOL_in_case_expression13036_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000522E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_CASE_SYMBOL_in_case_expression13036	= { FOLLOW_CASE_SYMBOL_in_case_expression13036_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_case_expression13038  */
static	ANTLR3_BITWORD FOLLOW_expression_in_case_expression13038_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_in_case_expression13038	= { FOLLOW_expression_in_case_expression13038_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_when_expression_in_case_expression13042  */
static	ANTLR3_BITWORD FOLLOW_when_expression_in_case_expression13042_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_when_expression_in_case_expression13042	= { FOLLOW_when_expression_in_case_expression13042_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_then_expression_in_case_expression13044  */
static	ANTLR3_BITWORD FOLLOW_then_expression_in_case_expression13044_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(0x2000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_then_expression_in_case_expression13044	= { FOLLOW_then_expression_in_case_expression13044_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_else_expression_in_case_expression13048  */
static	ANTLR3_BITWORD FOLLOW_else_expression_in_case_expression13048_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000080000) };
static  ANTLR3_BITSET_LIST FOLLOW_else_expression_in_case_expression13048	= { FOLLOW_else_expression_in_case_expression13048_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_END_SYMBOL_in_case_expression13051  */
static	ANTLR3_BITWORD FOLLOW_END_SYMBOL_in_case_expression13051_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_END_SYMBOL_in_case_expression13051	= { FOLLOW_END_SYMBOL_in_case_expression13051_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WHEN_SYMBOL_in_when_expression13060  */
static	ANTLR3_BITWORD FOLLOW_WHEN_SYMBOL_in_when_expression13060_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_WHEN_SYMBOL_in_when_expression13060	= { FOLLOW_WHEN_SYMBOL_in_when_expression13060_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_when_expression13063  */
static	ANTLR3_BITWORD FOLLOW_expression_in_when_expression13063_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_when_expression13063	= { FOLLOW_expression_in_when_expression13063_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_THEN_SYMBOL_in_then_expression13072  */
static	ANTLR3_BITWORD FOLLOW_THEN_SYMBOL_in_then_expression13072_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_THEN_SYMBOL_in_then_expression13072	= { FOLLOW_THEN_SYMBOL_in_then_expression13072_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_then_expression13075  */
static	ANTLR3_BITWORD FOLLOW_expression_in_then_expression13075_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_then_expression13075	= { FOLLOW_expression_in_then_expression13075_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ELSE_SYMBOL_in_else_expression13084  */
static	ANTLR3_BITWORD FOLLOW_ELSE_SYMBOL_in_else_expression13084_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_ELSE_SYMBOL_in_else_expression13084	= { FOLLOW_ELSE_SYMBOL_in_else_expression13084_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_else_expression13087  */
static	ANTLR3_BITWORD FOLLOW_expression_in_else_expression13087_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_else_expression13087	= { FOLLOW_expression_in_else_expression13087_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_cast_expression13096  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_cast_expression13096_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000010204000C4), ANTLR3_UINT64_LIT(0x030060D04880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1C37000122E00600), ANTLR3_UINT64_LIT(0x0400011810120800), ANTLR3_UINT64_LIT(0x0000000C00000000) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_cast_expression13096	= { FOLLOW_BINARY_SYMBOL_in_cast_expression13096_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_primary_in_cast_expression13098  */
static	ANTLR3_BITWORD FOLLOW_primary_in_cast_expression13098_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_primary_in_cast_expression13098	= { FOLLOW_primary_in_cast_expression13098_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CAST_SYMBOL_in_cast_expression13103  */
static	ANTLR3_BITWORD FOLLOW_CAST_SYMBOL_in_cast_expression13103_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_CAST_SYMBOL_in_cast_expression13103	= { FOLLOW_CAST_SYMBOL_in_cast_expression13103_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_cast_expression13105  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_cast_expression13105_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_cast_expression13105	= { FOLLOW_OPEN_PAR_SYMBOL_in_cast_expression13105_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_cast_expression13107  */
static	ANTLR3_BITWORD FOLLOW_expression_in_cast_expression13107_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_cast_expression13107	= { FOLLOW_expression_in_cast_expression13107_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AS_SYMBOL_in_cast_expression13109  */
static	ANTLR3_BITWORD FOLLOW_AS_SYMBOL_in_cast_expression13109_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(0x0000400000010010), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_AS_SYMBOL_in_cast_expression13109	= { FOLLOW_AS_SYMBOL_in_cast_expression13109_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_cast_type_in_cast_expression13111  */
static	ANTLR3_BITWORD FOLLOW_cast_type_in_cast_expression13111_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_cast_type_in_cast_expression13111	= { FOLLOW_cast_type_in_cast_expression13111_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_cast_expression13113  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_cast_expression13113_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_cast_expression13113	= { FOLLOW_CLOSE_PAR_SYMBOL_in_cast_expression13113_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CONVERT_SYMBOL_in_cast_expression13118  */
static	ANTLR3_BITWORD FOLLOW_CONVERT_SYMBOL_in_cast_expression13118_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_CONVERT_SYMBOL_in_cast_expression13118	= { FOLLOW_CONVERT_SYMBOL_in_cast_expression13118_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_cast_expression13120  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_cast_expression13120_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_cast_expression13120	= { FOLLOW_OPEN_PAR_SYMBOL_in_cast_expression13120_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_cast_expression13122  */
static	ANTLR3_BITWORD FOLLOW_expression_in_cast_expression13122_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_cast_expression13122	= { FOLLOW_expression_in_cast_expression13122_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_cast_expression13125  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_cast_expression13125_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(0x0000400000010010), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_cast_expression13125	= { FOLLOW_COMMA_SYMBOL_in_cast_expression13125_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_cast_type_in_cast_expression13127  */
static	ANTLR3_BITWORD FOLLOW_cast_type_in_cast_expression13127_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_cast_type_in_cast_expression13127	= { FOLLOW_cast_type_in_cast_expression13127_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USING_SYMBOL_in_cast_expression13131  */
static	ANTLR3_BITWORD FOLLOW_USING_SYMBOL_in_cast_expression13131_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000010), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_USING_SYMBOL_in_cast_expression13131	= { FOLLOW_USING_SYMBOL_in_cast_expression13131_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_name_in_cast_expression13133  */
static	ANTLR3_BITWORD FOLLOW_charset_name_in_cast_expression13133_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_charset_name_in_cast_expression13133	= { FOLLOW_charset_name_in_cast_expression13133_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_cast_expression13136  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_cast_expression13136_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_cast_expression13136	= { FOLLOW_CLOSE_PAR_SYMBOL_in_cast_expression13136_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_cast_type13145  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_cast_type13145_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_cast_type13145	= { FOLLOW_BINARY_SYMBOL_in_cast_type13145_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_length_in_cast_type13147  */
static	ANTLR3_BITWORD FOLLOW_field_length_in_cast_type13147_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_field_length_in_cast_type13147	= { FOLLOW_field_length_in_cast_type13147_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHAR_SYMBOL_in_cast_type13153  */
static	ANTLR3_BITWORD FOLLOW_CHAR_SYMBOL_in_cast_type13153_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(0x0000000000010010), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CHAR_SYMBOL_in_cast_type13153	= { FOLLOW_CHAR_SYMBOL_in_cast_type13153_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_length_in_cast_type13155  */
static	ANTLR3_BITWORD FOLLOW_field_length_in_cast_type13155_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(0x0000000000010010) };
static  ANTLR3_BITSET_LIST FOLLOW_field_length_in_cast_type13155	= { FOLLOW_field_length_in_cast_type13155_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_encoding_in_cast_type13158  */
static	ANTLR3_BITWORD FOLLOW_encoding_in_cast_type13158_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_encoding_in_cast_type13158	= { FOLLOW_encoding_in_cast_type13158_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NCHAR_SYMBOL_in_cast_type13164  */
static	ANTLR3_BITWORD FOLLOW_NCHAR_SYMBOL_in_cast_type13164_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_NCHAR_SYMBOL_in_cast_type13164	= { FOLLOW_NCHAR_SYMBOL_in_cast_type13164_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_length_in_cast_type13166  */
static	ANTLR3_BITWORD FOLLOW_field_length_in_cast_type13166_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_field_length_in_cast_type13166	= { FOLLOW_field_length_in_cast_type13166_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SIGNED_SYMBOL_in_cast_type13172  */
static	ANTLR3_BITWORD FOLLOW_SIGNED_SYMBOL_in_cast_type13172_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000200000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SIGNED_SYMBOL_in_cast_type13172	= { FOLLOW_SIGNED_SYMBOL_in_cast_type13172_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_SYMBOL_in_cast_type13174  */
static	ANTLR3_BITWORD FOLLOW_INT_SYMBOL_in_cast_type13174_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_INT_SYMBOL_in_cast_type13174	= { FOLLOW_INT_SYMBOL_in_cast_type13174_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNSIGNED_SYMBOL_in_cast_type13180  */
static	ANTLR3_BITWORD FOLLOW_UNSIGNED_SYMBOL_in_cast_type13180_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000200000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_UNSIGNED_SYMBOL_in_cast_type13180	= { FOLLOW_UNSIGNED_SYMBOL_in_cast_type13180_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_SYMBOL_in_cast_type13182  */
static	ANTLR3_BITWORD FOLLOW_INT_SYMBOL_in_cast_type13182_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_INT_SYMBOL_in_cast_type13182	= { FOLLOW_INT_SYMBOL_in_cast_type13182_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATE_SYMBOL_in_cast_type13188  */
static	ANTLR3_BITWORD FOLLOW_DATE_SYMBOL_in_cast_type13188_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DATE_SYMBOL_in_cast_type13188	= { FOLLOW_DATE_SYMBOL_in_cast_type13188_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TIME_SYMBOL_in_cast_type13193  */
static	ANTLR3_BITWORD FOLLOW_TIME_SYMBOL_in_cast_type13193_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_TIME_SYMBOL_in_cast_type13193	= { FOLLOW_TIME_SYMBOL_in_cast_type13193_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_type_datetime_precision_in_cast_type13195  */
static	ANTLR3_BITWORD FOLLOW_type_datetime_precision_in_cast_type13195_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_type_datetime_precision_in_cast_type13195	= { FOLLOW_type_datetime_precision_in_cast_type13195_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATETIME_SYMBOL_in_cast_type13201  */
static	ANTLR3_BITWORD FOLLOW_DATETIME_SYMBOL_in_cast_type13201_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DATETIME_SYMBOL_in_cast_type13201	= { FOLLOW_DATETIME_SYMBOL_in_cast_type13201_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_type_datetime_precision_in_cast_type13203  */
static	ANTLR3_BITWORD FOLLOW_type_datetime_precision_in_cast_type13203_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_type_datetime_precision_in_cast_type13203	= { FOLLOW_type_datetime_precision_in_cast_type13203_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DECIMAL_SYMBOL_in_cast_type13209  */
static	ANTLR3_BITWORD FOLLOW_DECIMAL_SYMBOL_in_cast_type13209_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DECIMAL_SYMBOL_in_cast_type13209	= { FOLLOW_DECIMAL_SYMBOL_in_cast_type13209_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_float_options_in_cast_type13211  */
static	ANTLR3_BITWORD FOLLOW_float_options_in_cast_type13211_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_float_options_in_cast_type13211	= { FOLLOW_float_options_in_cast_type13211_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_JSON_SYMBOL_in_cast_type13219  */
static	ANTLR3_BITWORD FOLLOW_JSON_SYMBOL_in_cast_type13219_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_JSON_SYMBOL_in_cast_type13219	= { FOLLOW_JSON_SYMBOL_in_cast_type13219_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ASCII_SYMBOL_in_encoding13228  */
static	ANTLR3_BITWORD FOLLOW_ASCII_SYMBOL_in_encoding13228_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), 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_ASCII_SYMBOL_in_encoding13228	= { FOLLOW_ASCII_SYMBOL_in_encoding13228_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_encoding13230  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_encoding13230_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_encoding13230	= { FOLLOW_BINARY_SYMBOL_in_encoding13230_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_encoding13236  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_encoding13236_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(0x0000000000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_encoding13236	= { FOLLOW_BINARY_SYMBOL_in_encoding13236_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ASCII_SYMBOL_in_encoding13239  */
static	ANTLR3_BITWORD FOLLOW_ASCII_SYMBOL_in_encoding13239_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ASCII_SYMBOL_in_encoding13239	= { FOLLOW_ASCII_SYMBOL_in_encoding13239_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNICODE_SYMBOL_in_encoding13243  */
static	ANTLR3_BITWORD FOLLOW_UNICODE_SYMBOL_in_encoding13243_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_UNICODE_SYMBOL_in_encoding13243	= { FOLLOW_UNICODE_SYMBOL_in_encoding13243_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_in_encoding13247  */
static	ANTLR3_BITWORD FOLLOW_charset_in_encoding13247_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000010), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_in_encoding13247	= { FOLLOW_charset_in_encoding13247_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_name_in_encoding13249  */
static	ANTLR3_BITWORD FOLLOW_charset_name_in_encoding13249_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_name_in_encoding13249	= { FOLLOW_charset_name_in_encoding13249_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNICODE_SYMBOL_in_encoding13256  */
static	ANTLR3_BITWORD FOLLOW_UNICODE_SYMBOL_in_encoding13256_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), 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_UNICODE_SYMBOL_in_encoding13256	= { FOLLOW_UNICODE_SYMBOL_in_encoding13256_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_encoding13258  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_encoding13258_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_encoding13258	= { FOLLOW_BINARY_SYMBOL_in_encoding13258_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BYTE_SYMBOL_in_encoding13264  */
static	ANTLR3_BITWORD FOLLOW_BYTE_SYMBOL_in_encoding13264_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BYTE_SYMBOL_in_encoding13264	= { FOLLOW_BYTE_SYMBOL_in_encoding13264_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_in_encoding13269  */
static	ANTLR3_BITWORD FOLLOW_charset_in_encoding13269_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000010), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_in_encoding13269	= { FOLLOW_charset_in_encoding13269_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_name_in_encoding13271  */
static	ANTLR3_BITWORD FOLLOW_charset_name_in_encoding13271_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), 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_charset_name_in_encoding13271	= { FOLLOW_charset_name_in_encoding13271_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_encoding13273  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_encoding13273_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_encoding13273	= { FOLLOW_BINARY_SYMBOL_in_encoding13273_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHAR_SYMBOL_in_charset13283  */
static	ANTLR3_BITWORD FOLLOW_CHAR_SYMBOL_in_charset13283_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_CHAR_SYMBOL_in_charset13283	= { FOLLOW_CHAR_SYMBOL_in_charset13283_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SET_SYMBOL_in_charset13285  */
static	ANTLR3_BITWORD FOLLOW_SET_SYMBOL_in_charset13285_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SET_SYMBOL_in_charset13285	= { FOLLOW_SET_SYMBOL_in_charset13285_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHARSET_SYMBOL_in_charset13289  */
static	ANTLR3_BITWORD FOLLOW_CHARSET_SYMBOL_in_charset13289_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CHARSET_SYMBOL_in_charset13289	= { FOLLOW_CHARSET_SYMBOL_in_charset13289_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_interval13370  */
static	ANTLR3_BITWORD FOLLOW_expression_in_interval13370_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(0x00001E0000000000), ANTLR3_UINT64_LIT(0x000000001C010000), ANTLR3_UINT64_LIT(0x0000000000600000), ANTLR3_UINT64_LIT(0x0000000000080000), ANTLR3_UINT64_LIT(0x0000080000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_interval13370	= { FOLLOW_expression_in_interval13370_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_interval_unit_in_interval13372  */
static	ANTLR3_BITWORD FOLLOW_interval_unit_in_interval13372_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_interval_unit_in_interval13372	= { FOLLOW_interval_unit_in_interval13372_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_interval_timestamp_unit_in_interval_unit13382  */
static	ANTLR3_BITWORD FOLLOW_interval_timestamp_unit_in_interval_unit13382_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_interval_timestamp_unit_in_interval_unit13382	= { FOLLOW_interval_timestamp_unit_in_interval_unit13382_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SECOND_MICROSECOND_SYMBOL_in_interval_unit13387  */
static	ANTLR3_BITWORD FOLLOW_SECOND_MICROSECOND_SYMBOL_in_interval_unit13387_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SECOND_MICROSECOND_SYMBOL_in_interval_unit13387	= { FOLLOW_SECOND_MICROSECOND_SYMBOL_in_interval_unit13387_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MINUTE_MICROSECOND_SYMBOL_in_interval_unit13392  */
static	ANTLR3_BITWORD FOLLOW_MINUTE_MICROSECOND_SYMBOL_in_interval_unit13392_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_MINUTE_MICROSECOND_SYMBOL_in_interval_unit13392	= { FOLLOW_MINUTE_MICROSECOND_SYMBOL_in_interval_unit13392_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MINUTE_SECOND_SYMBOL_in_interval_unit13397  */
static	ANTLR3_BITWORD FOLLOW_MINUTE_SECOND_SYMBOL_in_interval_unit13397_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_MINUTE_SECOND_SYMBOL_in_interval_unit13397	= { FOLLOW_MINUTE_SECOND_SYMBOL_in_interval_unit13397_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_HOUR_MICROSECOND_SYMBOL_in_interval_unit13402  */
static	ANTLR3_BITWORD FOLLOW_HOUR_MICROSECOND_SYMBOL_in_interval_unit13402_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_HOUR_MICROSECOND_SYMBOL_in_interval_unit13402	= { FOLLOW_HOUR_MICROSECOND_SYMBOL_in_interval_unit13402_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_HOUR_SECOND_SYMBOL_in_interval_unit13407  */
static	ANTLR3_BITWORD FOLLOW_HOUR_SECOND_SYMBOL_in_interval_unit13407_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_HOUR_SECOND_SYMBOL_in_interval_unit13407	= { FOLLOW_HOUR_SECOND_SYMBOL_in_interval_unit13407_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_HOUR_MINUTE_SYMBOL_in_interval_unit13412  */
static	ANTLR3_BITWORD FOLLOW_HOUR_MINUTE_SYMBOL_in_interval_unit13412_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_HOUR_MINUTE_SYMBOL_in_interval_unit13412	= { FOLLOW_HOUR_MINUTE_SYMBOL_in_interval_unit13412_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DAY_MICROSECOND_SYMBOL_in_interval_unit13417  */
static	ANTLR3_BITWORD FOLLOW_DAY_MICROSECOND_SYMBOL_in_interval_unit13417_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DAY_MICROSECOND_SYMBOL_in_interval_unit13417	= { FOLLOW_DAY_MICROSECOND_SYMBOL_in_interval_unit13417_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DAY_SECOND_SYMBOL_in_interval_unit13422  */
static	ANTLR3_BITWORD FOLLOW_DAY_SECOND_SYMBOL_in_interval_unit13422_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DAY_SECOND_SYMBOL_in_interval_unit13422	= { FOLLOW_DAY_SECOND_SYMBOL_in_interval_unit13422_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DAY_MINUTE_SYMBOL_in_interval_unit13427  */
static	ANTLR3_BITWORD FOLLOW_DAY_MINUTE_SYMBOL_in_interval_unit13427_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DAY_MINUTE_SYMBOL_in_interval_unit13427	= { FOLLOW_DAY_MINUTE_SYMBOL_in_interval_unit13427_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DAY_HOUR_SYMBOL_in_interval_unit13432  */
static	ANTLR3_BITWORD FOLLOW_DAY_HOUR_SYMBOL_in_interval_unit13432_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DAY_HOUR_SYMBOL_in_interval_unit13432	= { FOLLOW_DAY_HOUR_SYMBOL_in_interval_unit13432_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_YEAR_MONTH_SYMBOL_in_interval_unit13437  */
static	ANTLR3_BITWORD FOLLOW_YEAR_MONTH_SYMBOL_in_interval_unit13437_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_YEAR_MONTH_SYMBOL_in_interval_unit13437	= { FOLLOW_YEAR_MONTH_SYMBOL_in_interval_unit13437_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_expression_list_with_parentheses13505  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_expression_list_with_parentheses13505_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_expression_list_with_parentheses13505	= { FOLLOW_OPEN_PAR_SYMBOL_in_expression_list_with_parentheses13505_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_in_expression_list_with_parentheses13507  */
static	ANTLR3_BITWORD FOLLOW_expression_list_in_expression_list_with_parentheses13507_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_list_in_expression_list_with_parentheses13507	= { FOLLOW_expression_list_in_expression_list_with_parentheses13507_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_expression_list_with_parentheses13509  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_expression_list_with_parentheses13509_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_expression_list_with_parentheses13509	= { FOLLOW_CLOSE_PAR_SYMBOL_in_expression_list_with_parentheses13509_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_optional_expression_list_with_parentheses13530  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_optional_expression_list_with_parentheses13530_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x9CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_optional_expression_list_with_parentheses13530	= { FOLLOW_OPEN_PAR_SYMBOL_in_optional_expression_list_with_parentheses13530_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_in_optional_expression_list_with_parentheses13532  */
static	ANTLR3_BITWORD FOLLOW_expression_list_in_optional_expression_list_with_parentheses13532_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_list_in_optional_expression_list_with_parentheses13532	= { FOLLOW_expression_list_in_optional_expression_list_with_parentheses13532_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_optional_expression_list_with_parentheses13535  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_optional_expression_list_with_parentheses13535_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_optional_expression_list_with_parentheses13535	= { FOLLOW_CLOSE_PAR_SYMBOL_in_optional_expression_list_with_parentheses13535_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_expression_list13557  */
static	ANTLR3_BITWORD FOLLOW_expression_in_expression_list13557_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_expression_list13557	= { FOLLOW_expression_in_expression_list13557_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_expression_list13560  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_expression_list13560_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_expression_list13560	= { FOLLOW_COMMA_SYMBOL_in_expression_list13560_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_expression_list13562  */
static	ANTLR3_BITWORD FOLLOW_expression_in_expression_list13562_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_expression_list13562	= { FOLLOW_expression_in_expression_list13562_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_expression_list_with_direction13573  */
static	ANTLR3_BITWORD FOLLOW_expression_in_expression_list_with_direction13573_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(0x0020000000000000), 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_expression_in_expression_list_with_direction13573	= { FOLLOW_expression_in_expression_list_with_direction13573_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_direction_in_expression_list_with_direction13575  */
static	ANTLR3_BITWORD FOLLOW_direction_in_expression_list_with_direction13575_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_direction_in_expression_list_with_direction13575	= { FOLLOW_direction_in_expression_list_with_direction13575_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_expression_list_with_direction13592  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_expression_list_with_direction13592_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_expression_list_with_direction13592	= { FOLLOW_COMMA_SYMBOL_in_expression_list_with_direction13592_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_expression_list_with_direction13594  */
static	ANTLR3_BITWORD FOLLOW_expression_in_expression_list_with_direction13594_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(0x0020000000000000), 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_expression_in_expression_list_with_direction13594	= { FOLLOW_expression_in_expression_list_with_direction13594_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_direction_in_expression_list_with_direction13596  */
static	ANTLR3_BITWORD FOLLOW_direction_in_expression_list_with_direction13596_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_direction_in_expression_list_with_direction13596	= { FOLLOW_direction_in_expression_list_with_direction13596_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOR_SYMBOL_in_channel13612  */
static	ANTLR3_BITWORD FOLLOW_FOR_SYMBOL_in_channel13612_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000080000) };
static  ANTLR3_BITSET_LIST FOLLOW_FOR_SYMBOL_in_channel13612	= { FOLLOW_FOR_SYMBOL_in_channel13612_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHANNEL_SYMBOL_in_channel13614  */
static	ANTLR3_BITWORD FOLLOW_CHANNEL_SYMBOL_in_channel13614_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CHANNEL_SYMBOL_in_channel13614	= { FOLLOW_CHANNEL_SYMBOL_in_channel13614_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_no_linebreak_in_channel13616  */
static	ANTLR3_BITWORD FOLLOW_text_string_no_linebreak_in_channel13616_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_no_linebreak_in_channel13616	= { FOLLOW_text_string_no_linebreak_in_channel13616_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_statement_in_compound_statement13640  */
static	ANTLR3_BITWORD FOLLOW_statement_in_compound_statement13640_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_statement_in_compound_statement13640	= { FOLLOW_statement_in_compound_statement13640_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_return_statement_in_compound_statement13645  */
static	ANTLR3_BITWORD FOLLOW_return_statement_in_compound_statement13645_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_return_statement_in_compound_statement13645	= { FOLLOW_return_statement_in_compound_statement13645_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_if_statement_in_compound_statement13650  */
static	ANTLR3_BITWORD FOLLOW_if_statement_in_compound_statement13650_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_if_statement_in_compound_statement13650	= { FOLLOW_if_statement_in_compound_statement13650_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_case_statement_in_compound_statement13655  */
static	ANTLR3_BITWORD FOLLOW_case_statement_in_compound_statement13655_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_case_statement_in_compound_statement13655	= { FOLLOW_case_statement_in_compound_statement13655_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_labeled_block_in_compound_statement13660  */
static	ANTLR3_BITWORD FOLLOW_labeled_block_in_compound_statement13660_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_labeled_block_in_compound_statement13660	= { FOLLOW_labeled_block_in_compound_statement13660_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_unlabeled_block_in_compound_statement13665  */
static	ANTLR3_BITWORD FOLLOW_unlabeled_block_in_compound_statement13665_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_unlabeled_block_in_compound_statement13665	= { FOLLOW_unlabeled_block_in_compound_statement13665_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_labeled_control_in_compound_statement13670  */
static	ANTLR3_BITWORD FOLLOW_labeled_control_in_compound_statement13670_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_labeled_control_in_compound_statement13670	= { FOLLOW_labeled_control_in_compound_statement13670_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_unlabeled_control_in_compound_statement13675  */
static	ANTLR3_BITWORD FOLLOW_unlabeled_control_in_compound_statement13675_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_unlabeled_control_in_compound_statement13675	= { FOLLOW_unlabeled_control_in_compound_statement13675_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_leave_statement_in_compound_statement13680  */
static	ANTLR3_BITWORD FOLLOW_leave_statement_in_compound_statement13680_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_leave_statement_in_compound_statement13680	= { FOLLOW_leave_statement_in_compound_statement13680_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_iterate_statement_in_compound_statement13685  */
static	ANTLR3_BITWORD FOLLOW_iterate_statement_in_compound_statement13685_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_iterate_statement_in_compound_statement13685	= { FOLLOW_iterate_statement_in_compound_statement13685_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_cursor_open_in_compound_statement13691  */
static	ANTLR3_BITWORD FOLLOW_cursor_open_in_compound_statement13691_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_cursor_open_in_compound_statement13691	= { FOLLOW_cursor_open_in_compound_statement13691_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_cursor_fetch_in_compound_statement13696  */
static	ANTLR3_BITWORD FOLLOW_cursor_fetch_in_compound_statement13696_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_cursor_fetch_in_compound_statement13696	= { FOLLOW_cursor_fetch_in_compound_statement13696_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_cursor_close_in_compound_statement13701  */
static	ANTLR3_BITWORD FOLLOW_cursor_close_in_compound_statement13701_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_cursor_close_in_compound_statement13701	= { FOLLOW_cursor_close_in_compound_statement13701_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RETURN_SYMBOL_in_return_statement13710  */
static	ANTLR3_BITWORD FOLLOW_RETURN_SYMBOL_in_return_statement13710_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_RETURN_SYMBOL_in_return_statement13710	= { FOLLOW_RETURN_SYMBOL_in_return_statement13710_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_return_statement13712  */
static	ANTLR3_BITWORD FOLLOW_expression_in_return_statement13712_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_return_statement13712	= { FOLLOW_expression_in_return_statement13712_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IF_SYMBOL_in_if_statement13721  */
static	ANTLR3_BITWORD FOLLOW_IF_SYMBOL_in_if_statement13721_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_IF_SYMBOL_in_if_statement13721	= { FOLLOW_IF_SYMBOL_in_if_statement13721_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_if_body_in_if_statement13724  */
static	ANTLR3_BITWORD FOLLOW_if_body_in_if_statement13724_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000080000) };
static  ANTLR3_BITSET_LIST FOLLOW_if_body_in_if_statement13724	= { FOLLOW_if_body_in_if_statement13724_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_END_SYMBOL_in_if_statement13726  */
static	ANTLR3_BITWORD FOLLOW_END_SYMBOL_in_if_statement13726_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_if_statement13726	= { FOLLOW_END_SYMBOL_in_if_statement13726_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IF_SYMBOL_in_if_statement13728  */
static	ANTLR3_BITWORD FOLLOW_IF_SYMBOL_in_if_statement13728_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_IF_SYMBOL_in_if_statement13728	= { FOLLOW_IF_SYMBOL_in_if_statement13728_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_if_body13737  */
static	ANTLR3_BITWORD FOLLOW_expression_in_if_body13737_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_if_body13737	= { FOLLOW_expression_in_if_body13737_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_then_statement_in_if_body13739  */
static	ANTLR3_BITWORD FOLLOW_then_statement_in_if_body13739_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x3000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_then_statement_in_if_body13739	= { FOLLOW_then_statement_in_if_body13739_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ELSEIF_SYMBOL_in_if_body13742  */
static	ANTLR3_BITWORD FOLLOW_ELSEIF_SYMBOL_in_if_body13742_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_ELSEIF_SYMBOL_in_if_body13742	= { FOLLOW_ELSEIF_SYMBOL_in_if_body13742_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_if_body_in_if_body13744  */
static	ANTLR3_BITWORD FOLLOW_if_body_in_if_body13744_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_if_body_in_if_body13744	= { FOLLOW_if_body_in_if_body13744_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ELSE_SYMBOL_in_if_body13748  */
static	ANTLR3_BITWORD FOLLOW_ELSE_SYMBOL_in_if_body13748_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(0x0238000004025400), ANTLR3_UINT64_LIT(0x0508001020300100), ANTLR3_UINT64_LIT(0x4001400000000211), ANTLR3_UINT64_LIT(0x0000000034106BC0), ANTLR3_UINT64_LIT(0x00100010000A8000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_ELSE_SYMBOL_in_if_body13748	= { FOLLOW_ELSE_SYMBOL_in_if_body13748_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_compound_statement_list_in_if_body13750  */
static	ANTLR3_BITWORD FOLLOW_compound_statement_list_in_if_body13750_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_compound_statement_list_in_if_body13750	= { FOLLOW_compound_statement_list_in_if_body13750_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_THEN_SYMBOL_in_then_statement13761  */
static	ANTLR3_BITWORD FOLLOW_THEN_SYMBOL_in_then_statement13761_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(0x0238000004025400), ANTLR3_UINT64_LIT(0x0508001020300100), ANTLR3_UINT64_LIT(0x4001400000000211), ANTLR3_UINT64_LIT(0x0000000034106BC0), ANTLR3_UINT64_LIT(0x00100010000A8000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_THEN_SYMBOL_in_then_statement13761	= { FOLLOW_THEN_SYMBOL_in_then_statement13761_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_compound_statement_list_in_then_statement13764  */
static	ANTLR3_BITWORD FOLLOW_compound_statement_list_in_then_statement13764_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_compound_statement_list_in_then_statement13764	= { FOLLOW_compound_statement_list_in_then_statement13764_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_compound_statement_in_compound_statement_list13774  */
static	ANTLR3_BITWORD FOLLOW_compound_statement_in_compound_statement_list13774_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000200000) };
static  ANTLR3_BITSET_LIST FOLLOW_compound_statement_in_compound_statement_list13774	= { FOLLOW_compound_statement_in_compound_statement_list13774_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SEMICOLON_SYMBOL_in_compound_statement_list13776  */
static	ANTLR3_BITWORD FOLLOW_SEMICOLON_SYMBOL_in_compound_statement_list13776_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(0x0238000004025400), ANTLR3_UINT64_LIT(0x0508001020300100), ANTLR3_UINT64_LIT(0x4001400000000211), ANTLR3_UINT64_LIT(0x0000000034106BC0), ANTLR3_UINT64_LIT(0x00100010000A8000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_SEMICOLON_SYMBOL_in_compound_statement_list13776	= { FOLLOW_SEMICOLON_SYMBOL_in_compound_statement_list13776_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CASE_SYMBOL_in_case_statement13788  */
static	ANTLR3_BITWORD FOLLOW_CASE_SYMBOL_in_case_statement13788_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000522E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_CASE_SYMBOL_in_case_statement13788	= { FOLLOW_CASE_SYMBOL_in_case_statement13788_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_case_statement13791  */
static	ANTLR3_BITWORD FOLLOW_expression_in_case_statement13791_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_in_case_statement13791	= { FOLLOW_expression_in_case_statement13791_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_when_expression_in_case_statement13795  */
static	ANTLR3_BITWORD FOLLOW_when_expression_in_case_statement13795_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_when_expression_in_case_statement13795	= { FOLLOW_when_expression_in_case_statement13795_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_then_statement_in_case_statement13797  */
static	ANTLR3_BITWORD FOLLOW_then_statement_in_case_statement13797_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(0x2000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_then_statement_in_case_statement13797	= { FOLLOW_then_statement_in_case_statement13797_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_else_statement_in_case_statement13801  */
static	ANTLR3_BITWORD FOLLOW_else_statement_in_case_statement13801_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000080000) };
static  ANTLR3_BITSET_LIST FOLLOW_else_statement_in_case_statement13801	= { FOLLOW_else_statement_in_case_statement13801_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_END_SYMBOL_in_case_statement13804  */
static	ANTLR3_BITWORD FOLLOW_END_SYMBOL_in_case_statement13804_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000) };
static  ANTLR3_BITSET_LIST FOLLOW_END_SYMBOL_in_case_statement13804	= { FOLLOW_END_SYMBOL_in_case_statement13804_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CASE_SYMBOL_in_case_statement13806  */
static	ANTLR3_BITWORD FOLLOW_CASE_SYMBOL_in_case_statement13806_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CASE_SYMBOL_in_case_statement13806	= { FOLLOW_CASE_SYMBOL_in_case_statement13806_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ELSE_SYMBOL_in_else_statement13815  */
static	ANTLR3_BITWORD FOLLOW_ELSE_SYMBOL_in_else_statement13815_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(0x0238000004025400), ANTLR3_UINT64_LIT(0x0508001020300100), ANTLR3_UINT64_LIT(0x4001400000000211), ANTLR3_UINT64_LIT(0x0000000034106BC0), ANTLR3_UINT64_LIT(0x00100010000A8000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_ELSE_SYMBOL_in_else_statement13815	= { FOLLOW_ELSE_SYMBOL_in_else_statement13815_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_compound_statement_list_in_else_statement13818  */
static	ANTLR3_BITWORD FOLLOW_compound_statement_list_in_else_statement13818_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_compound_statement_list_in_else_statement13818	= { FOLLOW_compound_statement_list_in_else_statement13818_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_label_in_labeled_block13827  */
static	ANTLR3_BITWORD FOLLOW_label_in_labeled_block13827_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000100) };
static  ANTLR3_BITSET_LIST FOLLOW_label_in_labeled_block13827	= { FOLLOW_label_in_labeled_block13827_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_begin_end_block_in_labeled_block13829  */
static	ANTLR3_BITWORD FOLLOW_begin_end_block_in_labeled_block13829_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_begin_end_block_in_labeled_block13829	= { FOLLOW_begin_end_block_in_labeled_block13829_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_label_identifier_in_labeled_block13831  */
static	ANTLR3_BITWORD FOLLOW_label_identifier_in_labeled_block13831_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_label_identifier_in_labeled_block13831	= { FOLLOW_label_identifier_in_labeled_block13831_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_begin_end_block_in_unlabeled_block13842  */
static	ANTLR3_BITWORD FOLLOW_begin_end_block_in_unlabeled_block13842_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_begin_end_block_in_unlabeled_block13842	= { FOLLOW_begin_end_block_in_unlabeled_block13842_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_label_identifier_in_label13854  */
static	ANTLR3_BITWORD FOLLOW_label_identifier_in_label13854_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_label_identifier_in_label13854	= { FOLLOW_label_identifier_in_label13854_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLON_SYMBOL_in_label13856  */
static	ANTLR3_BITWORD FOLLOW_COLON_SYMBOL_in_label13856_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_COLON_SYMBOL_in_label13856	= { FOLLOW_COLON_SYMBOL_in_label13856_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_pure_identifier_in_label_identifier13875  */
static	ANTLR3_BITWORD FOLLOW_pure_identifier_in_label_identifier13875_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_pure_identifier_in_label_identifier13875	= { FOLLOW_pure_identifier_in_label_identifier13875_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_keyword_sp_in_label_identifier13879  */
static	ANTLR3_BITWORD FOLLOW_keyword_sp_in_label_identifier13879_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_keyword_sp_in_label_identifier13879	= { FOLLOW_keyword_sp_in_label_identifier13879_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BEGIN_SYMBOL_in_begin_end_block13889  */
static	ANTLR3_BITWORD FOLLOW_BEGIN_SYMBOL_in_begin_end_block13889_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(0x0238800004025400), ANTLR3_UINT64_LIT(0x0508001020300100), ANTLR3_UINT64_LIT(0x4001400000000211), ANTLR3_UINT64_LIT(0x0000000034106BC0), ANTLR3_UINT64_LIT(0x00100010000A8000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_BEGIN_SYMBOL_in_begin_end_block13889	= { FOLLOW_BEGIN_SYMBOL_in_begin_end_block13889_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_sp_declarations_in_begin_end_block13892  */
static	ANTLR3_BITWORD FOLLOW_sp_declarations_in_begin_end_block13892_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(0x0238000004025400), ANTLR3_UINT64_LIT(0x0508001020300100), ANTLR3_UINT64_LIT(0x4001400000000211), ANTLR3_UINT64_LIT(0x0000000034106BC0), ANTLR3_UINT64_LIT(0x00100010000A8000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_sp_declarations_in_begin_end_block13892	= { FOLLOW_sp_declarations_in_begin_end_block13892_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_compound_statement_list_in_begin_end_block13895  */
static	ANTLR3_BITWORD FOLLOW_compound_statement_list_in_begin_end_block13895_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000080000) };
static  ANTLR3_BITSET_LIST FOLLOW_compound_statement_list_in_begin_end_block13895	= { FOLLOW_compound_statement_list_in_begin_end_block13895_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_END_SYMBOL_in_begin_end_block13898  */
static	ANTLR3_BITWORD FOLLOW_END_SYMBOL_in_begin_end_block13898_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_END_SYMBOL_in_begin_end_block13898	= { FOLLOW_END_SYMBOL_in_begin_end_block13898_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_label_in_labeled_control13907  */
static	ANTLR3_BITWORD FOLLOW_label_in_labeled_control13907_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000001000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_label_in_labeled_control13907	= { FOLLOW_label_in_labeled_control13907_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_unlabeled_control_in_labeled_control13909  */
static	ANTLR3_BITWORD FOLLOW_unlabeled_control_in_labeled_control13909_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_unlabeled_control_in_labeled_control13909	= { FOLLOW_unlabeled_control_in_labeled_control13909_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_label_identifier_in_labeled_control13911  */
static	ANTLR3_BITWORD FOLLOW_label_identifier_in_labeled_control13911_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_label_identifier_in_labeled_control13911	= { FOLLOW_label_identifier_in_labeled_control13911_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_loop_block_in_unlabeled_control13921  */
static	ANTLR3_BITWORD FOLLOW_loop_block_in_unlabeled_control13921_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_loop_block_in_unlabeled_control13921	= { FOLLOW_loop_block_in_unlabeled_control13921_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_while_do_block_in_unlabeled_control13926  */
static	ANTLR3_BITWORD FOLLOW_while_do_block_in_unlabeled_control13926_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_while_do_block_in_unlabeled_control13926	= { FOLLOW_while_do_block_in_unlabeled_control13926_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_repeat_until_block_in_unlabeled_control13931  */
static	ANTLR3_BITWORD FOLLOW_repeat_until_block_in_unlabeled_control13931_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_repeat_until_block_in_unlabeled_control13931	= { FOLLOW_repeat_until_block_in_unlabeled_control13931_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOOP_SYMBOL_in_loop_block13940  */
static	ANTLR3_BITWORD FOLLOW_LOOP_SYMBOL_in_loop_block13940_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(0x0238000004025400), ANTLR3_UINT64_LIT(0x0508001020300100), ANTLR3_UINT64_LIT(0x4001400000000211), ANTLR3_UINT64_LIT(0x0000000034106BC0), ANTLR3_UINT64_LIT(0x00100010000A8000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_LOOP_SYMBOL_in_loop_block13940	= { FOLLOW_LOOP_SYMBOL_in_loop_block13940_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_compound_statement_list_in_loop_block13943  */
static	ANTLR3_BITWORD FOLLOW_compound_statement_list_in_loop_block13943_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000080000) };
static  ANTLR3_BITSET_LIST FOLLOW_compound_statement_list_in_loop_block13943	= { FOLLOW_compound_statement_list_in_loop_block13943_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_END_SYMBOL_in_loop_block13945  */
static	ANTLR3_BITWORD FOLLOW_END_SYMBOL_in_loop_block13945_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_END_SYMBOL_in_loop_block13945	= { FOLLOW_END_SYMBOL_in_loop_block13945_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOOP_SYMBOL_in_loop_block13947  */
static	ANTLR3_BITWORD FOLLOW_LOOP_SYMBOL_in_loop_block13947_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_LOOP_SYMBOL_in_loop_block13947	= { FOLLOW_LOOP_SYMBOL_in_loop_block13947_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WHILE_SYMBOL_in_while_do_block13956  */
static	ANTLR3_BITWORD FOLLOW_WHILE_SYMBOL_in_while_do_block13956_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_WHILE_SYMBOL_in_while_do_block13956	= { FOLLOW_WHILE_SYMBOL_in_while_do_block13956_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_while_do_block13959  */
static	ANTLR3_BITWORD FOLLOW_expression_in_while_do_block13959_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_while_do_block13959	= { FOLLOW_expression_in_while_do_block13959_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DO_SYMBOL_in_while_do_block13961  */
static	ANTLR3_BITWORD FOLLOW_DO_SYMBOL_in_while_do_block13961_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(0x0238000004025400), ANTLR3_UINT64_LIT(0x0508001020300100), ANTLR3_UINT64_LIT(0x4001400000000211), ANTLR3_UINT64_LIT(0x0000000034106BC0), ANTLR3_UINT64_LIT(0x00100010000A8000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_DO_SYMBOL_in_while_do_block13961	= { FOLLOW_DO_SYMBOL_in_while_do_block13961_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_compound_statement_list_in_while_do_block13963  */
static	ANTLR3_BITWORD FOLLOW_compound_statement_list_in_while_do_block13963_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000080000) };
static  ANTLR3_BITSET_LIST FOLLOW_compound_statement_list_in_while_do_block13963	= { FOLLOW_compound_statement_list_in_while_do_block13963_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_END_SYMBOL_in_while_do_block13965  */
static	ANTLR3_BITWORD FOLLOW_END_SYMBOL_in_while_do_block13965_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_END_SYMBOL_in_while_do_block13965	= { FOLLOW_END_SYMBOL_in_while_do_block13965_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WHILE_SYMBOL_in_while_do_block13967  */
static	ANTLR3_BITWORD FOLLOW_WHILE_SYMBOL_in_while_do_block13967_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_WHILE_SYMBOL_in_while_do_block13967	= { FOLLOW_WHILE_SYMBOL_in_while_do_block13967_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REPEAT_SYMBOL_in_repeat_until_block13976  */
static	ANTLR3_BITWORD FOLLOW_REPEAT_SYMBOL_in_repeat_until_block13976_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(0x0238000004025400), ANTLR3_UINT64_LIT(0x0508001020300100), ANTLR3_UINT64_LIT(0x4001400000000211), ANTLR3_UINT64_LIT(0x0000000034106BC0), ANTLR3_UINT64_LIT(0x00100010000A8000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_REPEAT_SYMBOL_in_repeat_until_block13976	= { FOLLOW_REPEAT_SYMBOL_in_repeat_until_block13976_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_compound_statement_list_in_repeat_until_block13979  */
static	ANTLR3_BITWORD FOLLOW_compound_statement_list_in_repeat_until_block13979_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_block13979	= { FOLLOW_compound_statement_list_in_repeat_until_block13979_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNTIL_SYMBOL_in_repeat_until_block13981  */
static	ANTLR3_BITWORD FOLLOW_UNTIL_SYMBOL_in_repeat_until_block13981_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_UNTIL_SYMBOL_in_repeat_until_block13981	= { FOLLOW_UNTIL_SYMBOL_in_repeat_until_block13981_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_repeat_until_block13983  */
static	ANTLR3_BITWORD FOLLOW_expression_in_repeat_until_block13983_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000080000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_repeat_until_block13983	= { FOLLOW_expression_in_repeat_until_block13983_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_END_SYMBOL_in_repeat_until_block13985  */
static	ANTLR3_BITWORD FOLLOW_END_SYMBOL_in_repeat_until_block13985_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000100) };
static  ANTLR3_BITSET_LIST FOLLOW_END_SYMBOL_in_repeat_until_block13985	= { FOLLOW_END_SYMBOL_in_repeat_until_block13985_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REPEAT_SYMBOL_in_repeat_until_block13987  */
static	ANTLR3_BITWORD FOLLOW_REPEAT_SYMBOL_in_repeat_until_block13987_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_REPEAT_SYMBOL_in_repeat_until_block13987	= { FOLLOW_REPEAT_SYMBOL_in_repeat_until_block13987_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_sp_declaration_in_sp_declarations13997  */
static	ANTLR3_BITWORD FOLLOW_sp_declaration_in_sp_declarations13997_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000200000) };
static  ANTLR3_BITSET_LIST FOLLOW_sp_declaration_in_sp_declarations13997	= { FOLLOW_sp_declaration_in_sp_declarations13997_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SEMICOLON_SYMBOL_in_sp_declarations13999  */
static	ANTLR3_BITWORD FOLLOW_SEMICOLON_SYMBOL_in_sp_declarations13999_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), 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_SEMICOLON_SYMBOL_in_sp_declarations13999	= { FOLLOW_SEMICOLON_SYMBOL_in_sp_declarations13999_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DECLARE_SYMBOL_in_sp_declaration14010  */
static	ANTLR3_BITWORD FOLLOW_DECLARE_SYMBOL_in_sp_declaration14010_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000800000), ANTLR3_UINT64_LIT(0x0000000000000008), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000001000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_DECLARE_SYMBOL_in_sp_declaration14010	= { FOLLOW_DECLARE_SYMBOL_in_sp_declaration14010_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_variable_declaration_in_sp_declaration14017  */
static	ANTLR3_BITWORD FOLLOW_variable_declaration_in_sp_declaration14017_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_variable_declaration_in_sp_declaration14017	= { FOLLOW_variable_declaration_in_sp_declaration14017_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_condition_declaration_in_sp_declaration14023  */
static	ANTLR3_BITWORD FOLLOW_condition_declaration_in_sp_declaration14023_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_condition_declaration_in_sp_declaration14023	= { FOLLOW_condition_declaration_in_sp_declaration14023_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_handler_declaration_in_sp_declaration14029  */
static	ANTLR3_BITWORD FOLLOW_handler_declaration_in_sp_declaration14029_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_handler_declaration_in_sp_declaration14029	= { FOLLOW_handler_declaration_in_sp_declaration14029_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_cursor_declaration_in_sp_declaration14035  */
static	ANTLR3_BITWORD FOLLOW_cursor_declaration_in_sp_declaration14035_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_cursor_declaration_in_sp_declaration14035	= { FOLLOW_cursor_declaration_in_sp_declaration14035_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_in_variable_declaration14048  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_in_variable_declaration14048_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(0x0000400000010058), ANTLR3_UINT64_LIT(0x0000200000001000), ANTLR3_UINT64_LIT(0x0000010000070160), ANTLR3_UINT64_LIT(0x0000000084000008), ANTLR3_UINT64_LIT(0x0000000014000038), ANTLR3_UINT64_LIT(0x0000000000200000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_list_in_variable_declaration14048	= { FOLLOW_identifier_list_in_variable_declaration14048_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_data_type_in_variable_declaration14050  */
static	ANTLR3_BITWORD FOLLOW_data_type_in_variable_declaration14050_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_data_type_in_variable_declaration14050	= { FOLLOW_data_type_in_variable_declaration14050_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLLATE_SYMBOL_in_variable_declaration14053  */
static	ANTLR3_BITWORD FOLLOW_COLLATE_SYMBOL_in_variable_declaration14053_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0002000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_COLLATE_SYMBOL_in_variable_declaration14053	= { FOLLOW_COLLATE_SYMBOL_in_variable_declaration14053_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_collation_name_or_default_in_variable_declaration14055  */
static	ANTLR3_BITWORD FOLLOW_collation_name_or_default_in_variable_declaration14055_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), 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_collation_name_or_default_in_variable_declaration14055	= { FOLLOW_collation_name_or_default_in_variable_declaration14055_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_variable_declaration14060  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_variable_declaration14060_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_variable_declaration14060	= { FOLLOW_DEFAULT_SYMBOL_in_variable_declaration14060_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_variable_declaration14062  */
static	ANTLR3_BITWORD FOLLOW_expression_in_variable_declaration14062_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_variable_declaration14062	= { FOLLOW_expression_in_variable_declaration14062_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_condition_declaration14073  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_condition_declaration14073_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000200000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_condition_declaration14073	= { FOLLOW_identifier_in_condition_declaration14073_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CONDITION_SYMBOL_in_condition_declaration14075  */
static	ANTLR3_BITWORD FOLLOW_CONDITION_SYMBOL_in_condition_declaration14075_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_CONDITION_SYMBOL_in_condition_declaration14075	= { FOLLOW_CONDITION_SYMBOL_in_condition_declaration14075_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOR_SYMBOL_in_condition_declaration14077  */
static	ANTLR3_BITWORD FOLLOW_FOR_SYMBOL_in_condition_declaration14077_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0400010810000800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FOR_SYMBOL_in_condition_declaration14077	= { FOLLOW_FOR_SYMBOL_in_condition_declaration14077_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_sp_condition_in_condition_declaration14079  */
static	ANTLR3_BITWORD FOLLOW_sp_condition_in_condition_declaration14079_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_sp_condition_in_condition_declaration14079	= { FOLLOW_sp_condition_in_condition_declaration14079_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_sp_condition14088  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_sp_condition14088_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_sp_condition14088	= { FOLLOW_ulong_number_in_sp_condition14088_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_sqlstate_in_sp_condition14093  */
static	ANTLR3_BITWORD FOLLOW_sqlstate_in_sp_condition14093_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_sqlstate_in_sp_condition14093	= { FOLLOW_sqlstate_in_sp_condition14093_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SQLSTATE_SYMBOL_in_sqlstate14102  */
static	ANTLR3_BITWORD FOLLOW_SQLSTATE_SYMBOL_in_sqlstate14102_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(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SQLSTATE_SYMBOL_in_sqlstate14102	= { FOLLOW_SQLSTATE_SYMBOL_in_sqlstate14102_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VALUE_SYMBOL_in_sqlstate14104  */
static	ANTLR3_BITWORD FOLLOW_VALUE_SYMBOL_in_sqlstate14104_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_VALUE_SYMBOL_in_sqlstate14104	= { FOLLOW_VALUE_SYMBOL_in_sqlstate14104_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_sqlstate14107  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_sqlstate14107_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_sqlstate14107	= { FOLLOW_string_literal_in_sqlstate14107_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_handler_declaration14116  */
static	ANTLR3_BITWORD FOLLOW_set_in_handler_declaration14116_bits[]	= { ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_handler_declaration14116	= { FOLLOW_set_in_handler_declaration14116_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_HANDLER_SYMBOL_in_handler_declaration14128  */
static	ANTLR3_BITWORD FOLLOW_HANDLER_SYMBOL_in_handler_declaration14128_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_HANDLER_SYMBOL_in_handler_declaration14128	= { FOLLOW_HANDLER_SYMBOL_in_handler_declaration14128_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOR_SYMBOL_in_handler_declaration14132  */
static	ANTLR3_BITWORD FOLLOW_FOR_SYMBOL_in_handler_declaration14132_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000C00000000), ANTLR3_UINT64_LIT(0x0000001C00000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0400011810100800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FOR_SYMBOL_in_handler_declaration14132	= { FOLLOW_FOR_SYMBOL_in_handler_declaration14132_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_handler_condition_in_handler_declaration14134  */
static	ANTLR3_BITWORD FOLLOW_handler_condition_in_handler_declaration14134_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(0x0238000004025400), ANTLR3_UINT64_LIT(0x0508001020300100), ANTLR3_UINT64_LIT(0x4001400000000211), ANTLR3_UINT64_LIT(0x0000000034106BC0), ANTLR3_UINT64_LIT(0x00100010000A8000), ANTLR3_UINT64_LIT(0x0000001000100020) };
static  ANTLR3_BITSET_LIST FOLLOW_handler_condition_in_handler_declaration14134	= { FOLLOW_handler_condition_in_handler_declaration14134_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_handler_declaration14137  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_handler_declaration14137_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000C00000000), ANTLR3_UINT64_LIT(0x0000001C00000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0400011810100800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_handler_declaration14137	= { FOLLOW_COMMA_SYMBOL_in_handler_declaration14137_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_handler_condition_in_handler_declaration14139  */
static	ANTLR3_BITWORD FOLLOW_handler_condition_in_handler_declaration14139_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(0x0238000004025400), ANTLR3_UINT64_LIT(0x0508001020300100), ANTLR3_UINT64_LIT(0x4001400000000211), ANTLR3_UINT64_LIT(0x0000000034106BC0), ANTLR3_UINT64_LIT(0x00100010000A8000), ANTLR3_UINT64_LIT(0x0000001000100020) };
static  ANTLR3_BITSET_LIST FOLLOW_handler_condition_in_handler_declaration14139	= { FOLLOW_handler_condition_in_handler_declaration14139_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_compound_statement_in_handler_declaration14143  */
static	ANTLR3_BITWORD FOLLOW_compound_statement_in_handler_declaration14143_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_compound_statement_in_handler_declaration14143	= { FOLLOW_compound_statement_in_handler_declaration14143_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_sp_condition_in_handler_condition14152  */
static	ANTLR3_BITWORD FOLLOW_sp_condition_in_handler_condition14152_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_sp_condition_in_handler_condition14152	= { FOLLOW_sp_condition_in_handler_condition14152_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_handler_condition14157  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_handler_condition14157_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_handler_condition14157	= { FOLLOW_identifier_in_handler_condition14157_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SQLWARNING_SYMBOL_in_handler_condition14162  */
static	ANTLR3_BITWORD FOLLOW_SQLWARNING_SYMBOL_in_handler_condition14162_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SQLWARNING_SYMBOL_in_handler_condition14162	= { FOLLOW_SQLWARNING_SYMBOL_in_handler_condition14162_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_not_rule_in_handler_condition14167  */
static	ANTLR3_BITWORD FOLLOW_not_rule_in_handler_condition14167_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_not_rule_in_handler_condition14167	= { FOLLOW_not_rule_in_handler_condition14167_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOUND_SYMBOL_in_handler_condition14169  */
static	ANTLR3_BITWORD FOLLOW_FOUND_SYMBOL_in_handler_condition14169_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_FOUND_SYMBOL_in_handler_condition14169	= { FOLLOW_FOUND_SYMBOL_in_handler_condition14169_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SQLEXCEPTION_SYMBOL_in_handler_condition14174  */
static	ANTLR3_BITWORD FOLLOW_SQLEXCEPTION_SYMBOL_in_handler_condition14174_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SQLEXCEPTION_SYMBOL_in_handler_condition14174	= { FOLLOW_SQLEXCEPTION_SYMBOL_in_handler_condition14174_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_cursor_declaration14183  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_cursor_declaration14183_bits[]	= { ANTLR3_UINT64_LIT(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_identifier_in_cursor_declaration14183	= { FOLLOW_identifier_in_cursor_declaration14183_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CURSOR_SYMBOL_in_cursor_declaration14185  */
static	ANTLR3_BITWORD FOLLOW_CURSOR_SYMBOL_in_cursor_declaration14185_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_CURSOR_SYMBOL_in_cursor_declaration14185	= { FOLLOW_CURSOR_SYMBOL_in_cursor_declaration14185_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOR_SYMBOL_in_cursor_declaration14187  */
static	ANTLR3_BITWORD FOLLOW_FOR_SYMBOL_in_cursor_declaration14187_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_FOR_SYMBOL_in_cursor_declaration14187	= { FOLLOW_FOR_SYMBOL_in_cursor_declaration14187_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_statement_in_cursor_declaration14189  */
static	ANTLR3_BITWORD FOLLOW_select_statement_in_cursor_declaration14189_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_select_statement_in_cursor_declaration14189	= { FOLLOW_select_statement_in_cursor_declaration14189_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ITERATE_SYMBOL_in_iterate_statement14198  */
static	ANTLR3_BITWORD FOLLOW_ITERATE_SYMBOL_in_iterate_statement14198_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_ITERATE_SYMBOL_in_iterate_statement14198	= { FOLLOW_ITERATE_SYMBOL_in_iterate_statement14198_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_label_identifier_in_iterate_statement14200  */
static	ANTLR3_BITWORD FOLLOW_label_identifier_in_iterate_statement14200_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_label_identifier_in_iterate_statement14200	= { FOLLOW_label_identifier_in_iterate_statement14200_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LEAVE_SYMBOL_in_leave_statement14209  */
static	ANTLR3_BITWORD FOLLOW_LEAVE_SYMBOL_in_leave_statement14209_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_LEAVE_SYMBOL_in_leave_statement14209	= { FOLLOW_LEAVE_SYMBOL_in_leave_statement14209_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_label_identifier_in_leave_statement14211  */
static	ANTLR3_BITWORD FOLLOW_label_identifier_in_leave_statement14211_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_label_identifier_in_leave_statement14211	= { FOLLOW_label_identifier_in_leave_statement14211_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GET_SYMBOL_in_get_diagnostics14220  */
static	ANTLR3_BITWORD FOLLOW_GET_SYMBOL_in_get_diagnostics14220_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_diagnostics14220	= { FOLLOW_GET_SYMBOL_in_get_diagnostics14220_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CURRENT_SYMBOL_in_get_diagnostics14227  */
static	ANTLR3_BITWORD FOLLOW_CURRENT_SYMBOL_in_get_diagnostics14227_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0080000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CURRENT_SYMBOL_in_get_diagnostics14227	= { FOLLOW_CURRENT_SYMBOL_in_get_diagnostics14227_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STACKED_SYMBOL_in_get_diagnostics14235  */
static	ANTLR3_BITWORD FOLLOW_STACKED_SYMBOL_in_get_diagnostics14235_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0080000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_STACKED_SYMBOL_in_get_diagnostics14235	= { FOLLOW_STACKED_SYMBOL_in_get_diagnostics14235_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DIAGNOSTICS_SYMBOL_in_get_diagnostics14241  */
static	ANTLR3_BITWORD FOLLOW_DIAGNOSTICS_SYMBOL_in_get_diagnostics14241_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000200000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0017000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_DIAGNOSTICS_SYMBOL_in_get_diagnostics14241	= { FOLLOW_DIAGNOSTICS_SYMBOL_in_get_diagnostics14241_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_statement_information_item_in_get_diagnostics14248  */
static	ANTLR3_BITWORD FOLLOW_statement_information_item_in_get_diagnostics14248_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_statement_information_item_in_get_diagnostics14248	= { FOLLOW_statement_information_item_in_get_diagnostics14248_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_get_diagnostics14251  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_get_diagnostics14251_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0017000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_get_diagnostics14251	= { FOLLOW_COMMA_SYMBOL_in_get_diagnostics14251_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_statement_information_item_in_get_diagnostics14253  */
static	ANTLR3_BITWORD FOLLOW_statement_information_item_in_get_diagnostics14253_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_statement_information_item_in_get_diagnostics14253	= { FOLLOW_statement_information_item_in_get_diagnostics14253_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CONDITION_SYMBOL_in_get_diagnostics14261  */
static	ANTLR3_BITWORD FOLLOW_CONDITION_SYMBOL_in_get_diagnostics14261_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000080), ANTLR3_UINT64_LIT(0x000000C040000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0037000000000400), ANTLR3_UINT64_LIT(0x0400011810100800), ANTLR3_UINT64_LIT(0x0000000C00000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CONDITION_SYMBOL_in_get_diagnostics14261	= { FOLLOW_CONDITION_SYMBOL_in_get_diagnostics14261_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_signal_allowed_expression_in_get_diagnostics14263  */
static	ANTLR3_BITWORD FOLLOW_signal_allowed_expression_in_get_diagnostics14263_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0017000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_signal_allowed_expression_in_get_diagnostics14263	= { FOLLOW_signal_allowed_expression_in_get_diagnostics14263_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_condition_information_item_in_get_diagnostics14265  */
static	ANTLR3_BITWORD FOLLOW_condition_information_item_in_get_diagnostics14265_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_condition_information_item_in_get_diagnostics14265	= { FOLLOW_condition_information_item_in_get_diagnostics14265_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_get_diagnostics14268  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_get_diagnostics14268_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0017000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_get_diagnostics14268	= { FOLLOW_COMMA_SYMBOL_in_get_diagnostics14268_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_condition_information_item_in_get_diagnostics14270  */
static	ANTLR3_BITWORD FOLLOW_condition_information_item_in_get_diagnostics14270_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_condition_information_item_in_get_diagnostics14270	= { FOLLOW_condition_information_item_in_get_diagnostics14270_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_literal_in_signal_allowed_expression14285  */
static	ANTLR3_BITWORD FOLLOW_literal_in_signal_allowed_expression14285_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_literal_in_signal_allowed_expression14285	= { FOLLOW_literal_in_signal_allowed_expression14285_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_variable_in_signal_allowed_expression14290  */
static	ANTLR3_BITWORD FOLLOW_variable_in_signal_allowed_expression14290_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_variable_in_signal_allowed_expression14290	= { FOLLOW_variable_in_signal_allowed_expression14290_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_signal_allowed_expression14295  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_signal_allowed_expression14295_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_in_signal_allowed_expression14295	= { FOLLOW_qualified_identifier_in_signal_allowed_expression14295_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_variable_in_statement_information_item14305  */
static	ANTLR3_BITWORD FOLLOW_variable_in_statement_information_item14305_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_variable_in_statement_information_item14305	= { FOLLOW_variable_in_statement_information_item14305_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_statement_information_item14309  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_statement_information_item14309_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_identifier_in_statement_information_item14309	= { FOLLOW_identifier_in_statement_information_item14309_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_statement_information_item14312  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_statement_information_item14312_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_item14312	= { FOLLOW_EQUAL_OPERATOR_in_statement_information_item14312_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_statement_information_item14314  */
static	ANTLR3_BITWORD FOLLOW_set_in_statement_information_item14314_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_statement_information_item14314	= { FOLLOW_set_in_statement_information_item14314_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_variable_in_condition_information_item14330  */
static	ANTLR3_BITWORD FOLLOW_variable_in_condition_information_item14330_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_variable_in_condition_information_item14330	= { FOLLOW_variable_in_condition_information_item14330_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_condition_information_item14334  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_condition_information_item14334_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_identifier_in_condition_information_item14334	= { FOLLOW_identifier_in_condition_information_item14334_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_condition_information_item14337  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_condition_information_item14337_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_item14337	= { FOLLOW_EQUAL_OPERATOR_in_condition_information_item14337_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_signal_information_item_name_in_condition_information_item14340  */
static	ANTLR3_BITWORD FOLLOW_signal_information_item_name_in_condition_information_item14340_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_signal_information_item_name_in_condition_information_item14340	= { FOLLOW_signal_information_item_name_in_condition_information_item14340_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RETURNED_SQLSTATE_SYMBOL_in_condition_information_item14344  */
static	ANTLR3_BITWORD FOLLOW_RETURNED_SQLSTATE_SYMBOL_in_condition_information_item14344_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_RETURNED_SQLSTATE_SYMBOL_in_condition_information_item14344	= { FOLLOW_RETURNED_SQLSTATE_SYMBOL_in_condition_information_item14344_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SIGNAL_SYMBOL_in_signal_statement14418  */
static	ANTLR3_BITWORD FOLLOW_SIGNAL_SYMBOL_in_signal_statement14418_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000800000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_SIGNAL_SYMBOL_in_signal_statement14418	= { FOLLOW_SIGNAL_SYMBOL_in_signal_statement14418_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_signal_statement14421  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_signal_statement14421_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_signal_statement14421	= { FOLLOW_identifier_in_signal_statement14421_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_sqlstate_in_signal_statement14425  */
static	ANTLR3_BITWORD FOLLOW_sqlstate_in_signal_statement14425_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_sqlstate_in_signal_statement14425	= { FOLLOW_sqlstate_in_signal_statement14425_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SET_SYMBOL_in_signal_statement14429  */
static	ANTLR3_BITWORD FOLLOW_SET_SYMBOL_in_signal_statement14429_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_statement14429	= { FOLLOW_SET_SYMBOL_in_signal_statement14429_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_signal_information_item_in_signal_statement14431  */
static	ANTLR3_BITWORD FOLLOW_signal_information_item_in_signal_statement14431_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_signal_information_item_in_signal_statement14431	= { FOLLOW_signal_information_item_in_signal_statement14431_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_signal_statement14434  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_signal_statement14434_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_statement14434	= { FOLLOW_COMMA_SYMBOL_in_signal_statement14434_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_signal_information_item_in_signal_statement14436  */
static	ANTLR3_BITWORD FOLLOW_signal_information_item_in_signal_statement14436_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_signal_information_item_in_signal_statement14436	= { FOLLOW_signal_information_item_in_signal_statement14436_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RESIGNAL_SYMBOL_in_resignal_statement14449  */
static	ANTLR3_BITWORD FOLLOW_RESIGNAL_SYMBOL_in_resignal_statement14449_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000804000000) };
static  ANTLR3_BITSET_LIST FOLLOW_RESIGNAL_SYMBOL_in_resignal_statement14449	= { FOLLOW_RESIGNAL_SYMBOL_in_resignal_statement14449_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SQLSTATE_SYMBOL_in_resignal_statement14452  */
static	ANTLR3_BITWORD FOLLOW_SQLSTATE_SYMBOL_in_resignal_statement14452_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_SQLSTATE_SYMBOL_in_resignal_statement14452	= { FOLLOW_SQLSTATE_SYMBOL_in_resignal_statement14452_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VALUE_SYMBOL_in_resignal_statement14454  */
static	ANTLR3_BITWORD FOLLOW_VALUE_SYMBOL_in_resignal_statement14454_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_VALUE_SYMBOL_in_resignal_statement14454	= { FOLLOW_VALUE_SYMBOL_in_resignal_statement14454_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_identifier_in_resignal_statement14457  */
static	ANTLR3_BITWORD FOLLOW_text_or_identifier_in_resignal_statement14457_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_identifier_in_resignal_statement14457	= { FOLLOW_text_or_identifier_in_resignal_statement14457_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SET_SYMBOL_in_resignal_statement14464  */
static	ANTLR3_BITWORD FOLLOW_SET_SYMBOL_in_resignal_statement14464_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_statement14464	= { FOLLOW_SET_SYMBOL_in_resignal_statement14464_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_signal_information_item_in_resignal_statement14466  */
static	ANTLR3_BITWORD FOLLOW_signal_information_item_in_resignal_statement14466_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_signal_information_item_in_resignal_statement14466	= { FOLLOW_signal_information_item_in_resignal_statement14466_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_resignal_statement14469  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_resignal_statement14469_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_statement14469	= { FOLLOW_COMMA_SYMBOL_in_resignal_statement14469_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_signal_information_item_in_resignal_statement14471  */
static	ANTLR3_BITWORD FOLLOW_signal_information_item_in_resignal_statement14471_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_signal_information_item_in_resignal_statement14471	= { FOLLOW_signal_information_item_in_resignal_statement14471_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_signal_information_item_name_in_signal_information_item14484  */
static	ANTLR3_BITWORD FOLLOW_signal_information_item_name_in_signal_information_item14484_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_signal_information_item_name_in_signal_information_item14484	= { FOLLOW_signal_information_item_name_in_signal_information_item14484_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_signal_information_item14486  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_signal_information_item14486_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000080), ANTLR3_UINT64_LIT(0x000000C040000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0037000000000400), ANTLR3_UINT64_LIT(0x0400011810100800), ANTLR3_UINT64_LIT(0x0000000C00000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_signal_information_item14486	= { FOLLOW_EQUAL_OPERATOR_in_signal_information_item14486_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_signal_allowed_expression_in_signal_information_item14488  */
static	ANTLR3_BITWORD FOLLOW_signal_allowed_expression_in_signal_information_item14488_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_signal_allowed_expression_in_signal_information_item14488	= { FOLLOW_signal_allowed_expression_in_signal_information_item14488_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_SYMBOL_in_cursor_open14497  */
static	ANTLR3_BITWORD FOLLOW_OPEN_SYMBOL_in_cursor_open14497_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_SYMBOL_in_cursor_open14497	= { FOLLOW_OPEN_SYMBOL_in_cursor_open14497_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_cursor_open14499  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_cursor_open14499_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_cursor_open14499	= { FOLLOW_identifier_in_cursor_open14499_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_SYMBOL_in_cursor_close14508  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_SYMBOL_in_cursor_close14508_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_SYMBOL_in_cursor_close14508	= { FOLLOW_CLOSE_SYMBOL_in_cursor_close14508_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_cursor_close14510  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_cursor_close14510_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_cursor_close14510	= { FOLLOW_identifier_in_cursor_close14510_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FETCH_SYMBOL_in_cursor_fetch14519  */
static	ANTLR3_BITWORD FOLLOW_FETCH_SYMBOL_in_cursor_fetch14519_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_FETCH_SYMBOL_in_cursor_fetch14519	= { FOLLOW_FETCH_SYMBOL_in_cursor_fetch14519_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_cursor_fetch14521  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_cursor_fetch14521_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_cursor_fetch14521	= { FOLLOW_identifier_in_cursor_fetch14521_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTO_SYMBOL_in_cursor_fetch14523  */
static	ANTLR3_BITWORD FOLLOW_INTO_SYMBOL_in_cursor_fetch14523_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_INTO_SYMBOL_in_cursor_fetch14523	= { FOLLOW_INTO_SYMBOL_in_cursor_fetch14523_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_in_cursor_fetch14525  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_in_cursor_fetch14525_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_list_in_cursor_fetch14525	= { FOLLOW_identifier_list_in_cursor_fetch14525_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AT_SYMBOL_in_schedule14537  */
static	ANTLR3_BITWORD FOLLOW_AT_SYMBOL_in_schedule14537_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_AT_SYMBOL_in_schedule14537	= { FOLLOW_AT_SYMBOL_in_schedule14537_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_schedule14539  */
static	ANTLR3_BITWORD FOLLOW_expression_in_schedule14539_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_schedule14539	= { FOLLOW_expression_in_schedule14539_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EVERY_SYMBOL_in_schedule14544  */
static	ANTLR3_BITWORD FOLLOW_EVERY_SYMBOL_in_schedule14544_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_EVERY_SYMBOL_in_schedule14544	= { FOLLOW_EVERY_SYMBOL_in_schedule14544_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_interval_in_schedule14546  */
static	ANTLR3_BITWORD FOLLOW_interval_in_schedule14546_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_schedule14546	= { FOLLOW_interval_in_schedule14546_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STARTS_SYMBOL_in_schedule14549  */
static	ANTLR3_BITWORD FOLLOW_STARTS_SYMBOL_in_schedule14549_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_STARTS_SYMBOL_in_schedule14549	= { FOLLOW_STARTS_SYMBOL_in_schedule14549_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_schedule14551  */
static	ANTLR3_BITWORD FOLLOW_expression_in_schedule14551_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_schedule14551	= { FOLLOW_expression_in_schedule14551_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ENDS_SYMBOL_in_schedule14556  */
static	ANTLR3_BITWORD FOLLOW_ENDS_SYMBOL_in_schedule14556_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_ENDS_SYMBOL_in_schedule14556	= { FOLLOW_ENDS_SYMBOL_in_schedule14556_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_schedule14558  */
static	ANTLR3_BITWORD FOLLOW_expression_in_schedule14558_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_schedule14558	= { FOLLOW_expression_in_schedule14558_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_database_option14569  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_database_option14569_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(0x0000000000050000) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_database_option14569	= { FOLLOW_DEFAULT_SYMBOL_in_database_option14569_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_in_database_option14579  */
static	ANTLR3_BITWORD FOLLOW_charset_in_database_option14579_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0002000000000010), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000900000) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_in_database_option14579	= { FOLLOW_charset_in_database_option14579_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_database_option14581  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_database_option14581_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0002000000000010), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_database_option14581	= { FOLLOW_EQUAL_OPERATOR_in_database_option14581_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_name_or_default_in_database_option14584  */
static	ANTLR3_BITWORD FOLLOW_charset_name_or_default_in_database_option14584_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_name_or_default_in_database_option14584	= { FOLLOW_charset_name_or_default_in_database_option14584_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLLATE_SYMBOL_in_database_option14591  */
static	ANTLR3_BITWORD FOLLOW_COLLATE_SYMBOL_in_database_option14591_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0002000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000900000) };
static  ANTLR3_BITSET_LIST FOLLOW_COLLATE_SYMBOL_in_database_option14591	= { FOLLOW_COLLATE_SYMBOL_in_database_option14591_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_database_option14593  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_database_option14593_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0002000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_database_option14593	= { FOLLOW_EQUAL_OPERATOR_in_database_option14593_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_collation_name_or_default_in_database_option14596  */
static	ANTLR3_BITWORD FOLLOW_collation_name_or_default_in_database_option14596_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_collation_name_or_default_in_database_option14596	= { FOLLOW_collation_name_or_default_in_database_option14596_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_spec_in_column_definition14609  */
static	ANTLR3_BITWORD FOLLOW_field_spec_in_column_definition14609_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_field_spec_in_column_definition14609	= { FOLLOW_field_spec_in_column_definition14609_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_reference_definition_in_column_definition14612  */
static	ANTLR3_BITWORD FOLLOW_reference_definition_in_column_definition14612_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_reference_definition_in_column_definition14612	= { FOLLOW_reference_definition_in_column_definition14612_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHECK_SYMBOL_in_column_definition14617  */
static	ANTLR3_BITWORD FOLLOW_CHECK_SYMBOL_in_column_definition14617_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_CHECK_SYMBOL_in_column_definition14617	= { FOLLOW_CHECK_SYMBOL_in_column_definition14617_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_column_definition14619  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_column_definition14619_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_column_definition14619	= { FOLLOW_OPEN_PAR_SYMBOL_in_column_definition14619_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_column_definition14621  */
static	ANTLR3_BITWORD FOLLOW_expression_in_column_definition14621_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_column_definition14621	= { FOLLOW_expression_in_column_definition14621_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_column_definition14623  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_column_definition14623_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_column_definition14623	= { FOLLOW_CLOSE_PAR_SYMBOL_in_column_definition14623_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_name_in_field_spec14635  */
static	ANTLR3_BITWORD FOLLOW_column_name_in_field_spec14635_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(0x0000400000010058), ANTLR3_UINT64_LIT(0x0000200000001000), ANTLR3_UINT64_LIT(0x0000010000070160), ANTLR3_UINT64_LIT(0x0000000084000008), ANTLR3_UINT64_LIT(0x0000000014000038), ANTLR3_UINT64_LIT(0x0000000000200000) };
static  ANTLR3_BITSET_LIST FOLLOW_column_name_in_field_spec14635	= { FOLLOW_column_name_in_field_spec14635_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_def_in_field_spec14637  */
static	ANTLR3_BITWORD FOLLOW_field_def_in_field_spec14637_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_field_def_in_field_spec14637	= { FOLLOW_field_def_in_field_spec14637_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_data_type_in_field_def14646  */
static	ANTLR3_BITWORD FOLLOW_data_type_in_field_def14646_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(0x0002000000040000), ANTLR3_UINT64_LIT(0x0080000000080000), ANTLR3_UINT64_LIT(0x100010C800000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000800000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_data_type_in_field_def14646	= { FOLLOW_data_type_in_field_def14646_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_def_tail_in_field_def14648  */
static	ANTLR3_BITWORD FOLLOW_field_def_tail_in_field_def14648_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_field_def_tail_in_field_def14648	= { FOLLOW_field_def_tail_in_field_def14648_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_attribute_in_field_def_tail14668  */
static	ANTLR3_BITWORD FOLLOW_attribute_in_field_def_tail14668_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(0x0002000000040000), ANTLR3_UINT64_LIT(0x0080000000000000), ANTLR3_UINT64_LIT(0x100010C800000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_attribute_in_field_def_tail14668	= { FOLLOW_attribute_in_field_def_tail14668_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLLATE_SYMBOL_in_field_def_tail14677  */
static	ANTLR3_BITWORD FOLLOW_COLLATE_SYMBOL_in_field_def_tail14677_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_COLLATE_SYMBOL_in_field_def_tail14677	= { FOLLOW_COLLATE_SYMBOL_in_field_def_tail14677_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_collation_name_in_field_def_tail14679  */
static	ANTLR3_BITWORD FOLLOW_collation_name_in_field_def_tail14679_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0000800000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_collation_name_in_field_def_tail14679	= { FOLLOW_collation_name_in_field_def_tail14679_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GENERATED_SYMBOL_in_field_def_tail14684  */
static	ANTLR3_BITWORD FOLLOW_GENERATED_SYMBOL_in_field_def_tail14684_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_GENERATED_SYMBOL_in_field_def_tail14684	= { FOLLOW_GENERATED_SYMBOL_in_field_def_tail14684_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALWAYS_SYMBOL_in_field_def_tail14686  */
static	ANTLR3_BITWORD FOLLOW_ALWAYS_SYMBOL_in_field_def_tail14686_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_ALWAYS_SYMBOL_in_field_def_tail14686	= { FOLLOW_ALWAYS_SYMBOL_in_field_def_tail14686_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AS_SYMBOL_in_field_def_tail14690  */
static	ANTLR3_BITWORD FOLLOW_AS_SYMBOL_in_field_def_tail14690_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_AS_SYMBOL_in_field_def_tail14690	= { FOLLOW_AS_SYMBOL_in_field_def_tail14690_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_field_def_tail14694  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_field_def_tail14694_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_field_def_tail14694	= { FOLLOW_OPEN_PAR_SYMBOL_in_field_def_tail14694_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_field_def_tail14696  */
static	ANTLR3_BITWORD FOLLOW_expression_in_field_def_tail14696_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_field_def_tail14696	= { FOLLOW_expression_in_field_def_tail14696_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_field_def_tail14698  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_field_def_tail14698_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(0x0080000000000000), ANTLR3_UINT64_LIT(0x1000008C00000000), ANTLR3_UINT64_LIT(0x0100000000000000), ANTLR3_UINT64_LIT(0x0000000200004000) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_field_def_tail14698	= { FOLLOW_CLOSE_PAR_SYMBOL_in_field_def_tail14698_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_gcol_attribute_in_field_def_tail14709  */
static	ANTLR3_BITWORD FOLLOW_gcol_attribute_in_field_def_tail14709_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(0x0080000000000000), ANTLR3_UINT64_LIT(0x1000008C00000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_gcol_attribute_in_field_def_tail14709	= { FOLLOW_gcol_attribute_in_field_def_tail14709_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NOT_SYMBOL_in_attribute14719  */
static	ANTLR3_BITWORD FOLLOW_NOT_SYMBOL_in_attribute14719_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x000000C000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_NOT_SYMBOL_in_attribute14719	= { FOLLOW_NOT_SYMBOL_in_attribute14719_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_null_literal_in_attribute14722  */
static	ANTLR3_BITWORD FOLLOW_null_literal_in_attribute14722_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_null_literal_in_attribute14722	= { FOLLOW_null_literal_in_attribute14722_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_attribute14727  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_attribute14727_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000080), ANTLR3_UINT64_LIT(0x000000D040000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0020000000000400), ANTLR3_UINT64_LIT(0x0C00010810100800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_attribute14727	= { FOLLOW_DEFAULT_SYMBOL_in_attribute14727_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_signed_literal_in_attribute14730  */
static	ANTLR3_BITWORD FOLLOW_signed_literal_in_attribute14730_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_signed_literal_in_attribute14730	= { FOLLOW_signed_literal_in_attribute14730_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NOW_SYMBOL_in_attribute14734  */
static	ANTLR3_BITWORD FOLLOW_NOW_SYMBOL_in_attribute14734_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_NOW_SYMBOL_in_attribute14734	= { FOLLOW_NOW_SYMBOL_in_attribute14734_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_time_function_parameters_in_attribute14736  */
static	ANTLR3_BITWORD FOLLOW_time_function_parameters_in_attribute14736_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_time_function_parameters_in_attribute14736	= { FOLLOW_time_function_parameters_in_attribute14736_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_attribute14743  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_attribute14743_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_ON_SYMBOL_in_attribute14743	= { FOLLOW_ON_SYMBOL_in_attribute14743_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UPDATE_SYMBOL_in_attribute14745  */
static	ANTLR3_BITWORD FOLLOW_UPDATE_SYMBOL_in_attribute14745_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_UPDATE_SYMBOL_in_attribute14745	= { FOLLOW_UPDATE_SYMBOL_in_attribute14745_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NOW_SYMBOL_in_attribute14747  */
static	ANTLR3_BITWORD FOLLOW_NOW_SYMBOL_in_attribute14747_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_NOW_SYMBOL_in_attribute14747	= { FOLLOW_NOW_SYMBOL_in_attribute14747_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_time_function_parameters_in_attribute14749  */
static	ANTLR3_BITWORD FOLLOW_time_function_parameters_in_attribute14749_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_time_function_parameters_in_attribute14749	= { FOLLOW_time_function_parameters_in_attribute14749_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AUTO_INCREMENT_SYMBOL_in_attribute14755  */
static	ANTLR3_BITWORD FOLLOW_AUTO_INCREMENT_SYMBOL_in_attribute14755_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_AUTO_INCREMENT_SYMBOL_in_attribute14755	= { FOLLOW_AUTO_INCREMENT_SYMBOL_in_attribute14755_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SERIAL_SYMBOL_in_attribute14760  */
static	ANTLR3_BITWORD FOLLOW_SERIAL_SYMBOL_in_attribute14760_bits[]	= { ANTLR3_UINT64_LIT(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_SERIAL_SYMBOL_in_attribute14760	= { FOLLOW_SERIAL_SYMBOL_in_attribute14760_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_attribute14762  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_attribute14762_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_attribute14762	= { FOLLOW_DEFAULT_SYMBOL_in_attribute14762_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VALUE_SYMBOL_in_attribute14764  */
static	ANTLR3_BITWORD FOLLOW_VALUE_SYMBOL_in_attribute14764_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_VALUE_SYMBOL_in_attribute14764	= { FOLLOW_VALUE_SYMBOL_in_attribute14764_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNIQUE_SYMBOL_in_attribute14771  */
static	ANTLR3_BITWORD FOLLOW_UNIQUE_SYMBOL_in_attribute14771_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_UNIQUE_SYMBOL_in_attribute14771	= { FOLLOW_UNIQUE_SYMBOL_in_attribute14771_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_attribute14776  */
static	ANTLR3_BITWORD FOLLOW_set_in_attribute14776_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0080000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_attribute14776	= { FOLLOW_set_in_attribute14776_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_KEY_SYMBOL_in_attribute14784  */
static	ANTLR3_BITWORD FOLLOW_KEY_SYMBOL_in_attribute14784_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_KEY_SYMBOL_in_attribute14784	= { FOLLOW_KEY_SYMBOL_in_attribute14784_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_KEY_SYMBOL_in_attribute14789  */
static	ANTLR3_BITWORD FOLLOW_KEY_SYMBOL_in_attribute14789_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_KEY_SYMBOL_in_attribute14789	= { FOLLOW_KEY_SYMBOL_in_attribute14789_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMENT_SYMBOL_in_attribute14794  */
static	ANTLR3_BITWORD FOLLOW_COMMENT_SYMBOL_in_attribute14794_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMENT_SYMBOL_in_attribute14794	= { FOLLOW_COMMENT_SYMBOL_in_attribute14794_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_attribute14796  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_attribute14796_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_attribute14796	= { FOLLOW_string_literal_in_attribute14796_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLLATE_SYMBOL_in_attribute14801  */
static	ANTLR3_BITWORD FOLLOW_COLLATE_SYMBOL_in_attribute14801_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_COLLATE_SYMBOL_in_attribute14801	= { FOLLOW_COLLATE_SYMBOL_in_attribute14801_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_collation_name_in_attribute14803  */
static	ANTLR3_BITWORD FOLLOW_collation_name_in_attribute14803_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_collation_name_in_attribute14803	= { FOLLOW_collation_name_in_attribute14803_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLUMN_FORMAT_SYMBOL_in_attribute14808  */
static	ANTLR3_BITWORD FOLLOW_COLUMN_FORMAT_SYMBOL_in_attribute14808_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(0x0002000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COLUMN_FORMAT_SYMBOL_in_attribute14808	= { FOLLOW_COLUMN_FORMAT_SYMBOL_in_attribute14808_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_attribute14810  */
static	ANTLR3_BITWORD FOLLOW_set_in_attribute14810_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_attribute14810	= { FOLLOW_set_in_attribute14810_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STORAGE_SYMBOL_in_attribute14825  */
static	ANTLR3_BITWORD FOLLOW_STORAGE_SYMBOL_in_attribute14825_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(0x0002000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_STORAGE_SYMBOL_in_attribute14825	= { FOLLOW_STORAGE_SYMBOL_in_attribute14825_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_attribute14827  */
static	ANTLR3_BITWORD FOLLOW_set_in_attribute14827_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_attribute14827	= { FOLLOW_set_in_attribute14827_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNIQUE_SYMBOL_in_gcol_attribute14847  */
static	ANTLR3_BITWORD FOLLOW_UNIQUE_SYMBOL_in_gcol_attribute14847_bits[]	= { ANTLR3_UINT64_LIT(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(0x0080000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_UNIQUE_SYMBOL_in_gcol_attribute14847	= { FOLLOW_UNIQUE_SYMBOL_in_gcol_attribute14847_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_KEY_SYMBOL_in_gcol_attribute14862  */
static	ANTLR3_BITWORD FOLLOW_KEY_SYMBOL_in_gcol_attribute14862_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_KEY_SYMBOL_in_gcol_attribute14862	= { FOLLOW_KEY_SYMBOL_in_gcol_attribute14862_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMENT_SYMBOL_in_gcol_attribute14870  */
static	ANTLR3_BITWORD FOLLOW_COMMENT_SYMBOL_in_gcol_attribute14870_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMENT_SYMBOL_in_gcol_attribute14870	= { FOLLOW_COMMENT_SYMBOL_in_gcol_attribute14870_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_gcol_attribute14872  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_gcol_attribute14872_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_gcol_attribute14872	= { FOLLOW_text_string_in_gcol_attribute14872_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_not_rule_in_gcol_attribute14877  */
static	ANTLR3_BITWORD FOLLOW_not_rule_in_gcol_attribute14877_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_not_rule_in_gcol_attribute14877	= { FOLLOW_not_rule_in_gcol_attribute14877_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NULL_SYMBOL_in_gcol_attribute14880  */
static	ANTLR3_BITWORD FOLLOW_NULL_SYMBOL_in_gcol_attribute14880_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_NULL_SYMBOL_in_gcol_attribute14880	= { FOLLOW_NULL_SYMBOL_in_gcol_attribute14880_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PRIMARY_SYMBOL_in_gcol_attribute14885  */
static	ANTLR3_BITWORD FOLLOW_PRIMARY_SYMBOL_in_gcol_attribute14885_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0080000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PRIMARY_SYMBOL_in_gcol_attribute14885	= { FOLLOW_PRIMARY_SYMBOL_in_gcol_attribute14885_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_KEY_SYMBOL_in_gcol_attribute14888  */
static	ANTLR3_BITWORD FOLLOW_KEY_SYMBOL_in_gcol_attribute14888_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_KEY_SYMBOL_in_gcol_attribute14888	= { FOLLOW_KEY_SYMBOL_in_gcol_attribute14888_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REFERENCES_SYMBOL_in_reference_definition14900  */
static	ANTLR3_BITWORD FOLLOW_REFERENCES_SYMBOL_in_reference_definition14900_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_REFERENCES_SYMBOL_in_reference_definition14900	= { FOLLOW_REFERENCES_SYMBOL_in_reference_definition14900_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_reference_definition14903  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_reference_definition14903_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000500000002000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_in_reference_definition14903	= { FOLLOW_table_ref_in_reference_definition14903_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_columns_in_reference_definition14905  */
static	ANTLR3_BITWORD FOLLOW_index_columns_in_reference_definition14905_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000100000002000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_columns_in_reference_definition14905	= { FOLLOW_index_columns_in_reference_definition14905_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MATCH_SYMBOL_in_reference_definition14917  */
static	ANTLR3_BITWORD FOLLOW_MATCH_SYMBOL_in_reference_definition14917_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_definition14917	= { FOLLOW_MATCH_SYMBOL_in_reference_definition14917_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_reference_definition14919  */
static	ANTLR3_BITWORD FOLLOW_set_in_reference_definition14919_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_reference_definition14919	= { FOLLOW_set_in_reference_definition14919_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_reference_definition14940  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_reference_definition14940_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_ON_SYMBOL_in_reference_definition14940	= { FOLLOW_ON_SYMBOL_in_reference_definition14940_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DELETE_SYMBOL_in_reference_definition14942  */
static	ANTLR3_BITWORD FOLLOW_DELETE_SYMBOL_in_reference_definition14942_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(0x0000000000000800), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004001000) };
static  ANTLR3_BITSET_LIST FOLLOW_DELETE_SYMBOL_in_reference_definition14942	= { FOLLOW_DELETE_SYMBOL_in_reference_definition14942_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_reference_option_in_reference_definition14944  */
static	ANTLR3_BITWORD FOLLOW_reference_option_in_reference_definition14944_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_reference_option_in_reference_definition14944	= { FOLLOW_reference_option_in_reference_definition14944_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_reference_definition14947  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_reference_definition14947_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_ON_SYMBOL_in_reference_definition14947	= { FOLLOW_ON_SYMBOL_in_reference_definition14947_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UPDATE_SYMBOL_in_reference_definition14949  */
static	ANTLR3_BITWORD FOLLOW_UPDATE_SYMBOL_in_reference_definition14949_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(0x0000000000000800), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004001000) };
static  ANTLR3_BITSET_LIST FOLLOW_UPDATE_SYMBOL_in_reference_definition14949	= { FOLLOW_UPDATE_SYMBOL_in_reference_definition14949_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_reference_option_in_reference_definition14951  */
static	ANTLR3_BITWORD FOLLOW_reference_option_in_reference_definition14951_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_reference_option_in_reference_definition14951	= { FOLLOW_reference_option_in_reference_definition14951_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_reference_definition14960  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_reference_definition14960_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_ON_SYMBOL_in_reference_definition14960	= { FOLLOW_ON_SYMBOL_in_reference_definition14960_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UPDATE_SYMBOL_in_reference_definition14962  */
static	ANTLR3_BITWORD FOLLOW_UPDATE_SYMBOL_in_reference_definition14962_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(0x0000000000000800), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004001000) };
static  ANTLR3_BITSET_LIST FOLLOW_UPDATE_SYMBOL_in_reference_definition14962	= { FOLLOW_UPDATE_SYMBOL_in_reference_definition14962_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_reference_option_in_reference_definition14964  */
static	ANTLR3_BITWORD FOLLOW_reference_option_in_reference_definition14964_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_reference_option_in_reference_definition14964	= { FOLLOW_reference_option_in_reference_definition14964_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_reference_definition14967  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_reference_definition14967_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_ON_SYMBOL_in_reference_definition14967	= { FOLLOW_ON_SYMBOL_in_reference_definition14967_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DELETE_SYMBOL_in_reference_definition14969  */
static	ANTLR3_BITWORD FOLLOW_DELETE_SYMBOL_in_reference_definition14969_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(0x0000000000000800), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004001000) };
static  ANTLR3_BITSET_LIST FOLLOW_DELETE_SYMBOL_in_reference_definition14969	= { FOLLOW_DELETE_SYMBOL_in_reference_definition14969_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_reference_option_in_reference_definition14971  */
static	ANTLR3_BITWORD FOLLOW_reference_option_in_reference_definition14971_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_reference_option_in_reference_definition14971	= { FOLLOW_reference_option_in_reference_definition14971_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_index_columns14987  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_index_columns14987_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_index_columns14987	= { FOLLOW_OPEN_PAR_SYMBOL_in_index_columns14987_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_column_in_index_columns14989  */
static	ANTLR3_BITWORD FOLLOW_index_column_in_index_columns14989_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_index_column_in_index_columns14989	= { FOLLOW_index_column_in_index_columns14989_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_index_columns14992  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_index_columns14992_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_index_columns14992	= { FOLLOW_COMMA_SYMBOL_in_index_columns14992_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_column_in_index_columns14994  */
static	ANTLR3_BITWORD FOLLOW_index_column_in_index_columns14994_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_index_column_in_index_columns14994	= { FOLLOW_index_column_in_index_columns14994_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_index_columns14998  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_index_columns14998_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_index_columns14998	= { FOLLOW_CLOSE_PAR_SYMBOL_in_index_columns14998_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_index_column15007  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_index_column15007_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(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_index_column15007	= { FOLLOW_identifier_in_index_column15007_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_length_in_index_column15009  */
static	ANTLR3_BITWORD FOLLOW_field_length_in_index_column15009_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(0x0020000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_field_length_in_index_column15009	= { FOLLOW_field_length_in_index_column15009_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_direction_in_index_column15012  */
static	ANTLR3_BITWORD FOLLOW_direction_in_index_column15012_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_direction_in_index_column15012	= { FOLLOW_direction_in_index_column15012_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_index_type15022  */
static	ANTLR3_BITWORD FOLLOW_set_in_index_type15022_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_type15022	= { FOLLOW_set_in_index_type15022_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_index_type15030  */
static	ANTLR3_BITWORD FOLLOW_set_in_index_type15030_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_index_type15030	= { FOLLOW_set_in_index_type15030_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_type_in_normal_index_option15049  */
static	ANTLR3_BITWORD FOLLOW_index_type_in_normal_index_option15049_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_index_type_in_normal_index_option15049	= { FOLLOW_index_type_in_normal_index_option15049_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_all_key_option_in_normal_index_option15054  */
static	ANTLR3_BITWORD FOLLOW_all_key_option_in_normal_index_option15054_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_all_key_option_in_normal_index_option15054	= { FOLLOW_all_key_option_in_normal_index_option15054_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WITH_SYMBOL_in_fulltext_index_option15063  */
static	ANTLR3_BITWORD FOLLOW_WITH_SYMBOL_in_fulltext_index_option15063_bits[]	= { ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_WITH_SYMBOL_in_fulltext_index_option15063	= { FOLLOW_WITH_SYMBOL_in_fulltext_index_option15063_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARSER_SYMBOL_in_fulltext_index_option15065  */
static	ANTLR3_BITWORD FOLLOW_PARSER_SYMBOL_in_fulltext_index_option15065_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_PARSER_SYMBOL_in_fulltext_index_option15065	= { FOLLOW_PARSER_SYMBOL_in_fulltext_index_option15065_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_fulltext_index_option15067  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_fulltext_index_option15067_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_fulltext_index_option15067	= { FOLLOW_identifier_in_fulltext_index_option15067_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_all_key_option_in_fulltext_index_option15072  */
static	ANTLR3_BITWORD FOLLOW_all_key_option_in_fulltext_index_option15072_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_all_key_option_in_fulltext_index_option15072	= { FOLLOW_all_key_option_in_fulltext_index_option15072_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_all_key_option_in_spatial_index_option15081  */
static	ANTLR3_BITWORD FOLLOW_all_key_option_in_spatial_index_option15081_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_all_key_option_in_spatial_index_option15081	= { FOLLOW_all_key_option_in_spatial_index_option15081_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_KEY_BLOCK_SIZE_SYMBOL_in_all_key_option15090  */
static	ANTLR3_BITWORD FOLLOW_KEY_BLOCK_SIZE_SYMBOL_in_all_key_option15090_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010810800800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_KEY_BLOCK_SIZE_SYMBOL_in_all_key_option15090	= { FOLLOW_KEY_BLOCK_SIZE_SYMBOL_in_all_key_option15090_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_all_key_option15092  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_all_key_option15092_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010810000800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_all_key_option15092	= { FOLLOW_EQUAL_OPERATOR_in_all_key_option15092_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_all_key_option15095  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_all_key_option15095_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_all_key_option15095	= { FOLLOW_ulong_number_in_all_key_option15095_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMENT_SYMBOL_in_all_key_option15102  */
static	ANTLR3_BITWORD FOLLOW_COMMENT_SYMBOL_in_all_key_option15102_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMENT_SYMBOL_in_all_key_option15102	= { FOLLOW_COMMENT_SYMBOL_in_all_key_option15102_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_all_key_option15104  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_all_key_option15104_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_all_key_option15104	= { FOLLOW_string_literal_in_all_key_option15104_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RESTRICT_SYMBOL_in_reference_option15113  */
static	ANTLR3_BITWORD FOLLOW_RESTRICT_SYMBOL_in_reference_option15113_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_RESTRICT_SYMBOL_in_reference_option15113	= { FOLLOW_RESTRICT_SYMBOL_in_reference_option15113_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CASCADE_SYMBOL_in_reference_option15117  */
static	ANTLR3_BITWORD FOLLOW_CASCADE_SYMBOL_in_reference_option15117_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CASCADE_SYMBOL_in_reference_option15117	= { FOLLOW_CASCADE_SYMBOL_in_reference_option15117_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SET_SYMBOL_in_reference_option15121  */
static	ANTLR3_BITWORD FOLLOW_SET_SYMBOL_in_reference_option15121_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x000000C000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SET_SYMBOL_in_reference_option15121	= { FOLLOW_SET_SYMBOL_in_reference_option15121_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_null_literal_in_reference_option15123  */
static	ANTLR3_BITWORD FOLLOW_null_literal_in_reference_option15123_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_null_literal_in_reference_option15123	= { FOLLOW_null_literal_in_reference_option15123_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NO_SYMBOL_in_reference_option15127  */
static	ANTLR3_BITWORD FOLLOW_NO_SYMBOL_in_reference_option15127_bits[]	= { ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_NO_SYMBOL_in_reference_option15127	= { FOLLOW_NO_SYMBOL_in_reference_option15127_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ACTION_SYMBOL_in_reference_option15129  */
static	ANTLR3_BITWORD FOLLOW_ACTION_SYMBOL_in_reference_option15129_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ACTION_SYMBOL_in_reference_option15129	= { FOLLOW_ACTION_SYMBOL_in_reference_option15129_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_data_type_elements_in_data_type15138  */
static	ANTLR3_BITWORD FOLLOW_data_type_elements_in_data_type15138_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_data_type_elements_in_data_type15138	= { FOLLOW_data_type_elements_in_data_type15138_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_data_type_elements_in_data_type_definition15156  */
static	ANTLR3_BITWORD FOLLOW_data_type_elements_in_data_type_definition15156_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_data_type_elements_in_data_type_definition15156	= { FOLLOW_data_type_elements_in_data_type_definition15156_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EOF_in_data_type_definition15158  */
static	ANTLR3_BITWORD FOLLOW_EOF_in_data_type_definition15158_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EOF_in_data_type_definition15158	= { FOLLOW_EOF_in_data_type_definition15158_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_integer_type_in_data_type_elements15167  */
static	ANTLR3_BITWORD FOLLOW_integer_type_in_data_type_elements15167_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(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_integer_type_in_data_type_elements15167	= { FOLLOW_integer_type_in_data_type_elements15167_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_length_in_data_type_elements15169  */
static	ANTLR3_BITWORD FOLLOW_field_length_in_data_type_elements15169_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(0x0000100000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_field_length_in_data_type_elements15169	= { FOLLOW_field_length_in_data_type_elements15169_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_options_in_data_type_elements15172  */
static	ANTLR3_BITWORD FOLLOW_field_options_in_data_type_elements15172_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_field_options_in_data_type_elements15172	= { FOLLOW_field_options_in_data_type_elements15172_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_real_literal_in_data_type_elements15179  */
static	ANTLR3_BITWORD FOLLOW_real_literal_in_data_type_elements15179_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(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_real_literal_in_data_type_elements15179	= { FOLLOW_real_literal_in_data_type_elements15179_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_precision_in_data_type_elements15181  */
static	ANTLR3_BITWORD FOLLOW_precision_in_data_type_elements15181_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(0x0000100000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_precision_in_data_type_elements15181	= { FOLLOW_precision_in_data_type_elements15181_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_options_in_data_type_elements15184  */
static	ANTLR3_BITWORD FOLLOW_field_options_in_data_type_elements15184_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_field_options_in_data_type_elements15184	= { FOLLOW_field_options_in_data_type_elements15184_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FLOAT_SYMBOL_in_data_type_elements15190  */
static	ANTLR3_BITWORD FOLLOW_FLOAT_SYMBOL_in_data_type_elements15190_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(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_FLOAT_SYMBOL_in_data_type_elements15190	= { FOLLOW_FLOAT_SYMBOL_in_data_type_elements15190_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_float_options_in_data_type_elements15192  */
static	ANTLR3_BITWORD FOLLOW_float_options_in_data_type_elements15192_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(0x0000100000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_float_options_in_data_type_elements15192	= { FOLLOW_float_options_in_data_type_elements15192_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_options_in_data_type_elements15195  */
static	ANTLR3_BITWORD FOLLOW_field_options_in_data_type_elements15195_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_field_options_in_data_type_elements15195	= { FOLLOW_field_options_in_data_type_elements15195_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BIT_SYMBOL_in_data_type_elements15203  */
static	ANTLR3_BITWORD FOLLOW_BIT_SYMBOL_in_data_type_elements15203_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_BIT_SYMBOL_in_data_type_elements15203	= { FOLLOW_BIT_SYMBOL_in_data_type_elements15203_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_length_in_data_type_elements15205  */
static	ANTLR3_BITWORD FOLLOW_field_length_in_data_type_elements15205_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_field_length_in_data_type_elements15205	= { FOLLOW_field_length_in_data_type_elements15205_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BOOL_SYMBOL_in_data_type_elements15211  */
static	ANTLR3_BITWORD FOLLOW_BOOL_SYMBOL_in_data_type_elements15211_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BOOL_SYMBOL_in_data_type_elements15211	= { FOLLOW_BOOL_SYMBOL_in_data_type_elements15211_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BOOLEAN_SYMBOL_in_data_type_elements15216  */
static	ANTLR3_BITWORD FOLLOW_BOOLEAN_SYMBOL_in_data_type_elements15216_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BOOLEAN_SYMBOL_in_data_type_elements15216	= { FOLLOW_BOOLEAN_SYMBOL_in_data_type_elements15216_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHAR_SYMBOL_in_data_type_elements15223  */
static	ANTLR3_BITWORD FOLLOW_CHAR_SYMBOL_in_data_type_elements15223_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(0x0000000000010010), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CHAR_SYMBOL_in_data_type_elements15223	= { FOLLOW_CHAR_SYMBOL_in_data_type_elements15223_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_length_in_data_type_elements15225  */
static	ANTLR3_BITWORD FOLLOW_field_length_in_data_type_elements15225_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(0x0000000000010010) };
static  ANTLR3_BITSET_LIST FOLLOW_field_length_in_data_type_elements15225	= { FOLLOW_field_length_in_data_type_elements15225_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_binary_in_data_type_elements15228  */
static	ANTLR3_BITWORD FOLLOW_string_binary_in_data_type_elements15228_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_binary_in_data_type_elements15228	= { FOLLOW_string_binary_in_data_type_elements15228_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_nchar_literal_in_data_type_elements15234  */
static	ANTLR3_BITWORD FOLLOW_nchar_literal_in_data_type_elements15234_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_nchar_literal_in_data_type_elements15234	= { FOLLOW_nchar_literal_in_data_type_elements15234_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_length_in_data_type_elements15236  */
static	ANTLR3_BITWORD FOLLOW_field_length_in_data_type_elements15236_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), 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_field_length_in_data_type_elements15236	= { FOLLOW_field_length_in_data_type_elements15236_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_data_type_elements15239  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_data_type_elements15239_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_data_type_elements15239	= { FOLLOW_BINARY_SYMBOL_in_data_type_elements15239_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_data_type_elements15245  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_data_type_elements15245_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_data_type_elements15245	= { FOLLOW_BINARY_SYMBOL_in_data_type_elements15245_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_length_in_data_type_elements15247  */
static	ANTLR3_BITWORD FOLLOW_field_length_in_data_type_elements15247_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_field_length_in_data_type_elements15247	= { FOLLOW_field_length_in_data_type_elements15247_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_varchar_literal_in_data_type_elements15253  */
static	ANTLR3_BITWORD FOLLOW_varchar_literal_in_data_type_elements15253_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_varchar_literal_in_data_type_elements15253	= { FOLLOW_varchar_literal_in_data_type_elements15253_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_length_in_data_type_elements15255  */
static	ANTLR3_BITWORD FOLLOW_field_length_in_data_type_elements15255_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(0x0000000000010010) };
static  ANTLR3_BITSET_LIST FOLLOW_field_length_in_data_type_elements15255	= { FOLLOW_field_length_in_data_type_elements15255_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_binary_in_data_type_elements15257  */
static	ANTLR3_BITWORD FOLLOW_string_binary_in_data_type_elements15257_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_binary_in_data_type_elements15257	= { FOLLOW_string_binary_in_data_type_elements15257_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_nvarchar_literal_in_data_type_elements15263  */
static	ANTLR3_BITWORD FOLLOW_nvarchar_literal_in_data_type_elements15263_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_nvarchar_literal_in_data_type_elements15263	= { FOLLOW_nvarchar_literal_in_data_type_elements15263_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_length_in_data_type_elements15265  */
static	ANTLR3_BITWORD FOLLOW_field_length_in_data_type_elements15265_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), 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_field_length_in_data_type_elements15265	= { FOLLOW_field_length_in_data_type_elements15265_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_data_type_elements15267  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_data_type_elements15267_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_data_type_elements15267	= { FOLLOW_BINARY_SYMBOL_in_data_type_elements15267_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VARBINARY_SYMBOL_in_data_type_elements15274  */
static	ANTLR3_BITWORD FOLLOW_VARBINARY_SYMBOL_in_data_type_elements15274_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_VARBINARY_SYMBOL_in_data_type_elements15274	= { FOLLOW_VARBINARY_SYMBOL_in_data_type_elements15274_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_length_in_data_type_elements15276  */
static	ANTLR3_BITWORD FOLLOW_field_length_in_data_type_elements15276_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_field_length_in_data_type_elements15276	= { FOLLOW_field_length_in_data_type_elements15276_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_YEAR_SYMBOL_in_data_type_elements15282  */
static	ANTLR3_BITWORD FOLLOW_YEAR_SYMBOL_in_data_type_elements15282_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(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_YEAR_SYMBOL_in_data_type_elements15282	= { FOLLOW_YEAR_SYMBOL_in_data_type_elements15282_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_length_in_data_type_elements15284  */
static	ANTLR3_BITWORD FOLLOW_field_length_in_data_type_elements15284_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(0x0000100000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_field_length_in_data_type_elements15284	= { FOLLOW_field_length_in_data_type_elements15284_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_options_in_data_type_elements15287  */
static	ANTLR3_BITWORD FOLLOW_field_options_in_data_type_elements15287_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_field_options_in_data_type_elements15287	= { FOLLOW_field_options_in_data_type_elements15287_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATE_SYMBOL_in_data_type_elements15293  */
static	ANTLR3_BITWORD FOLLOW_DATE_SYMBOL_in_data_type_elements15293_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DATE_SYMBOL_in_data_type_elements15293	= { FOLLOW_DATE_SYMBOL_in_data_type_elements15293_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TIME_SYMBOL_in_data_type_elements15298  */
static	ANTLR3_BITWORD FOLLOW_TIME_SYMBOL_in_data_type_elements15298_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_TIME_SYMBOL_in_data_type_elements15298	= { FOLLOW_TIME_SYMBOL_in_data_type_elements15298_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_type_datetime_precision_in_data_type_elements15300  */
static	ANTLR3_BITWORD FOLLOW_type_datetime_precision_in_data_type_elements15300_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_type_datetime_precision_in_data_type_elements15300	= { FOLLOW_type_datetime_precision_in_data_type_elements15300_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TIMESTAMP_SYMBOL_in_data_type_elements15306  */
static	ANTLR3_BITWORD FOLLOW_TIMESTAMP_SYMBOL_in_data_type_elements15306_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_TIMESTAMP_SYMBOL_in_data_type_elements15306	= { FOLLOW_TIMESTAMP_SYMBOL_in_data_type_elements15306_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_type_datetime_precision_in_data_type_elements15308  */
static	ANTLR3_BITWORD FOLLOW_type_datetime_precision_in_data_type_elements15308_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_type_datetime_precision_in_data_type_elements15308	= { FOLLOW_type_datetime_precision_in_data_type_elements15308_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATETIME_SYMBOL_in_data_type_elements15314  */
static	ANTLR3_BITWORD FOLLOW_DATETIME_SYMBOL_in_data_type_elements15314_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DATETIME_SYMBOL_in_data_type_elements15314	= { FOLLOW_DATETIME_SYMBOL_in_data_type_elements15314_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_type_datetime_precision_in_data_type_elements15316  */
static	ANTLR3_BITWORD FOLLOW_type_datetime_precision_in_data_type_elements15316_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_type_datetime_precision_in_data_type_elements15316	= { FOLLOW_type_datetime_precision_in_data_type_elements15316_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TINYBLOB_SYMBOL_in_data_type_elements15323  */
static	ANTLR3_BITWORD FOLLOW_TINYBLOB_SYMBOL_in_data_type_elements15323_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_TINYBLOB_SYMBOL_in_data_type_elements15323	= { FOLLOW_TINYBLOB_SYMBOL_in_data_type_elements15323_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BLOB_SYMBOL_in_data_type_elements15328  */
static	ANTLR3_BITWORD FOLLOW_BLOB_SYMBOL_in_data_type_elements15328_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_BLOB_SYMBOL_in_data_type_elements15328	= { FOLLOW_BLOB_SYMBOL_in_data_type_elements15328_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_length_in_data_type_elements15330  */
static	ANTLR3_BITWORD FOLLOW_field_length_in_data_type_elements15330_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_field_length_in_data_type_elements15330	= { FOLLOW_field_length_in_data_type_elements15330_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MEDIUMBLOB_SYMBOL_in_data_type_elements15336  */
static	ANTLR3_BITWORD FOLLOW_MEDIUMBLOB_SYMBOL_in_data_type_elements15336_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_MEDIUMBLOB_SYMBOL_in_data_type_elements15336	= { FOLLOW_MEDIUMBLOB_SYMBOL_in_data_type_elements15336_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LONGBLOB_SYMBOL_in_data_type_elements15341  */
static	ANTLR3_BITWORD FOLLOW_LONGBLOB_SYMBOL_in_data_type_elements15341_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_LONGBLOB_SYMBOL_in_data_type_elements15341	= { FOLLOW_LONGBLOB_SYMBOL_in_data_type_elements15341_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LONG_SYMBOL_in_data_type_elements15346  */
static	ANTLR3_BITWORD FOLLOW_LONG_SYMBOL_in_data_type_elements15346_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_LONG_SYMBOL_in_data_type_elements15346	= { FOLLOW_LONG_SYMBOL_in_data_type_elements15346_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VARBINARY_SYMBOL_in_data_type_elements15348  */
static	ANTLR3_BITWORD FOLLOW_VARBINARY_SYMBOL_in_data_type_elements15348_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_VARBINARY_SYMBOL_in_data_type_elements15348	= { FOLLOW_VARBINARY_SYMBOL_in_data_type_elements15348_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LONG_SYMBOL_in_data_type_elements15353  */
static	ANTLR3_BITWORD FOLLOW_LONG_SYMBOL_in_data_type_elements15353_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(0x0000000000010010), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000010000000) };
static  ANTLR3_BITSET_LIST FOLLOW_LONG_SYMBOL_in_data_type_elements15353	= { FOLLOW_LONG_SYMBOL_in_data_type_elements15353_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_varchar_literal_in_data_type_elements15355  */
static	ANTLR3_BITWORD FOLLOW_varchar_literal_in_data_type_elements15355_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(0x0000000000010010) };
static  ANTLR3_BITSET_LIST FOLLOW_varchar_literal_in_data_type_elements15355	= { FOLLOW_varchar_literal_in_data_type_elements15355_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_binary_in_data_type_elements15358  */
static	ANTLR3_BITWORD FOLLOW_string_binary_in_data_type_elements15358_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_binary_in_data_type_elements15358	= { FOLLOW_string_binary_in_data_type_elements15358_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TINYTEXT_SYMBOL_in_data_type_elements15365  */
static	ANTLR3_BITWORD FOLLOW_TINYTEXT_SYMBOL_in_data_type_elements15365_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(0x0000000000010010) };
static  ANTLR3_BITSET_LIST FOLLOW_TINYTEXT_SYMBOL_in_data_type_elements15365	= { FOLLOW_TINYTEXT_SYMBOL_in_data_type_elements15365_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_binary_in_data_type_elements15367  */
static	ANTLR3_BITWORD FOLLOW_string_binary_in_data_type_elements15367_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_binary_in_data_type_elements15367	= { FOLLOW_string_binary_in_data_type_elements15367_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TEXT_SYMBOL_in_data_type_elements15373  */
static	ANTLR3_BITWORD FOLLOW_TEXT_SYMBOL_in_data_type_elements15373_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(0x0000000000010010), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_TEXT_SYMBOL_in_data_type_elements15373	= { FOLLOW_TEXT_SYMBOL_in_data_type_elements15373_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_length_in_data_type_elements15375  */
static	ANTLR3_BITWORD FOLLOW_field_length_in_data_type_elements15375_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(0x0000000000010010) };
static  ANTLR3_BITSET_LIST FOLLOW_field_length_in_data_type_elements15375	= { FOLLOW_field_length_in_data_type_elements15375_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_binary_in_data_type_elements15378  */
static	ANTLR3_BITWORD FOLLOW_string_binary_in_data_type_elements15378_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_binary_in_data_type_elements15378	= { FOLLOW_string_binary_in_data_type_elements15378_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MEDIUMTEXT_SYMBOL_in_data_type_elements15384  */
static	ANTLR3_BITWORD FOLLOW_MEDIUMTEXT_SYMBOL_in_data_type_elements15384_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(0x0000000000010010) };
static  ANTLR3_BITSET_LIST FOLLOW_MEDIUMTEXT_SYMBOL_in_data_type_elements15384	= { FOLLOW_MEDIUMTEXT_SYMBOL_in_data_type_elements15384_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_binary_in_data_type_elements15386  */
static	ANTLR3_BITWORD FOLLOW_string_binary_in_data_type_elements15386_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_binary_in_data_type_elements15386	= { FOLLOW_string_binary_in_data_type_elements15386_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LONGTEXT_SYMBOL_in_data_type_elements15392  */
static	ANTLR3_BITWORD FOLLOW_LONGTEXT_SYMBOL_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(0x0000000000010010) };
static  ANTLR3_BITSET_LIST FOLLOW_LONGTEXT_SYMBOL_in_data_type_elements15392	= { FOLLOW_LONGTEXT_SYMBOL_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_DECIMAL_SYMBOL_in_data_type_elements15402  */
static	ANTLR3_BITWORD FOLLOW_DECIMAL_SYMBOL_in_data_type_elements15402_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(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_DECIMAL_SYMBOL_in_data_type_elements15402	= { FOLLOW_DECIMAL_SYMBOL_in_data_type_elements15402_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_float_options_in_data_type_elements15404  */
static	ANTLR3_BITWORD FOLLOW_float_options_in_data_type_elements15404_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(0x0000100000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_float_options_in_data_type_elements15404	= { FOLLOW_float_options_in_data_type_elements15404_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_options_in_data_type_elements15407  */
static	ANTLR3_BITWORD FOLLOW_field_options_in_data_type_elements15407_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_field_options_in_data_type_elements15407	= { FOLLOW_field_options_in_data_type_elements15407_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NUMERIC_SYMBOL_in_data_type_elements15413  */
static	ANTLR3_BITWORD FOLLOW_NUMERIC_SYMBOL_in_data_type_elements15413_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(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_NUMERIC_SYMBOL_in_data_type_elements15413	= { FOLLOW_NUMERIC_SYMBOL_in_data_type_elements15413_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_float_options_in_data_type_elements15415  */
static	ANTLR3_BITWORD FOLLOW_float_options_in_data_type_elements15415_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(0x0000100000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_float_options_in_data_type_elements15415	= { FOLLOW_float_options_in_data_type_elements15415_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_options_in_data_type_elements15418  */
static	ANTLR3_BITWORD FOLLOW_field_options_in_data_type_elements15418_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_field_options_in_data_type_elements15418	= { FOLLOW_field_options_in_data_type_elements15418_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FIXED_SYMBOL_in_data_type_elements15424  */
static	ANTLR3_BITWORD FOLLOW_FIXED_SYMBOL_in_data_type_elements15424_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(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_FIXED_SYMBOL_in_data_type_elements15424	= { FOLLOW_FIXED_SYMBOL_in_data_type_elements15424_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_float_options_in_data_type_elements15426  */
static	ANTLR3_BITWORD FOLLOW_float_options_in_data_type_elements15426_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(0x0000100000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_float_options_in_data_type_elements15426	= { FOLLOW_float_options_in_data_type_elements15426_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_options_in_data_type_elements15429  */
static	ANTLR3_BITWORD FOLLOW_field_options_in_data_type_elements15429_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_field_options_in_data_type_elements15429	= { FOLLOW_field_options_in_data_type_elements15429_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ENUM_SYMBOL_in_data_type_elements15437  */
static	ANTLR3_BITWORD FOLLOW_ENUM_SYMBOL_in_data_type_elements15437_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_ENUM_SYMBOL_in_data_type_elements15437	= { FOLLOW_ENUM_SYMBOL_in_data_type_elements15437_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_list_in_data_type_elements15439  */
static	ANTLR3_BITWORD FOLLOW_string_list_in_data_type_elements15439_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(0x0000000000010010) };
static  ANTLR3_BITSET_LIST FOLLOW_string_list_in_data_type_elements15439	= { FOLLOW_string_list_in_data_type_elements15439_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_binary_in_data_type_elements15441  */
static	ANTLR3_BITWORD FOLLOW_string_binary_in_data_type_elements15441_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_binary_in_data_type_elements15441	= { FOLLOW_string_binary_in_data_type_elements15441_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SET_SYMBOL_in_data_type_elements15447  */
static	ANTLR3_BITWORD FOLLOW_SET_SYMBOL_in_data_type_elements15447_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_SET_SYMBOL_in_data_type_elements15447	= { FOLLOW_SET_SYMBOL_in_data_type_elements15447_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_list_in_data_type_elements15449  */
static	ANTLR3_BITWORD FOLLOW_string_list_in_data_type_elements15449_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(0x0000000000010010) };
static  ANTLR3_BITSET_LIST FOLLOW_string_list_in_data_type_elements15449	= { FOLLOW_string_list_in_data_type_elements15449_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_binary_in_data_type_elements15451  */
static	ANTLR3_BITWORD FOLLOW_string_binary_in_data_type_elements15451_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_binary_in_data_type_elements15451	= { FOLLOW_string_binary_in_data_type_elements15451_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SERIAL_SYMBOL_in_data_type_elements15457  */
static	ANTLR3_BITWORD FOLLOW_SERIAL_SYMBOL_in_data_type_elements15457_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SERIAL_SYMBOL_in_data_type_elements15457	= { FOLLOW_SERIAL_SYMBOL_in_data_type_elements15457_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_JSON_SYMBOL_in_data_type_elements15464  */
static	ANTLR3_BITWORD FOLLOW_JSON_SYMBOL_in_data_type_elements15464_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_JSON_SYMBOL_in_data_type_elements15464	= { FOLLOW_JSON_SYMBOL_in_data_type_elements15464_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_spatial_type_in_data_type_elements15469  */
static	ANTLR3_BITWORD FOLLOW_spatial_type_in_data_type_elements15469_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_spatial_type_in_data_type_elements15469	= { FOLLOW_spatial_type_in_data_type_elements15469_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_field_length15478  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_field_length15478_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010000000800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_field_length15478	= { FOLLOW_OPEN_PAR_SYMBOL_in_field_length15478_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_real_ulonglong_number_in_field_length15481  */
static	ANTLR3_BITWORD FOLLOW_real_ulonglong_number_in_field_length15481_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_real_ulonglong_number_in_field_length15481	= { FOLLOW_real_ulonglong_number_in_field_length15481_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DECIMAL_NUMBER_in_field_length15485  */
static	ANTLR3_BITWORD FOLLOW_DECIMAL_NUMBER_in_field_length15485_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_DECIMAL_NUMBER_in_field_length15485	= { FOLLOW_DECIMAL_NUMBER_in_field_length15485_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_field_length15488  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_field_length15488_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_field_length15488	= { FOLLOW_CLOSE_PAR_SYMBOL_in_field_length15488_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ascii_in_string_binary15517  */
static	ANTLR3_BITWORD FOLLOW_ascii_in_string_binary15517_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ascii_in_string_binary15517	= { FOLLOW_ascii_in_string_binary15517_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_unicode_in_string_binary15522  */
static	ANTLR3_BITWORD FOLLOW_unicode_in_string_binary15522_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_unicode_in_string_binary15522	= { FOLLOW_unicode_in_string_binary15522_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BYTE_SYMBOL_in_string_binary15527  */
static	ANTLR3_BITWORD FOLLOW_BYTE_SYMBOL_in_string_binary15527_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BYTE_SYMBOL_in_string_binary15527	= { FOLLOW_BYTE_SYMBOL_in_string_binary15527_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_in_string_binary15532  */
static	ANTLR3_BITWORD FOLLOW_charset_in_string_binary15532_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000010), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_in_string_binary15532	= { FOLLOW_charset_in_string_binary15532_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_name_in_string_binary15534  */
static	ANTLR3_BITWORD FOLLOW_charset_name_in_string_binary15534_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), 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_charset_name_in_string_binary15534	= { FOLLOW_charset_name_in_string_binary15534_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_string_binary15536  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_string_binary15536_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_string_binary15536	= { FOLLOW_BINARY_SYMBOL_in_string_binary15536_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_string_binary15542  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_string_binary15542_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(0x0000000000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_string_binary15542	= { FOLLOW_BINARY_SYMBOL_in_string_binary15542_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_in_string_binary15545  */
static	ANTLR3_BITWORD FOLLOW_charset_in_string_binary15545_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000010), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_in_string_binary15545	= { FOLLOW_charset_in_string_binary15545_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_name_in_string_binary15547  */
static	ANTLR3_BITWORD FOLLOW_charset_name_in_string_binary15547_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_name_in_string_binary15547	= { FOLLOW_charset_name_in_string_binary15547_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ASCII_SYMBOL_in_ascii15558  */
static	ANTLR3_BITWORD FOLLOW_ASCII_SYMBOL_in_ascii15558_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), 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_ASCII_SYMBOL_in_ascii15558	= { FOLLOW_ASCII_SYMBOL_in_ascii15558_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_ascii15560  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_ascii15560_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_ascii15560	= { FOLLOW_BINARY_SYMBOL_in_ascii15560_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_ascii15568  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_ascii15568_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_ascii15568	= { FOLLOW_BINARY_SYMBOL_in_ascii15568_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ASCII_SYMBOL_in_ascii15570  */
static	ANTLR3_BITWORD FOLLOW_ASCII_SYMBOL_in_ascii15570_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ASCII_SYMBOL_in_ascii15570	= { FOLLOW_ASCII_SYMBOL_in_ascii15570_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNICODE_SYMBOL_in_unicode15579  */
static	ANTLR3_BITWORD FOLLOW_UNICODE_SYMBOL_in_unicode15579_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), 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_UNICODE_SYMBOL_in_unicode15579	= { FOLLOW_UNICODE_SYMBOL_in_unicode15579_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_unicode15581  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_unicode15581_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_unicode15581	= { FOLLOW_BINARY_SYMBOL_in_unicode15581_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_unicode15589  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_unicode15589_bits[]	= { ANTLR3_UINT64_LIT(0x0040000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_unicode15589	= { FOLLOW_BINARY_SYMBOL_in_unicode15589_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNICODE_SYMBOL_in_unicode15591  */
static	ANTLR3_BITWORD FOLLOW_UNICODE_SYMBOL_in_unicode15591_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_UNICODE_SYMBOL_in_unicode15591	= { FOLLOW_UNICODE_SYMBOL_in_unicode15591_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_type_datetime_precision15602  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_type_datetime_precision15602_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_OPEN_PAR_SYMBOL_in_type_datetime_precision15602	= { FOLLOW_OPEN_PAR_SYMBOL_in_type_datetime_precision15602_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_NUMBER_in_type_datetime_precision15604  */
static	ANTLR3_BITWORD FOLLOW_INT_NUMBER_in_type_datetime_precision15604_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_type_datetime_precision15604	= { FOLLOW_INT_NUMBER_in_type_datetime_precision15604_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_type_datetime_precision15606  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_type_datetime_precision15606_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_type_datetime_precision15606	= { FOLLOW_CLOSE_PAR_SYMBOL_in_type_datetime_precision15606_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_identifier_in_charset_name15615  */
static	ANTLR3_BITWORD FOLLOW_text_or_identifier_in_charset_name15615_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_identifier_in_charset_name15615	= { FOLLOW_text_or_identifier_in_charset_name15615_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_charset_name15620  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_charset_name15620_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_charset_name15620	= { FOLLOW_BINARY_SYMBOL_in_charset_name15620_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_name_in_charset_name_or_default15629  */
static	ANTLR3_BITWORD FOLLOW_charset_name_in_charset_name_or_default15629_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_name_in_charset_name_or_default15629	= { FOLLOW_charset_name_in_charset_name_or_default15629_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_charset_name_or_default15634  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_charset_name_or_default15634_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_charset_name_or_default15634	= { FOLLOW_DEFAULT_SYMBOL_in_charset_name_or_default15634_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_identifier_in_collation_name15643  */
static	ANTLR3_BITWORD FOLLOW_text_or_identifier_in_collation_name15643_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_identifier_in_collation_name15643	= { FOLLOW_text_or_identifier_in_collation_name15643_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_collation_name_in_collation_name_or_default15652  */
static	ANTLR3_BITWORD FOLLOW_collation_name_in_collation_name_or_default15652_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_collation_name_in_collation_name_or_default15652	= { FOLLOW_collation_name_in_collation_name_or_default15652_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_collation_name_or_default15657  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_collation_name_or_default15657_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_collation_name_or_default15657	= { FOLLOW_DEFAULT_SYMBOL_in_collation_name_or_default15657_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_table_option_in_alter_table_options15710  */
static	ANTLR3_BITWORD FOLLOW_create_table_option_in_alter_table_options15710_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(0x0002000000050000), ANTLR3_UINT64_LIT(0x0000000080000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000002000) };
static  ANTLR3_BITSET_LIST FOLLOW_create_table_option_in_alter_table_options15710	= { FOLLOW_create_table_option_in_alter_table_options15710_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_table_option_in_create_table_options15720  */
static	ANTLR3_BITWORD FOLLOW_create_table_option_in_create_table_options15720_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(0x0002000000050000), ANTLR3_UINT64_LIT(0x0000000080000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000002000), ANTLR3_UINT64_LIT(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_create_table_option_in_create_table_options15720	= { FOLLOW_create_table_option_in_create_table_options15720_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_create_table_options15723  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_create_table_options15723_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(0x0002000000050000), ANTLR3_UINT64_LIT(0x0000000080000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000002000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_create_table_options15723	= { FOLLOW_COMMA_SYMBOL_in_create_table_options15723_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_table_option_in_create_table_options15726  */
static	ANTLR3_BITWORD FOLLOW_create_table_option_in_create_table_options15726_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(0x0002000000050000), ANTLR3_UINT64_LIT(0x0000000080000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000002000), ANTLR3_UINT64_LIT(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_create_table_option_in_create_table_options15726	= { FOLLOW_create_table_option_in_create_table_options15726_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ENGINE_SYMBOL_in_create_table_option15739  */
static	ANTLR3_BITWORD FOLLOW_ENGINE_SYMBOL_in_create_table_option15739_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000900000) };
static  ANTLR3_BITSET_LIST FOLLOW_ENGINE_SYMBOL_in_create_table_option15739	= { FOLLOW_ENGINE_SYMBOL_in_create_table_option15739_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TYPE_SYMBOL_in_create_table_option15745  */
static	ANTLR3_BITWORD FOLLOW_TYPE_SYMBOL_in_create_table_option15745_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000900000) };
static  ANTLR3_BITSET_LIST FOLLOW_TYPE_SYMBOL_in_create_table_option15745	= { FOLLOW_TYPE_SYMBOL_in_create_table_option15745_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option15748  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option15748_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option15748	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option15748_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_engine_ref_in_create_table_option15751  */
static	ANTLR3_BITWORD FOLLOW_engine_ref_in_create_table_option15751_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_engine_ref_in_create_table_option15751	= { FOLLOW_engine_ref_in_create_table_option15751_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MAX_ROWS_SYMBOL_in_create_table_option15756  */
static	ANTLR3_BITWORD FOLLOW_MAX_ROWS_SYMBOL_in_create_table_option15756_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010010800800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MAX_ROWS_SYMBOL_in_create_table_option15756	= { FOLLOW_MAX_ROWS_SYMBOL_in_create_table_option15756_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option15758  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option15758_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010010000800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option15758	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option15758_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulonglong_number_in_create_table_option15761  */
static	ANTLR3_BITWORD FOLLOW_ulonglong_number_in_create_table_option15761_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulonglong_number_in_create_table_option15761	= { FOLLOW_ulonglong_number_in_create_table_option15761_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MIN_ROWS_SYMBOL_in_create_table_option15766  */
static	ANTLR3_BITWORD FOLLOW_MIN_ROWS_SYMBOL_in_create_table_option15766_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010010800800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MIN_ROWS_SYMBOL_in_create_table_option15766	= { FOLLOW_MIN_ROWS_SYMBOL_in_create_table_option15766_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option15768  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option15768_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010010000800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option15768	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option15768_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulonglong_number_in_create_table_option15771  */
static	ANTLR3_BITWORD FOLLOW_ulonglong_number_in_create_table_option15771_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulonglong_number_in_create_table_option15771	= { FOLLOW_ulonglong_number_in_create_table_option15771_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AVG_ROW_LENGTH_SYMBOL_in_create_table_option15776  */
static	ANTLR3_BITWORD FOLLOW_AVG_ROW_LENGTH_SYMBOL_in_create_table_option15776_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010810800800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_AVG_ROW_LENGTH_SYMBOL_in_create_table_option15776	= { FOLLOW_AVG_ROW_LENGTH_SYMBOL_in_create_table_option15776_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option15778  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option15778_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010810000800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option15778	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option15778_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_create_table_option15781  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_create_table_option15781_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_create_table_option15781	= { FOLLOW_ulong_number_in_create_table_option15781_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PASSWORD_SYMBOL_in_create_table_option15786  */
static	ANTLR3_BITWORD FOLLOW_PASSWORD_SYMBOL_in_create_table_option15786_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800800000) };
static  ANTLR3_BITSET_LIST FOLLOW_PASSWORD_SYMBOL_in_create_table_option15786	= { FOLLOW_PASSWORD_SYMBOL_in_create_table_option15786_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option15788  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option15788_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option15788	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option15788_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_create_table_option15791  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_create_table_option15791_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_create_table_option15791	= { FOLLOW_text_string_in_create_table_option15791_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMENT_SYMBOL_in_create_table_option15796  */
static	ANTLR3_BITWORD FOLLOW_COMMENT_SYMBOL_in_create_table_option15796_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800800000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMENT_SYMBOL_in_create_table_option15796	= { FOLLOW_COMMENT_SYMBOL_in_create_table_option15796_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option15798  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option15798_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option15798	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option15798_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_create_table_option15801  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_create_table_option15801_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_create_table_option15801	= { FOLLOW_text_string_in_create_table_option15801_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMPRESSION_SYMBOL_in_create_table_option15806  */
static	ANTLR3_BITWORD FOLLOW_COMPRESSION_SYMBOL_in_create_table_option15806_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800800000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMPRESSION_SYMBOL_in_create_table_option15806	= { FOLLOW_COMPRESSION_SYMBOL_in_create_table_option15806_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option15808  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option15808_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option15808	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option15808_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_create_table_option15811  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_create_table_option15811_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_create_table_option15811	= { FOLLOW_text_string_in_create_table_option15811_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AUTO_INCREMENT_SYMBOL_in_create_table_option15816  */
static	ANTLR3_BITWORD FOLLOW_AUTO_INCREMENT_SYMBOL_in_create_table_option15816_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010010800800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_AUTO_INCREMENT_SYMBOL_in_create_table_option15816	= { FOLLOW_AUTO_INCREMENT_SYMBOL_in_create_table_option15816_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option15818  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option15818_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010010000800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option15818	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option15818_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulonglong_number_in_create_table_option15821  */
static	ANTLR3_BITWORD FOLLOW_ulonglong_number_in_create_table_option15821_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulonglong_number_in_create_table_option15821	= { FOLLOW_ulonglong_number_in_create_table_option15821_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PACK_KEYS_SYMBOL_in_create_table_option15826  */
static	ANTLR3_BITWORD FOLLOW_PACK_KEYS_SYMBOL_in_create_table_option15826_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010810800800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PACK_KEYS_SYMBOL_in_create_table_option15826	= { FOLLOW_PACK_KEYS_SYMBOL_in_create_table_option15826_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option15828  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option15828_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010810000800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option15828	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option15828_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_create_table_option15832  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_create_table_option15832_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_create_table_option15832	= { FOLLOW_ulong_number_in_create_table_option15832_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_create_table_option15836  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_create_table_option15836_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_create_table_option15836	= { FOLLOW_DEFAULT_SYMBOL_in_create_table_option15836_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_create_table_option15844  */
static	ANTLR3_BITWORD FOLLOW_set_in_create_table_option15844_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010810800800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_create_table_option15844	= { FOLLOW_set_in_create_table_option15844_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option15858  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option15858_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010810000800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option15858	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option15858_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_create_table_option15862  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_create_table_option15862_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_create_table_option15862	= { FOLLOW_ulong_number_in_create_table_option15862_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_create_table_option15866  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_create_table_option15866_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_create_table_option15866	= { FOLLOW_DEFAULT_SYMBOL_in_create_table_option15866_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_create_table_option15872  */
static	ANTLR3_BITWORD FOLLOW_set_in_create_table_option15872_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010810800800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_create_table_option15872	= { FOLLOW_set_in_create_table_option15872_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option15880  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option15880_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010810000800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option15880	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option15880_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_create_table_option15883  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_create_table_option15883_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_create_table_option15883	= { FOLLOW_ulong_number_in_create_table_option15883_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DELAY_KEY_WRITE_SYMBOL_in_create_table_option15888  */
static	ANTLR3_BITWORD FOLLOW_DELAY_KEY_WRITE_SYMBOL_in_create_table_option15888_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010810800800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DELAY_KEY_WRITE_SYMBOL_in_create_table_option15888	= { FOLLOW_DELAY_KEY_WRITE_SYMBOL_in_create_table_option15888_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option15890  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option15890_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010810000800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option15890	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option15890_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_create_table_option15893  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_create_table_option15893_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_create_table_option15893	= { FOLLOW_ulong_number_in_create_table_option15893_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ROW_FORMAT_SYMBOL_in_create_table_option15898  */
static	ANTLR3_BITWORD FOLLOW_ROW_FORMAT_SYMBOL_in_create_table_option15898_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(0x0002000000000000), 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_ROW_FORMAT_SYMBOL_in_create_table_option15898	= { FOLLOW_ROW_FORMAT_SYMBOL_in_create_table_option15898_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option15900  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option15900_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(0x0002000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option15900	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option15900_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_create_table_option15903  */
static	ANTLR3_BITWORD FOLLOW_set_in_create_table_option15903_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_create_table_option15903	= { FOLLOW_set_in_create_table_option15903_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNION_SYMBOL_in_create_table_option15930  */
static	ANTLR3_BITWORD FOLLOW_UNION_SYMBOL_in_create_table_option15930_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000800000) };
static  ANTLR3_BITSET_LIST FOLLOW_UNION_SYMBOL_in_create_table_option15930	= { FOLLOW_UNION_SYMBOL_in_create_table_option15930_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option15933  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option15933_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_EQUAL_OPERATOR_in_create_table_option15933	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option15933_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_create_table_option15936  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_create_table_option15936_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_create_table_option15936	= { FOLLOW_OPEN_PAR_SYMBOL_in_create_table_option15936_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_list_in_create_table_option15938  */
static	ANTLR3_BITWORD FOLLOW_table_ref_list_in_create_table_option15938_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_table_ref_list_in_create_table_option15938	= { FOLLOW_table_ref_list_in_create_table_option15938_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_create_table_option15940  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_create_table_option15940_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_create_table_option15940	= { FOLLOW_CLOSE_PAR_SYMBOL_in_create_table_option15940_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_create_table_option15945  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_create_table_option15945_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(0x0000000000050000) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_create_table_option15945	= { FOLLOW_DEFAULT_SYMBOL_in_create_table_option15945_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLLATE_SYMBOL_in_create_table_option15955  */
static	ANTLR3_BITWORD FOLLOW_COLLATE_SYMBOL_in_create_table_option15955_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0002000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000900000) };
static  ANTLR3_BITSET_LIST FOLLOW_COLLATE_SYMBOL_in_create_table_option15955	= { FOLLOW_COLLATE_SYMBOL_in_create_table_option15955_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option15957  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option15957_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0002000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option15957	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option15957_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_collation_name_or_default_in_create_table_option15960  */
static	ANTLR3_BITWORD FOLLOW_collation_name_or_default_in_create_table_option15960_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_collation_name_or_default_in_create_table_option15960	= { FOLLOW_collation_name_or_default_in_create_table_option15960_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_in_create_table_option15967  */
static	ANTLR3_BITWORD FOLLOW_charset_in_create_table_option15967_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0002000000000010), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000900000) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_in_create_table_option15967	= { FOLLOW_charset_in_create_table_option15967_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option15969  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option15969_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0002000000000010), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option15969	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option15969_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_name_or_default_in_create_table_option15972  */
static	ANTLR3_BITWORD FOLLOW_charset_name_or_default_in_create_table_option15972_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_name_or_default_in_create_table_option15972	= { FOLLOW_charset_name_or_default_in_create_table_option15972_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INSERT_METHOD_SYMBOL_in_create_table_option15982  */
static	ANTLR3_BITWORD FOLLOW_INSERT_METHOD_SYMBOL_in_create_table_option15982_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000800000) };
static  ANTLR3_BITSET_LIST FOLLOW_INSERT_METHOD_SYMBOL_in_create_table_option15982	= { FOLLOW_INSERT_METHOD_SYMBOL_in_create_table_option15982_bits, 12	};
/** 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(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000200000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option15984	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option15984_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_create_table_option15987  */
static	ANTLR3_BITWORD FOLLOW_set_in_create_table_option15987_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_create_table_option15987	= { FOLLOW_set_in_create_table_option15987_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATA_SYMBOL_in_create_table_option16002  */
static	ANTLR3_BITWORD FOLLOW_DATA_SYMBOL_in_create_table_option16002_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DATA_SYMBOL_in_create_table_option16002	= { FOLLOW_DATA_SYMBOL_in_create_table_option16002_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DIRECTORY_SYMBOL_in_create_table_option16004  */
static	ANTLR3_BITWORD FOLLOW_DIRECTORY_SYMBOL_in_create_table_option16004_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800800000) };
static  ANTLR3_BITSET_LIST FOLLOW_DIRECTORY_SYMBOL_in_create_table_option16004	= { FOLLOW_DIRECTORY_SYMBOL_in_create_table_option16004_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option16006  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option16006_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option16006	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option16006_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_create_table_option16009  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_create_table_option16009_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_create_table_option16009	= { FOLLOW_text_string_in_create_table_option16009_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INDEX_SYMBOL_in_create_table_option16014  */
static	ANTLR3_BITWORD FOLLOW_INDEX_SYMBOL_in_create_table_option16014_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INDEX_SYMBOL_in_create_table_option16014	= { FOLLOW_INDEX_SYMBOL_in_create_table_option16014_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DIRECTORY_SYMBOL_in_create_table_option16016  */
static	ANTLR3_BITWORD FOLLOW_DIRECTORY_SYMBOL_in_create_table_option16016_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800800000) };
static  ANTLR3_BITSET_LIST FOLLOW_DIRECTORY_SYMBOL_in_create_table_option16016	= { FOLLOW_DIRECTORY_SYMBOL_in_create_table_option16016_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option16018  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option16018_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option16018	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option16018_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_create_table_option16021  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_create_table_option16021_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_create_table_option16021	= { FOLLOW_text_string_in_create_table_option16021_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLESPACE_SYMBOL_in_create_table_option16026  */
static	ANTLR3_BITWORD FOLLOW_TABLESPACE_SYMBOL_in_create_table_option16026_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000900000) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLESPACE_SYMBOL_in_create_table_option16026	= { FOLLOW_TABLESPACE_SYMBOL_in_create_table_option16026_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option16031  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option16031_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option16031	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option16031_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_create_table_option16040  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_create_table_option16040_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_create_table_option16040	= { FOLLOW_identifier_in_create_table_option16040_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STORAGE_SYMBOL_in_create_table_option16045  */
static	ANTLR3_BITWORD FOLLOW_STORAGE_SYMBOL_in_create_table_option16045_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_option16045	= { FOLLOW_STORAGE_SYMBOL_in_create_table_option16045_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_create_table_option16047  */
static	ANTLR3_BITWORD FOLLOW_set_in_create_table_option16047_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_create_table_option16047	= { FOLLOW_set_in_create_table_option16047_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CONNECTION_SYMBOL_in_create_table_option16058  */
static	ANTLR3_BITWORD FOLLOW_CONNECTION_SYMBOL_in_create_table_option16058_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800800000) };
static  ANTLR3_BITSET_LIST FOLLOW_CONNECTION_SYMBOL_in_create_table_option16058	= { FOLLOW_CONNECTION_SYMBOL_in_create_table_option16058_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option16060  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option16060_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option16060	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option16060_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_create_table_option16063  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_create_table_option16063_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_create_table_option16063	= { FOLLOW_text_string_in_create_table_option16063_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_KEY_BLOCK_SIZE_SYMBOL_in_create_table_option16068  */
static	ANTLR3_BITWORD FOLLOW_KEY_BLOCK_SIZE_SYMBOL_in_create_table_option16068_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010810800800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_KEY_BLOCK_SIZE_SYMBOL_in_create_table_option16068	= { FOLLOW_KEY_BLOCK_SIZE_SYMBOL_in_create_table_option16068_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option16070  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option16070_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010810000800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option16070	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option16070_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_create_table_option16073  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_create_table_option16073_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_create_table_option16073	= { FOLLOW_ulong_number_in_create_table_option16073_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_partitioning16085  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_partitioning16085_bits[]	= { ANTLR3_UINT64_LIT(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_PARTITION_SYMBOL_in_partitioning16085	= { FOLLOW_PARTITION_SYMBOL_in_partitioning16085_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BY_SYMBOL_in_partitioning16088  */
static	ANTLR3_BITWORD FOLLOW_BY_SYMBOL_in_partitioning16088_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(0x4080000000000000), ANTLR3_UINT64_LIT(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_BY_SYMBOL_in_partitioning16088	= { FOLLOW_BY_SYMBOL_in_partitioning16088_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LINEAR_SYMBOL_in_partitioning16095  */
static	ANTLR3_BITWORD FOLLOW_LINEAR_SYMBOL_in_partitioning16095_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000020000000) };
static  ANTLR3_BITSET_LIST FOLLOW_LINEAR_SYMBOL_in_partitioning16095	= { FOLLOW_LINEAR_SYMBOL_in_partitioning16095_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_HASH_SYMBOL_in_partitioning16098  */
static	ANTLR3_BITWORD FOLLOW_HASH_SYMBOL_in_partitioning16098_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_HASH_SYMBOL_in_partitioning16098	= { FOLLOW_HASH_SYMBOL_in_partitioning16098_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_partitioning16100  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_partitioning16100_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_partitioning16100	= { FOLLOW_OPEN_PAR_SYMBOL_in_partitioning16100_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_partitioning16102  */
static	ANTLR3_BITWORD FOLLOW_expression_in_partitioning16102_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_partitioning16102	= { FOLLOW_expression_in_partitioning16102_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_partitioning16104  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_partitioning16104_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(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_partitioning16104	= { FOLLOW_CLOSE_PAR_SYMBOL_in_partitioning16104_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LINEAR_SYMBOL_in_partitioning16110  */
static	ANTLR3_BITWORD FOLLOW_LINEAR_SYMBOL_in_partitioning16110_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0080000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_LINEAR_SYMBOL_in_partitioning16110	= { FOLLOW_LINEAR_SYMBOL_in_partitioning16110_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_KEY_SYMBOL_in_partitioning16113  */
static	ANTLR3_BITWORD FOLLOW_KEY_SYMBOL_in_partitioning16113_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(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_KEY_SYMBOL_in_partitioning16113	= { FOLLOW_KEY_SYMBOL_in_partitioning16113_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partition_key_algorithm_in_partitioning16115  */
static	ANTLR3_BITWORD FOLLOW_partition_key_algorithm_in_partitioning16115_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_partition_key_algorithm_in_partitioning16115	= { FOLLOW_partition_key_algorithm_in_partitioning16115_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_with_parentheses_in_partitioning16118  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_with_parentheses_in_partitioning16118_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(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_list_with_parentheses_in_partitioning16118	= { FOLLOW_identifier_list_with_parentheses_in_partitioning16118_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_partitioning16124  */
static	ANTLR3_BITWORD FOLLOW_set_in_partitioning16124_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(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_partitioning16124	= { FOLLOW_set_in_partitioning16124_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_partitioning16142  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_partitioning16142_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_partitioning16142	= { FOLLOW_OPEN_PAR_SYMBOL_in_partitioning16142_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_partitioning16144  */
static	ANTLR3_BITWORD FOLLOW_expression_in_partitioning16144_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_partitioning16144	= { FOLLOW_expression_in_partitioning16144_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_partitioning16146  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_partitioning16146_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(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_partitioning16146	= { FOLLOW_CLOSE_PAR_SYMBOL_in_partitioning16146_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLUMNS_SYMBOL_in_partitioning16156  */
static	ANTLR3_BITWORD FOLLOW_COLUMNS_SYMBOL_in_partitioning16156_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_COLUMNS_SYMBOL_in_partitioning16156	= { FOLLOW_COLUMNS_SYMBOL_in_partitioning16156_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_with_parentheses_in_partitioning16158  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_with_parentheses_in_partitioning16158_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(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_list_with_parentheses_in_partitioning16158	= { FOLLOW_identifier_list_with_parentheses_in_partitioning16158_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITIONS_SYMBOL_in_partitioning16170  */
static	ANTLR3_BITWORD FOLLOW_PARTITIONS_SYMBOL_in_partitioning16170_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010800000000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITIONS_SYMBOL_in_partitioning16170	= { FOLLOW_PARTITIONS_SYMBOL_in_partitioning16170_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_real_ulong_number_in_partitioning16172  */
static	ANTLR3_BITWORD FOLLOW_real_ulong_number_in_partitioning16172_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(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_real_ulong_number_in_partitioning16172	= { FOLLOW_real_ulong_number_in_partitioning16172_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SUBPARTITION_SYMBOL_in_partitioning16181  */
static	ANTLR3_BITWORD FOLLOW_SUBPARTITION_SYMBOL_in_partitioning16181_bits[]	= { ANTLR3_UINT64_LIT(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_SUBPARTITION_SYMBOL_in_partitioning16181	= { FOLLOW_SUBPARTITION_SYMBOL_in_partitioning16181_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BY_SYMBOL_in_partitioning16183  */
static	ANTLR3_BITWORD FOLLOW_BY_SYMBOL_in_partitioning16183_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(0x4080000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_BY_SYMBOL_in_partitioning16183	= { FOLLOW_BY_SYMBOL_in_partitioning16183_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LINEAR_SYMBOL_in_partitioning16185  */
static	ANTLR3_BITWORD FOLLOW_LINEAR_SYMBOL_in_partitioning16185_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(0x0080000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_LINEAR_SYMBOL_in_partitioning16185	= { FOLLOW_LINEAR_SYMBOL_in_partitioning16185_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_HASH_SYMBOL_in_partitioning16202  */
static	ANTLR3_BITWORD FOLLOW_HASH_SYMBOL_in_partitioning16202_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_HASH_SYMBOL_in_partitioning16202	= { FOLLOW_HASH_SYMBOL_in_partitioning16202_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_partitioning16204  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_partitioning16204_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060D44880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_partitioning16204	= { FOLLOW_OPEN_PAR_SYMBOL_in_partitioning16204_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_bitwise_or_expression_in_partitioning16206  */
static	ANTLR3_BITWORD FOLLOW_bitwise_or_expression_in_partitioning16206_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_bitwise_or_expression_in_partitioning16206	= { FOLLOW_bitwise_or_expression_in_partitioning16206_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_partitioning16208  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_partitioning16208_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(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_partitioning16208	= { FOLLOW_CLOSE_PAR_SYMBOL_in_partitioning16208_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_KEY_SYMBOL_in_partitioning16216  */
static	ANTLR3_BITWORD FOLLOW_KEY_SYMBOL_in_partitioning16216_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(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_KEY_SYMBOL_in_partitioning16216	= { FOLLOW_KEY_SYMBOL_in_partitioning16216_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partition_key_algorithm_in_partitioning16218  */
static	ANTLR3_BITWORD FOLLOW_partition_key_algorithm_in_partitioning16218_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_partition_key_algorithm_in_partitioning16218	= { FOLLOW_partition_key_algorithm_in_partitioning16218_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_with_parentheses_in_partitioning16221  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_with_parentheses_in_partitioning16221_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(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_list_with_parentheses_in_partitioning16221	= { FOLLOW_identifier_list_with_parentheses_in_partitioning16221_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SUBPARTITIONS_SYMBOL_in_partitioning16232  */
static	ANTLR3_BITWORD FOLLOW_SUBPARTITIONS_SYMBOL_in_partitioning16232_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010800000000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SUBPARTITIONS_SYMBOL_in_partitioning16232	= { FOLLOW_SUBPARTITIONS_SYMBOL_in_partitioning16232_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_real_ulong_number_in_partitioning16234  */
static	ANTLR3_BITWORD FOLLOW_real_ulong_number_in_partitioning16234_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_real_ulong_number_in_partitioning16234	= { FOLLOW_real_ulong_number_in_partitioning16234_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partition_definitions_in_partitioning16254  */
static	ANTLR3_BITWORD FOLLOW_partition_definitions_in_partitioning16254_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_partition_definitions_in_partitioning16254	= { FOLLOW_partition_definitions_in_partitioning16254_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALGORITHM_SYMBOL_in_partition_key_algorithm16267  */
static	ANTLR3_BITWORD FOLLOW_ALGORITHM_SYMBOL_in_partition_key_algorithm16267_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_ALGORITHM_SYMBOL_in_partition_key_algorithm16267	= { FOLLOW_ALGORITHM_SYMBOL_in_partition_key_algorithm16267_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_partition_key_algorithm16269  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_partition_key_algorithm16269_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010800000000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_partition_key_algorithm16269	= { FOLLOW_EQUAL_OPERATOR_in_partition_key_algorithm16269_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_real_ulong_number_in_partition_key_algorithm16271  */
static	ANTLR3_BITWORD FOLLOW_real_ulong_number_in_partition_key_algorithm16271_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_real_ulong_number_in_partition_key_algorithm16271	= { FOLLOW_real_ulong_number_in_partition_key_algorithm16271_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_partition_definitions16280  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_partition_definitions16280_bits[]	= { ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_partition_definitions16280	= { FOLLOW_OPEN_PAR_SYMBOL_in_partition_definitions16280_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partition_definition_in_partition_definitions16282  */
static	ANTLR3_BITWORD FOLLOW_partition_definition_in_partition_definitions16282_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_partition_definition_in_partition_definitions16282	= { FOLLOW_partition_definition_in_partition_definitions16282_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_partition_definitions16285  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_partition_definitions16285_bits[]	= { ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_partition_definitions16285	= { FOLLOW_COMMA_SYMBOL_in_partition_definitions16285_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partition_definition_in_partition_definitions16287  */
static	ANTLR3_BITWORD FOLLOW_partition_definition_in_partition_definitions16287_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_partition_definition_in_partition_definitions16287	= { FOLLOW_partition_definition_in_partition_definitions16287_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_partition_definitions16291  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_partition_definitions16291_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_partition_definitions16291	= { FOLLOW_CLOSE_PAR_SYMBOL_in_partition_definitions16291_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_partition_definition16300  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_partition_definition16300_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITION_SYMBOL_in_partition_definition16300	= { FOLLOW_PARTITION_SYMBOL_in_partition_definition16300_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_partition_definition16302  */
static	ANTLR3_BITWORD FOLLOW_identifier_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(0x0000000080000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_partition_definition16302	= { FOLLOW_identifier_in_partition_definition16302_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VALUES_SYMBOL_in_partition_definition16309  */
static	ANTLR3_BITWORD FOLLOW_VALUES_SYMBOL_in_partition_definition16309_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(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_VALUES_SYMBOL_in_partition_definition16309	= { FOLLOW_VALUES_SYMBOL_in_partition_definition16309_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LESS_SYMBOL_in_partition_definition16318  */
static	ANTLR3_BITWORD FOLLOW_LESS_SYMBOL_in_partition_definition16318_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_definition16318	= { FOLLOW_LESS_SYMBOL_in_partition_definition16318_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_THAN_SYMBOL_in_partition_definition16320  */
static	ANTLR3_BITWORD FOLLOW_THAN_SYMBOL_in_partition_definition16320_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_THAN_SYMBOL_in_partition_definition16320	= { FOLLOW_THAN_SYMBOL_in_partition_definition16320_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partition_value_list_in_partition_definition16323  */
static	ANTLR3_BITWORD FOLLOW_partition_value_list_in_partition_definition16323_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(0x0000000080000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_partition_value_list_in_partition_definition16323	= { FOLLOW_partition_value_list_in_partition_definition16323_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MAXVALUE_SYMBOL_in_partition_definition16327  */
static	ANTLR3_BITWORD FOLLOW_MAXVALUE_SYMBOL_in_partition_definition16327_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(0x0000000080000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MAXVALUE_SYMBOL_in_partition_definition16327	= { FOLLOW_MAXVALUE_SYMBOL_in_partition_definition16327_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IN_SYMBOL_in_partition_definition16335  */
static	ANTLR3_BITWORD FOLLOW_IN_SYMBOL_in_partition_definition16335_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_IN_SYMBOL_in_partition_definition16335	= { FOLLOW_IN_SYMBOL_in_partition_definition16335_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partition_value_list_in_partition_definition16337  */
static	ANTLR3_BITWORD FOLLOW_partition_value_list_in_partition_definition16337_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(0x0000000080000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_partition_value_list_in_partition_definition16337	= { FOLLOW_partition_value_list_in_partition_definition16337_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partition_option_in_partition_definition16349  */
static	ANTLR3_BITWORD FOLLOW_partition_option_in_partition_definition16349_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(0x0000000080000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_partition_option_in_partition_definition16349	= { FOLLOW_partition_option_in_partition_definition16349_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_partition_definition16355  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_partition_definition16355_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_definition16355	= { FOLLOW_OPEN_PAR_SYMBOL_in_partition_definition16355_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_subpartition_definition_in_partition_definition16357  */
static	ANTLR3_BITWORD FOLLOW_subpartition_definition_in_partition_definition16357_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_subpartition_definition_in_partition_definition16357	= { FOLLOW_subpartition_definition_in_partition_definition16357_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_partition_definition16360  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_partition_definition16360_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_definition16360	= { FOLLOW_COMMA_SYMBOL_in_partition_definition16360_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_subpartition_definition_in_partition_definition16362  */
static	ANTLR3_BITWORD FOLLOW_subpartition_definition_in_partition_definition16362_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_subpartition_definition_in_partition_definition16362	= { FOLLOW_subpartition_definition_in_partition_definition16362_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_partition_definition16366  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_partition_definition16366_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_partition_definition16366	= { FOLLOW_CLOSE_PAR_SYMBOL_in_partition_definition16366_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLESPACE_SYMBOL_in_partition_option16377  */
static	ANTLR3_BITWORD FOLLOW_TABLESPACE_SYMBOL_in_partition_option16377_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000900000) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLESPACE_SYMBOL_in_partition_option16377	= { FOLLOW_TABLESPACE_SYMBOL_in_partition_option16377_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_partition_option16379  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_partition_option16379_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_partition_option16379	= { FOLLOW_EQUAL_OPERATOR_in_partition_option16379_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_partition_option16382  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_partition_option16382_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_partition_option16382	= { FOLLOW_identifier_in_partition_option16382_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STORAGE_SYMBOL_in_partition_option16387  */
static	ANTLR3_BITWORD FOLLOW_STORAGE_SYMBOL_in_partition_option16387_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_STORAGE_SYMBOL_in_partition_option16387	= { FOLLOW_STORAGE_SYMBOL_in_partition_option16387_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ENGINE_SYMBOL_in_partition_option16390  */
static	ANTLR3_BITWORD FOLLOW_ENGINE_SYMBOL_in_partition_option16390_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000900000) };
static  ANTLR3_BITSET_LIST FOLLOW_ENGINE_SYMBOL_in_partition_option16390	= { FOLLOW_ENGINE_SYMBOL_in_partition_option16390_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_partition_option16392  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_partition_option16392_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_partition_option16392	= { FOLLOW_EQUAL_OPERATOR_in_partition_option16392_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_engine_ref_in_partition_option16395  */
static	ANTLR3_BITWORD FOLLOW_engine_ref_in_partition_option16395_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_engine_ref_in_partition_option16395	= { FOLLOW_engine_ref_in_partition_option16395_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NODEGROUP_SYMBOL_in_partition_option16400  */
static	ANTLR3_BITWORD FOLLOW_NODEGROUP_SYMBOL_in_partition_option16400_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010800800000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_NODEGROUP_SYMBOL_in_partition_option16400	= { FOLLOW_NODEGROUP_SYMBOL_in_partition_option16400_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_partition_option16402  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_partition_option16402_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010800000000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_partition_option16402	= { FOLLOW_EQUAL_OPERATOR_in_partition_option16402_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_real_ulong_number_in_partition_option16405  */
static	ANTLR3_BITWORD FOLLOW_real_ulong_number_in_partition_option16405_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_real_ulong_number_in_partition_option16405	= { FOLLOW_real_ulong_number_in_partition_option16405_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_partition_option16410  */
static	ANTLR3_BITWORD FOLLOW_set_in_partition_option16410_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010800800000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_partition_option16410	= { FOLLOW_set_in_partition_option16410_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_partition_option16418  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_partition_option16418_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010800000000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_partition_option16418	= { FOLLOW_EQUAL_OPERATOR_in_partition_option16418_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_real_ulong_number_in_partition_option16421  */
static	ANTLR3_BITWORD FOLLOW_real_ulong_number_in_partition_option16421_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_real_ulong_number_in_partition_option16421	= { FOLLOW_real_ulong_number_in_partition_option16421_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_partition_option16426  */
static	ANTLR3_BITWORD FOLLOW_set_in_partition_option16426_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_partition_option16426	= { FOLLOW_set_in_partition_option16426_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DIRECTORY_SYMBOL_in_partition_option16434  */
static	ANTLR3_BITWORD FOLLOW_DIRECTORY_SYMBOL_in_partition_option16434_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000900000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DIRECTORY_SYMBOL_in_partition_option16434	= { FOLLOW_DIRECTORY_SYMBOL_in_partition_option16434_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_partition_option16436  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_partition_option16436_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_partition_option16436	= { FOLLOW_EQUAL_OPERATOR_in_partition_option16436_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_partition_option16439  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_partition_option16439_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_partition_option16439	= { FOLLOW_string_literal_in_partition_option16439_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMENT_SYMBOL_in_partition_option16444  */
static	ANTLR3_BITWORD FOLLOW_COMMENT_SYMBOL_in_partition_option16444_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000900000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMENT_SYMBOL_in_partition_option16444	= { FOLLOW_COMMENT_SYMBOL_in_partition_option16444_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_partition_option16446  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_partition_option16446_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_partition_option16446	= { FOLLOW_EQUAL_OPERATOR_in_partition_option16446_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_partition_option16449  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_partition_option16449_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_partition_option16449	= { FOLLOW_string_literal_in_partition_option16449_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SUBPARTITION_SYMBOL_in_subpartition_definition16458  */
static	ANTLR3_BITWORD FOLLOW_SUBPARTITION_SYMBOL_in_subpartition_definition16458_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_SUBPARTITION_SYMBOL_in_subpartition_definition16458	= { FOLLOW_SUBPARTITION_SYMBOL_in_subpartition_definition16458_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_subpartition_definition16460  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_subpartition_definition16460_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(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_subpartition_definition16460	= { FOLLOW_identifier_in_subpartition_definition16460_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partition_option_in_subpartition_definition16463  */
static	ANTLR3_BITWORD FOLLOW_partition_option_in_subpartition_definition16463_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(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_partition_option_in_subpartition_definition16463	= { FOLLOW_partition_option_in_subpartition_definition16463_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_partition_value_list16474  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_partition_value_list16474_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880E000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_partition_value_list16474	= { FOLLOW_OPEN_PAR_SYMBOL_in_partition_value_list16474_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_partition_value_list16477  */
static	ANTLR3_BITWORD FOLLOW_expression_in_partition_value_list16477_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_partition_value_list16477	= { FOLLOW_expression_in_partition_value_list16477_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MAXVALUE_SYMBOL_in_partition_value_list16481  */
static	ANTLR3_BITWORD FOLLOW_MAXVALUE_SYMBOL_in_partition_value_list16481_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_MAXVALUE_SYMBOL_in_partition_value_list16481	= { FOLLOW_MAXVALUE_SYMBOL_in_partition_value_list16481_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_partition_value_list16485  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_partition_value_list16485_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880E000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_partition_value_list16485	= { FOLLOW_COMMA_SYMBOL_in_partition_value_list16485_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_partition_value_list16488  */
static	ANTLR3_BITWORD FOLLOW_expression_in_partition_value_list16488_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_partition_value_list16488	= { FOLLOW_expression_in_partition_value_list16488_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MAXVALUE_SYMBOL_in_partition_value_list16492  */
static	ANTLR3_BITWORD FOLLOW_MAXVALUE_SYMBOL_in_partition_value_list16492_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_MAXVALUE_SYMBOL_in_partition_value_list16492	= { FOLLOW_MAXVALUE_SYMBOL_in_partition_value_list16492_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_partition_value_list16497  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_partition_value_list16497_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_partition_value_list16497	= { FOLLOW_CLOSE_PAR_SYMBOL_in_partition_value_list16497_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFINER_SYMBOL_in_definer_clause16506  */
static	ANTLR3_BITWORD FOLLOW_DEFINER_SYMBOL_in_definer_clause16506_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_DEFINER_SYMBOL_in_definer_clause16506	= { FOLLOW_DEFINER_SYMBOL_in_definer_clause16506_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_definer_clause16509  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_definer_clause16509_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_definer_clause16509	= { FOLLOW_EQUAL_OPERATOR_in_definer_clause16509_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_in_definer_clause16511  */
static	ANTLR3_BITWORD FOLLOW_user_in_definer_clause16511_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_user_in_definer_clause16511	= { FOLLOW_user_in_definer_clause16511_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IF_SYMBOL_in_if_exists16520  */
static	ANTLR3_BITWORD FOLLOW_IF_SYMBOL_in_if_exists16520_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_IF_SYMBOL_in_if_exists16520	= { FOLLOW_IF_SYMBOL_in_if_exists16520_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EXISTS_SYMBOL_in_if_exists16522  */
static	ANTLR3_BITWORD FOLLOW_EXISTS_SYMBOL_in_if_exists16522_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EXISTS_SYMBOL_in_if_exists16522	= { FOLLOW_EXISTS_SYMBOL_in_if_exists16522_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IF_SYMBOL_in_if_not_exists16531  */
static	ANTLR3_BITWORD FOLLOW_IF_SYMBOL_in_if_not_exists16531_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_IF_SYMBOL_in_if_not_exists16531	= { FOLLOW_IF_SYMBOL_in_if_not_exists16531_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_not_rule_in_if_not_exists16533  */
static	ANTLR3_BITWORD FOLLOW_not_rule_in_if_not_exists16533_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_not_rule_in_if_not_exists16533	= { FOLLOW_not_rule_in_if_not_exists16533_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EXISTS_SYMBOL_in_if_not_exists16535  */
static	ANTLR3_BITWORD FOLLOW_EXISTS_SYMBOL_in_if_not_exists16535_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EXISTS_SYMBOL_in_if_not_exists16535	= { FOLLOW_EXISTS_SYMBOL_in_if_not_exists16535_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_function_parameter_in_procedure_parameter16557  */
static	ANTLR3_BITWORD FOLLOW_function_parameter_in_procedure_parameter16557_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_function_parameter_in_procedure_parameter16557	= { FOLLOW_function_parameter_in_procedure_parameter16557_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_function_parameter16566  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_function_parameter16566_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(0x0000400000010058), ANTLR3_UINT64_LIT(0x0000200000001000), ANTLR3_UINT64_LIT(0x0000010000070160), ANTLR3_UINT64_LIT(0x0000000084000008), ANTLR3_UINT64_LIT(0x0000000014000038), ANTLR3_UINT64_LIT(0x0000000000200000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_function_parameter16566	= { FOLLOW_identifier_in_function_parameter16566_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_data_type_in_function_parameter16568  */
static	ANTLR3_BITWORD FOLLOW_data_type_in_function_parameter16568_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_data_type_in_function_parameter16568	= { FOLLOW_data_type_in_function_parameter16568_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_schema_identifier_pair16577  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_schema_identifier_pair16577_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_schema_identifier_pair16577	= { FOLLOW_OPEN_PAR_SYMBOL_in_schema_identifier_pair16577_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_schema_ref_in_schema_identifier_pair16579  */
static	ANTLR3_BITWORD FOLLOW_schema_ref_in_schema_identifier_pair16579_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_schema_ref_in_schema_identifier_pair16579	= { FOLLOW_schema_ref_in_schema_identifier_pair16579_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_schema_identifier_pair16581  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_schema_identifier_pair16581_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_schema_identifier_pair16581	= { FOLLOW_COMMA_SYMBOL_in_schema_identifier_pair16581_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_schema_ref_in_schema_identifier_pair16583  */
static	ANTLR3_BITWORD FOLLOW_schema_ref_in_schema_identifier_pair16583_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_schema_ref_in_schema_identifier_pair16583	= { FOLLOW_schema_ref_in_schema_identifier_pair16583_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_schema_identifier_pair16585  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_schema_identifier_pair16585_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_schema_identifier_pair16585	= { FOLLOW_CLOSE_PAR_SYMBOL_in_schema_identifier_pair16585_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_view_ref_in_view_identifier_list16594  */
static	ANTLR3_BITWORD FOLLOW_view_ref_in_view_identifier_list16594_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_view_ref_in_view_identifier_list16594	= { FOLLOW_view_ref_in_view_identifier_list16594_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_view_identifier_list16597  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_view_identifier_list16597_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_view_identifier_list16597	= { FOLLOW_COMMA_SYMBOL_in_view_identifier_list16597_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_view_ref_in_view_identifier_list16599  */
static	ANTLR3_BITWORD FOLLOW_view_ref_in_view_identifier_list16599_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_view_ref_in_view_identifier_list16599	= { FOLLOW_view_ref_in_view_identifier_list16599_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_ref_in_field_name_list16617  */
static	ANTLR3_BITWORD FOLLOW_column_ref_in_field_name_list16617_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_column_ref_in_field_name_list16617	= { FOLLOW_column_ref_in_field_name_list16617_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_field_name_list16620  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_field_name_list16620_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_field_name_list16620	= { FOLLOW_COMMA_SYMBOL_in_field_name_list16620_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_ref_in_field_name_list16622  */
static	ANTLR3_BITWORD FOLLOW_column_ref_in_field_name_list16622_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_column_ref_in_field_name_list16622	= { FOLLOW_column_ref_in_field_name_list16622_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_assignment_with_default_in_column_assignment_list_with_default16633  */
static	ANTLR3_BITWORD FOLLOW_column_assignment_with_default_in_column_assignment_list_with_default16633_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_column_assignment_with_default_in_column_assignment_list_with_default16633	= { FOLLOW_column_assignment_with_default_in_column_assignment_list_with_default16633_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_column_assignment_list_with_default16636  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_column_assignment_list_with_default16636_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_column_assignment_list_with_default16636	= { FOLLOW_COMMA_SYMBOL_in_column_assignment_list_with_default16636_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_assignment_with_default_in_column_assignment_list_with_default16638  */
static	ANTLR3_BITWORD FOLLOW_column_assignment_with_default_in_column_assignment_list_with_default16638_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_column_assignment_with_default_in_column_assignment_list_with_default16638	= { FOLLOW_column_assignment_with_default_in_column_assignment_list_with_default16638_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_ref_in_column_assignment_with_default16666  */
static	ANTLR3_BITWORD FOLLOW_column_ref_in_column_assignment_with_default16666_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_column_ref_in_column_assignment_with_default16666	= { FOLLOW_column_ref_in_column_assignment_with_default16666_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_column_assignment_with_default16668  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_column_assignment_with_default16668_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000200A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_column_assignment_with_default16668	= { FOLLOW_EQUAL_OPERATOR_in_column_assignment_with_default16668_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_column_assignment_with_default16671  */
static	ANTLR3_BITWORD FOLLOW_expression_in_column_assignment_with_default16671_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_column_assignment_with_default16671	= { FOLLOW_expression_in_column_assignment_with_default16671_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_column_assignment_with_default16675  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_column_assignment_with_default16675_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_column_assignment_with_default16675	= { FOLLOW_DEFAULT_SYMBOL_in_column_assignment_with_default16675_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_in_charset_clause16685  */
static	ANTLR3_BITWORD FOLLOW_charset_in_charset_clause16685_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0002000000000010), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_in_charset_clause16685	= { FOLLOW_charset_in_charset_clause16685_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_identifier_in_charset_clause16688  */
static	ANTLR3_BITWORD FOLLOW_text_or_identifier_in_charset_clause16688_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_identifier_in_charset_clause16688	= { FOLLOW_text_or_identifier_in_charset_clause16688_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_charset_clause16692  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_charset_clause16692_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_charset_clause16692	= { FOLLOW_DEFAULT_SYMBOL_in_charset_clause16692_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_charset_clause16696  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_charset_clause16696_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_charset_clause16696	= { FOLLOW_BINARY_SYMBOL_in_charset_clause16696_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLUMNS_SYMBOL_in_fields_clause16706  */
static	ANTLR3_BITWORD FOLLOW_COLUMNS_SYMBOL_in_fields_clause16706_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000001), ANTLR3_UINT64_LIT(0x0002000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_COLUMNS_SYMBOL_in_fields_clause16706	= { FOLLOW_COLUMNS_SYMBOL_in_fields_clause16706_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_term_in_fields_clause16708  */
static	ANTLR3_BITWORD FOLLOW_field_term_in_fields_clause16708_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), 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(0x0000000000000001), ANTLR3_UINT64_LIT(0x0002000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_field_term_in_fields_clause16708	= { FOLLOW_field_term_in_fields_clause16708_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TERMINATED_SYMBOL_in_field_term16718  */
static	ANTLR3_BITWORD FOLLOW_TERMINATED_SYMBOL_in_field_term16718_bits[]	= { ANTLR3_UINT64_LIT(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_TERMINATED_SYMBOL_in_field_term16718	= { FOLLOW_TERMINATED_SYMBOL_in_field_term16718_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BY_SYMBOL_in_field_term16720  */
static	ANTLR3_BITWORD FOLLOW_BY_SYMBOL_in_field_term16720_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_BY_SYMBOL_in_field_term16720	= { FOLLOW_BY_SYMBOL_in_field_term16720_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_field_term16722  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_field_term16722_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_field_term16722	= { FOLLOW_text_string_in_field_term16722_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPTIONALLY_SYMBOL_in_field_term16727  */
static	ANTLR3_BITWORD FOLLOW_OPTIONALLY_SYMBOL_in_field_term16727_bits[]	= { ANTLR3_UINT64_LIT(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_OPTIONALLY_SYMBOL_in_field_term16727	= { FOLLOW_OPTIONALLY_SYMBOL_in_field_term16727_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ENCLOSED_SYMBOL_in_field_term16730  */
static	ANTLR3_BITWORD FOLLOW_ENCLOSED_SYMBOL_in_field_term16730_bits[]	= { ANTLR3_UINT64_LIT(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_ENCLOSED_SYMBOL_in_field_term16730	= { FOLLOW_ENCLOSED_SYMBOL_in_field_term16730_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BY_SYMBOL_in_field_term16732  */
static	ANTLR3_BITWORD FOLLOW_BY_SYMBOL_in_field_term16732_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_BY_SYMBOL_in_field_term16732	= { FOLLOW_BY_SYMBOL_in_field_term16732_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_field_term16734  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_field_term16734_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_field_term16734	= { FOLLOW_text_string_in_field_term16734_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ESCAPED_SYMBOL_in_field_term16739  */
static	ANTLR3_BITWORD FOLLOW_ESCAPED_SYMBOL_in_field_term16739_bits[]	= { ANTLR3_UINT64_LIT(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_ESCAPED_SYMBOL_in_field_term16739	= { FOLLOW_ESCAPED_SYMBOL_in_field_term16739_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BY_SYMBOL_in_field_term16741  */
static	ANTLR3_BITWORD FOLLOW_BY_SYMBOL_in_field_term16741_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_BY_SYMBOL_in_field_term16741	= { FOLLOW_BY_SYMBOL_in_field_term16741_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_field_term16743  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_field_term16743_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_field_term16743	= { FOLLOW_text_string_in_field_term16743_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LINES_SYMBOL_in_lines_clause16752  */
static	ANTLR3_BITWORD FOLLOW_LINES_SYMBOL_in_lines_clause16752_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0008000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_LINES_SYMBOL_in_lines_clause16752	= { FOLLOW_LINES_SYMBOL_in_lines_clause16752_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_line_term_in_lines_clause16754  */
static	ANTLR3_BITWORD FOLLOW_line_term_in_lines_clause16754_bits[]	= { ANTLR3_UINT64_LIT(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(0x0008000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_line_term_in_lines_clause16754	= { FOLLOW_line_term_in_lines_clause16754_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_line_term16764  */
static	ANTLR3_BITWORD FOLLOW_set_in_line_term16764_bits[]	= { ANTLR3_UINT64_LIT(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_set_in_line_term16764	= { FOLLOW_set_in_line_term16764_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BY_SYMBOL_in_line_term16772  */
static	ANTLR3_BITWORD FOLLOW_BY_SYMBOL_in_line_term16772_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_BY_SYMBOL_in_line_term16772	= { FOLLOW_BY_SYMBOL_in_line_term16772_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_line_term16774  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_line_term16774_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_line_term16774	= { FOLLOW_text_string_in_line_term16774_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_in_user_list16783  */
static	ANTLR3_BITWORD FOLLOW_user_in_user_list16783_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_user_in_user_list16783	= { FOLLOW_user_in_user_list16783_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_user_list16786  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_user_list16786_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_user_list16786	= { FOLLOW_COMMA_SYMBOL_in_user_list16786_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_in_user_list16788  */
static	ANTLR3_BITWORD FOLLOW_user_in_user_list16788_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_user_in_user_list16788	= { FOLLOW_user_in_user_list16788_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_grant_user_in_grant_list16799  */
static	ANTLR3_BITWORD FOLLOW_grant_user_in_grant_list16799_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_grant_user_in_grant_list16799	= { FOLLOW_grant_user_in_grant_list16799_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_grant_list16802  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_grant_list16802_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_grant_list16802	= { FOLLOW_COMMA_SYMBOL_in_grant_list16802_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_grant_user_in_grant_list16804  */
static	ANTLR3_BITWORD FOLLOW_grant_user_in_grant_list16804_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_grant_user_in_grant_list16804	= { FOLLOW_grant_user_in_grant_list16804_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_in_grant_user16815  */
static	ANTLR3_BITWORD FOLLOW_user_in_grant_user16815_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000100000000) };
static  ANTLR3_BITSET_LIST FOLLOW_user_in_grant_user16815	= { FOLLOW_user_in_grant_user16815_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IDENTIFIED_SYMBOL_in_grant_user16822  */
static	ANTLR3_BITWORD FOLLOW_IDENTIFIED_SYMBOL_in_grant_user16822_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000010000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_IDENTIFIED_SYMBOL_in_grant_user16822	= { FOLLOW_IDENTIFIED_SYMBOL_in_grant_user16822_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BY_SYMBOL_in_grant_user16831  */
static	ANTLR3_BITWORD FOLLOW_BY_SYMBOL_in_grant_user16831_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_BY_SYMBOL_in_grant_user16831	= { FOLLOW_BY_SYMBOL_in_grant_user16831_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PASSWORD_SYMBOL_in_grant_user16833  */
static	ANTLR3_BITWORD FOLLOW_PASSWORD_SYMBOL_in_grant_user16833_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PASSWORD_SYMBOL_in_grant_user16833	= { FOLLOW_PASSWORD_SYMBOL_in_grant_user16833_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_grant_user16836  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_grant_user16836_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_grant_user16836	= { FOLLOW_text_string_in_grant_user16836_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WITH_SYMBOL_in_grant_user16845  */
static	ANTLR3_BITWORD FOLLOW_WITH_SYMBOL_in_grant_user16845_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_WITH_SYMBOL_in_grant_user16845	= { FOLLOW_WITH_SYMBOL_in_grant_user16845_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_identifier_in_grant_user16847  */
static	ANTLR3_BITWORD FOLLOW_text_or_identifier_in_grant_user16847_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), 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(0x0000800000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_identifier_in_grant_user16847	= { FOLLOW_text_or_identifier_in_grant_user16847_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AS_SYMBOL_in_grant_user16856  */
static	ANTLR3_BITWORD FOLLOW_AS_SYMBOL_in_grant_user16856_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_AS_SYMBOL_in_grant_user16856	= { FOLLOW_AS_SYMBOL_in_grant_user16856_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BY_SYMBOL_in_grant_user16862  */
static	ANTLR3_BITWORD FOLLOW_BY_SYMBOL_in_grant_user16862_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_BY_SYMBOL_in_grant_user16862	= { FOLLOW_BY_SYMBOL_in_grant_user16862_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_grant_user16865  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_grant_user16865_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_grant_user16865	= { FOLLOW_text_string_in_grant_user16865_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_identifier_in_user16884  */
static	ANTLR3_BITWORD FOLLOW_text_or_identifier_in_user16884_bits[]	= { ANTLR3_UINT64_LIT(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(0x0006000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_identifier_in_user16884	= { FOLLOW_text_or_identifier_in_user16884_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AT_SIGN_SYMBOL_in_user16887  */
static	ANTLR3_BITWORD FOLLOW_AT_SIGN_SYMBOL_in_user16887_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_AT_SIGN_SYMBOL_in_user16887	= { FOLLOW_AT_SIGN_SYMBOL_in_user16887_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_identifier_in_user16889  */
static	ANTLR3_BITWORD FOLLOW_text_or_identifier_in_user16889_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_identifier_in_user16889	= { FOLLOW_text_or_identifier_in_user16889_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AT_TEXT_SUFFIX_in_user16893  */
static	ANTLR3_BITWORD FOLLOW_AT_TEXT_SUFFIX_in_user16893_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_AT_TEXT_SUFFIX_in_user16893	= { FOLLOW_AT_TEXT_SUFFIX_in_user16893_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CURRENT_USER_SYMBOL_in_user16900  */
static	ANTLR3_BITWORD FOLLOW_CURRENT_USER_SYMBOL_in_user16900_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CURRENT_USER_SYMBOL_in_user16900	= { FOLLOW_CURRENT_USER_SYMBOL_in_user16900_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_parentheses_in_user16902  */
static	ANTLR3_BITWORD FOLLOW_parentheses_in_user16902_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_parentheses_in_user16902	= { FOLLOW_parentheses_in_user16902_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LIKE_SYMBOL_in_like_clause16912  */
static	ANTLR3_BITWORD FOLLOW_LIKE_SYMBOL_in_like_clause16912_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_LIKE_SYMBOL_in_like_clause16912	= { FOLLOW_LIKE_SYMBOL_in_like_clause16912_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_like_clause16914  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_like_clause16914_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_like_clause16914	= { FOLLOW_text_string_in_like_clause16914_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_like_clause_in_like_or_where16923  */
static	ANTLR3_BITWORD FOLLOW_like_clause_in_like_or_where16923_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_like_clause_in_like_or_where16923	= { FOLLOW_like_clause_in_like_or_where16923_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_where_clause_in_like_or_where16927  */
static	ANTLR3_BITWORD FOLLOW_where_clause_in_like_or_where16927_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_where_clause_in_like_or_where16927	= { FOLLOW_where_clause_in_like_or_where16927_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_online_option16938  */
static	ANTLR3_BITWORD FOLLOW_set_in_online_option16938_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_online_option16938	= { FOLLOW_set_in_online_option16938_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOCAL_SYMBOL_in_no_write_to_bin_log16957  */
static	ANTLR3_BITWORD FOLLOW_LOCAL_SYMBOL_in_no_write_to_bin_log16957_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_LOCAL_SYMBOL_in_no_write_to_bin_log16957	= { FOLLOW_LOCAL_SYMBOL_in_no_write_to_bin_log16957_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NO_WRITE_TO_BINLOG_SYMBOL_in_no_write_to_bin_log16963  */
static	ANTLR3_BITWORD FOLLOW_NO_WRITE_TO_BINLOG_SYMBOL_in_no_write_to_bin_log16963_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_NO_WRITE_TO_BINLOG_SYMBOL_in_no_write_to_bin_log16963	= { FOLLOW_NO_WRITE_TO_BINLOG_SYMBOL_in_no_write_to_bin_log16963_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_use_partition16976  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_use_partition16976_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_PARTITION_SYMBOL_in_use_partition16976	= { FOLLOW_PARTITION_SYMBOL_in_use_partition16976_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_with_parentheses_in_use_partition16978  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_with_parentheses_in_use_partition16978_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_list_with_parentheses_in_use_partition16978	= { FOLLOW_identifier_list_with_parentheses_in_use_partition16978_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_column_name16995  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_column_name16995_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_column_name16995	= { FOLLOW_identifier_in_column_name16995_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_ref_variants_in_column_ref17012  */
static	ANTLR3_BITWORD FOLLOW_column_ref_variants_in_column_ref17012_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_column_ref_variants_in_column_ref17012	= { FOLLOW_column_ref_variants_in_column_ref17012_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_dot_identifier_in_column_ref_variants17030  */
static	ANTLR3_BITWORD FOLLOW_dot_identifier_in_column_ref_variants17030_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_dot_identifier_in_column_ref_variants17030	= { FOLLOW_dot_identifier_in_column_ref_variants17030_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_column_ref_variants17035  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_column_ref_variants17035_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_in_column_ref_variants17035	= { FOLLOW_qualified_identifier_in_column_ref_variants17035_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_dot_identifier_in_column_ref_variants17050  */
static	ANTLR3_BITWORD FOLLOW_dot_identifier_in_column_ref_variants17050_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_dot_identifier_in_column_ref_variants17050	= { FOLLOW_dot_identifier_in_column_ref_variants17050_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_ref_variants_in_column_internal_ref17061  */
static	ANTLR3_BITWORD FOLLOW_column_ref_variants_in_column_internal_ref17061_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_column_ref_variants_in_column_internal_ref17061	= { FOLLOW_column_ref_variants_in_column_internal_ref17061_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_ref_with_wildcard2_in_column_ref_with_wildcard17078  */
static	ANTLR3_BITWORD FOLLOW_column_ref_with_wildcard2_in_column_ref_with_wildcard17078_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_column_ref_with_wildcard2_in_column_ref_with_wildcard17078	= { FOLLOW_column_ref_with_wildcard2_in_column_ref_with_wildcard17078_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_column_ref_with_wildcard217095  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_column_ref_with_wildcard217095_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_column_ref_with_wildcard217095	= { FOLLOW_identifier_in_column_ref_with_wildcard217095_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DOT_SYMBOL_in_column_ref_with_wildcard217104  */
static	ANTLR3_BITWORD FOLLOW_DOT_SYMBOL_in_column_ref_with_wildcard217104_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_DOT_SYMBOL_in_column_ref_with_wildcard217104	= { FOLLOW_DOT_SYMBOL_in_column_ref_with_wildcard217104_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULT_OPERATOR_in_column_ref_with_wildcard217106  */
static	ANTLR3_BITWORD FOLLOW_MULT_OPERATOR_in_column_ref_with_wildcard217106_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_MULT_OPERATOR_in_column_ref_with_wildcard217106	= { FOLLOW_MULT_OPERATOR_in_column_ref_with_wildcard217106_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_dot_identifier_in_column_ref_with_wildcard217112  */
static	ANTLR3_BITWORD FOLLOW_dot_identifier_in_column_ref_with_wildcard217112_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_dot_identifier_in_column_ref_with_wildcard217112	= { FOLLOW_dot_identifier_in_column_ref_with_wildcard217112_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DOT_SYMBOL_in_column_ref_with_wildcard217123  */
static	ANTLR3_BITWORD FOLLOW_DOT_SYMBOL_in_column_ref_with_wildcard217123_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_DOT_SYMBOL_in_column_ref_with_wildcard217123	= { FOLLOW_DOT_SYMBOL_in_column_ref_with_wildcard217123_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULT_OPERATOR_in_column_ref_with_wildcard217125  */
static	ANTLR3_BITWORD FOLLOW_MULT_OPERATOR_in_column_ref_with_wildcard217125_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_MULT_OPERATOR_in_column_ref_with_wildcard217125	= { FOLLOW_MULT_OPERATOR_in_column_ref_with_wildcard217125_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_dot_identifier_in_column_ref_with_wildcard217132  */
static	ANTLR3_BITWORD FOLLOW_dot_identifier_in_column_ref_with_wildcard217132_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_dot_identifier_in_column_ref_with_wildcard217132	= { FOLLOW_dot_identifier_in_column_ref_with_wildcard217132_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_index_name17150  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_index_name17150_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_index_name17150	= { FOLLOW_identifier_in_index_name17150_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_index_ref17167  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_index_ref17167_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_index_ref17167	= { FOLLOW_identifier_in_index_ref17167_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_table_wild17184  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_table_wild17184_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_identifier_in_table_wild17184	= { FOLLOW_identifier_in_table_wild17184_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DOT_SYMBOL_in_table_wild17193  */
static	ANTLR3_BITWORD FOLLOW_DOT_SYMBOL_in_table_wild17193_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_DOT_SYMBOL_in_table_wild17193	= { FOLLOW_DOT_SYMBOL_in_table_wild17193_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULT_OPERATOR_in_table_wild17195  */
static	ANTLR3_BITWORD FOLLOW_MULT_OPERATOR_in_table_wild17195_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_MULT_OPERATOR_in_table_wild17195	= { FOLLOW_MULT_OPERATOR_in_table_wild17195_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_dot_identifier_in_table_wild17201  */
static	ANTLR3_BITWORD FOLLOW_dot_identifier_in_table_wild17201_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_dot_identifier_in_table_wild17201	= { FOLLOW_dot_identifier_in_table_wild17201_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DOT_SYMBOL_in_table_wild17203  */
static	ANTLR3_BITWORD FOLLOW_DOT_SYMBOL_in_table_wild17203_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_DOT_SYMBOL_in_table_wild17203	= { FOLLOW_DOT_SYMBOL_in_table_wild17203_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULT_OPERATOR_in_table_wild17205  */
static	ANTLR3_BITWORD FOLLOW_MULT_OPERATOR_in_table_wild17205_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_MULT_OPERATOR_in_table_wild17205	= { FOLLOW_MULT_OPERATOR_in_table_wild17205_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_schema_name17224  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_schema_name17224_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_schema_name17224	= { FOLLOW_identifier_in_schema_name17224_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_schema_ref17241  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_schema_ref17241_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_schema_ref17241	= { FOLLOW_identifier_in_schema_ref17241_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_procedure_name17258  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_procedure_name17258_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_in_procedure_name17258	= { FOLLOW_qualified_identifier_in_procedure_name17258_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_procedure_ref17275  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_procedure_ref17275_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_in_procedure_ref17275	= { FOLLOW_qualified_identifier_in_procedure_ref17275_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_function_name17292  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_function_name17292_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_in_function_name17292	= { FOLLOW_qualified_identifier_in_function_name17292_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_function_ref17309  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_function_ref17309_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_in_function_ref17309	= { FOLLOW_qualified_identifier_in_function_ref17309_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_trigger_name17326  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_trigger_name17326_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_in_trigger_name17326	= { FOLLOW_qualified_identifier_in_trigger_name17326_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_trigger_ref17343  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_trigger_ref17343_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_in_trigger_ref17343	= { FOLLOW_qualified_identifier_in_trigger_ref17343_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_name_variants_in_view_name17360  */
static	ANTLR3_BITWORD FOLLOW_table_name_variants_in_view_name17360_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_name_variants_in_view_name17360	= { FOLLOW_table_name_variants_in_view_name17360_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_view_ref17377  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_view_ref17377_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_in_view_ref17377	= { FOLLOW_qualified_identifier_in_view_ref17377_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_tablespace_name17394  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_tablespace_name17394_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_tablespace_name17394	= { FOLLOW_identifier_in_tablespace_name17394_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_tablespace_ref17411  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_tablespace_ref17411_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_tablespace_ref17411	= { FOLLOW_identifier_in_tablespace_ref17411_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_logfile_group_name17428  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_logfile_group_name17428_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_logfile_group_name17428	= { FOLLOW_identifier_in_logfile_group_name17428_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_logfile_group_ref17445  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_logfile_group_ref17445_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_logfile_group_ref17445	= { FOLLOW_identifier_in_logfile_group_ref17445_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_event_name17462  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_event_name17462_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_in_event_name17462	= { FOLLOW_qualified_identifier_in_event_name17462_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_event_ref17479  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_event_ref17479_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_in_event_ref17479	= { FOLLOW_qualified_identifier_in_event_ref17479_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_udf_name17497  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_udf_name17497_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_udf_name17497	= { FOLLOW_identifier_in_udf_name17497_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_identifier_in_server_name17514  */
static	ANTLR3_BITWORD FOLLOW_text_or_identifier_in_server_name17514_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_identifier_in_server_name17514	= { FOLLOW_text_or_identifier_in_server_name17514_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_identifier_in_server_ref17531  */
static	ANTLR3_BITWORD FOLLOW_text_or_identifier_in_server_ref17531_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_identifier_in_server_ref17531	= { FOLLOW_text_or_identifier_in_server_ref17531_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_identifier_in_engine_ref17548  */
static	ANTLR3_BITWORD FOLLOW_text_or_identifier_in_engine_ref17548_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_identifier_in_engine_ref17548	= { FOLLOW_text_or_identifier_in_engine_ref17548_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_name_variants_in_table_name17565  */
static	ANTLR3_BITWORD FOLLOW_table_name_variants_in_table_name17565_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_name_variants_in_table_name17565	= { FOLLOW_table_name_variants_in_table_name17565_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_filter_table_ref17583  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_filter_table_ref17583_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_identifier_in_filter_table_ref17583	= { FOLLOW_identifier_in_filter_table_ref17583_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_dot_identifier_in_filter_table_ref17585  */
static	ANTLR3_BITWORD FOLLOW_dot_identifier_in_filter_table_ref17585_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_dot_identifier_in_filter_table_ref17585	= { FOLLOW_dot_identifier_in_filter_table_ref17585_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_table_ref_with_wildcard17604  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_table_ref_with_wildcard17604_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_table_ref_with_wildcard17604	= { FOLLOW_identifier_in_table_ref_with_wildcard17604_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DOT_SYMBOL_in_table_ref_with_wildcard17613  */
static	ANTLR3_BITWORD FOLLOW_DOT_SYMBOL_in_table_ref_with_wildcard17613_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_DOT_SYMBOL_in_table_ref_with_wildcard17613	= { FOLLOW_DOT_SYMBOL_in_table_ref_with_wildcard17613_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULT_OPERATOR_in_table_ref_with_wildcard17615  */
static	ANTLR3_BITWORD FOLLOW_MULT_OPERATOR_in_table_ref_with_wildcard17615_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_MULT_OPERATOR_in_table_ref_with_wildcard17615	= { FOLLOW_MULT_OPERATOR_in_table_ref_with_wildcard17615_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_dot_identifier_in_table_ref_with_wildcard17621  */
static	ANTLR3_BITWORD FOLLOW_dot_identifier_in_table_ref_with_wildcard17621_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_dot_identifier_in_table_ref_with_wildcard17621	= { FOLLOW_dot_identifier_in_table_ref_with_wildcard17621_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DOT_SYMBOL_in_table_ref_with_wildcard17624  */
static	ANTLR3_BITWORD FOLLOW_DOT_SYMBOL_in_table_ref_with_wildcard17624_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_DOT_SYMBOL_in_table_ref_with_wildcard17624	= { FOLLOW_DOT_SYMBOL_in_table_ref_with_wildcard17624_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULT_OPERATOR_in_table_ref_with_wildcard17626  */
static	ANTLR3_BITWORD FOLLOW_MULT_OPERATOR_in_table_ref_with_wildcard17626_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_MULT_OPERATOR_in_table_ref_with_wildcard17626	= { FOLLOW_MULT_OPERATOR_in_table_ref_with_wildcard17626_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_name_variants_in_table_ref17641  */
static	ANTLR3_BITWORD FOLLOW_table_name_variants_in_table_ref17641_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_name_variants_in_table_ref17641	= { FOLLOW_table_name_variants_in_table_ref17641_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_table_ref_no_db17658  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_table_ref_no_db17658_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_table_ref_no_db17658	= { FOLLOW_identifier_in_table_ref_no_db17658_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_table_name_variants17675  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_table_name_variants17675_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_in_table_name_variants17675	= { FOLLOW_qualified_identifier_in_table_name_variants17675_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_dot_identifier_in_table_name_variants17680  */
static	ANTLR3_BITWORD FOLLOW_dot_identifier_in_table_name_variants17680_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_dot_identifier_in_table_name_variants17680	= { FOLLOW_dot_identifier_in_table_name_variants17680_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_table_ref_list17689  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_table_ref_list17689_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_in_table_ref_list17689	= { FOLLOW_table_ref_in_table_ref_list17689_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_table_ref_list17692  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_table_ref_list17692_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000120000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_table_ref_list17692	= { FOLLOW_COMMA_SYMBOL_in_table_ref_list17692_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_table_ref_list17694  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_table_ref_list17694_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_in_table_ref_list17694	= { FOLLOW_table_ref_in_table_ref_list17694_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_with_wildcard_in_table_ref_list_with_wildcard17712  */
static	ANTLR3_BITWORD FOLLOW_table_ref_with_wildcard_in_table_ref_list_with_wildcard17712_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_with_wildcard_in_table_ref_list_with_wildcard17712	= { FOLLOW_table_ref_with_wildcard_in_table_ref_list_with_wildcard17712_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_table_ref_list_with_wildcard17715  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_table_ref_list_with_wildcard17715_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_table_ref_list_with_wildcard17715	= { FOLLOW_COMMA_SYMBOL_in_table_ref_list_with_wildcard17715_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_with_wildcard_in_table_ref_list_with_wildcard17717  */
static	ANTLR3_BITWORD FOLLOW_table_ref_with_wildcard_in_table_ref_list_with_wildcard17717_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_with_wildcard_in_table_ref_list_with_wildcard17717	= { FOLLOW_table_ref_with_wildcard_in_table_ref_list_with_wildcard17717_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IDENTIFIER_in_pure_identifier17731  */
static	ANTLR3_BITWORD FOLLOW_IDENTIFIER_in_pure_identifier17731_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_IDENTIFIER_in_pure_identifier17731	= { FOLLOW_IDENTIFIER_in_pure_identifier17731_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BACK_TICK_QUOTED_ID_in_pure_identifier17736  */
static	ANTLR3_BITWORD FOLLOW_BACK_TICK_QUOTED_ID_in_pure_identifier17736_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BACK_TICK_QUOTED_ID_in_pure_identifier17736	= { FOLLOW_BACK_TICK_QUOTED_ID_in_pure_identifier17736_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DOUBLE_QUOTED_TEXT_in_pure_identifier17743  */
static	ANTLR3_BITWORD FOLLOW_DOUBLE_QUOTED_TEXT_in_pure_identifier17743_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DOUBLE_QUOTED_TEXT_in_pure_identifier17743	= { FOLLOW_DOUBLE_QUOTED_TEXT_in_pure_identifier17743_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_pure_identifier_in_identifier17753  */
static	ANTLR3_BITWORD FOLLOW_pure_identifier_in_identifier17753_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_pure_identifier_in_identifier17753	= { FOLLOW_pure_identifier_in_identifier17753_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_keyword_in_identifier17758  */
static	ANTLR3_BITWORD FOLLOW_keyword_in_identifier17758_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_keyword_in_identifier17758	= { FOLLOW_keyword_in_identifier17758_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_identifier_list17767  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_identifier_list17767_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_identifier_list17767	= { FOLLOW_identifier_in_identifier_list17767_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_identifier_list17783  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_identifier_list17783_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_identifier_list17783	= { FOLLOW_COMMA_SYMBOL_in_identifier_list17783_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_identifier_list17785  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_identifier_list17785_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_identifier_list17785	= { FOLLOW_identifier_in_identifier_list17785_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_identifier_list_with_parentheses17796  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_identifier_list_with_parentheses17796_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_identifier_list_with_parentheses17796	= { FOLLOW_OPEN_PAR_SYMBOL_in_identifier_list_with_parentheses17796_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_in_identifier_list_with_parentheses17798  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_in_identifier_list_with_parentheses17798_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_identifier_list_in_identifier_list_with_parentheses17798	= { FOLLOW_identifier_list_in_identifier_list_with_parentheses17798_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_identifier_list_with_parentheses17800  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_identifier_list_with_parentheses17800_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_identifier_list_with_parentheses17800	= { FOLLOW_CLOSE_PAR_SYMBOL_in_identifier_list_with_parentheses17800_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_qualified_identifier17809  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_qualified_identifier17809_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_qualified_identifier17809	= { FOLLOW_identifier_in_qualified_identifier17809_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_dot_identifier_in_qualified_identifier17824  */
static	ANTLR3_BITWORD FOLLOW_dot_identifier_in_qualified_identifier17824_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_dot_identifier_in_qualified_identifier17824	= { FOLLOW_dot_identifier_in_qualified_identifier17824_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DOT_SYMBOL_in_dot_identifier17837  */
static	ANTLR3_BITWORD FOLLOW_DOT_SYMBOL_in_dot_identifier17837_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000001000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_DOT_SYMBOL_in_dot_identifier17837	= { FOLLOW_DOT_SYMBOL_in_dot_identifier17837_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_dot_identifier17839  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_dot_identifier17839_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_dot_identifier17839	= { FOLLOW_identifier_in_dot_identifier17839_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_string_list17957  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_string_list17957_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_string_list17957	= { FOLLOW_OPEN_PAR_SYMBOL_in_string_list17957_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_string_list17959  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_string_list17959_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_string_list17959	= { FOLLOW_text_string_in_string_list17959_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_string_list17962  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_string_list17962_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_string_list17962	= { FOLLOW_COMMA_SYMBOL_in_string_list17962_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_string_list17964  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_string_list17964_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_string_list17964	= { FOLLOW_text_string_in_string_list17964_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_string_list17968  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_string_list17968_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_string_list17968	= { FOLLOW_CLOSE_PAR_SYMBOL_in_string_list17968_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_text_string_no_linebreak17998  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_text_string_no_linebreak17998_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_text_string_no_linebreak17998	= { FOLLOW_text_string_in_text_string_no_linebreak17998_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_literal18015  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_literal18015_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_literal18015	= { FOLLOW_string_literal_in_literal18015_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_num_literal_in_literal18020  */
static	ANTLR3_BITWORD FOLLOW_num_literal_in_literal18020_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_num_literal_in_literal18020	= { FOLLOW_num_literal_in_literal18020_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_temporal_literal_in_literal18032  */
static	ANTLR3_BITWORD FOLLOW_temporal_literal_in_literal18032_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_temporal_literal_in_literal18032	= { FOLLOW_temporal_literal_in_literal18032_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_null_literal_in_literal18037  */
static	ANTLR3_BITWORD FOLLOW_null_literal_in_literal18037_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_null_literal_in_literal18037	= { FOLLOW_null_literal_in_literal18037_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_bool_literal_in_literal18042  */
static	ANTLR3_BITWORD FOLLOW_bool_literal_in_literal18042_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_bool_literal_in_literal18042	= { FOLLOW_bool_literal_in_literal18042_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNDERSCORE_CHARSET_in_literal18047  */
static	ANTLR3_BITWORD FOLLOW_UNDERSCORE_CHARSET_in_literal18047_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_UNDERSCORE_CHARSET_in_literal18047	= { FOLLOW_UNDERSCORE_CHARSET_in_literal18047_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_HEX_NUMBER_in_literal18050  */
static	ANTLR3_BITWORD FOLLOW_HEX_NUMBER_in_literal18050_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_HEX_NUMBER_in_literal18050	= { FOLLOW_HEX_NUMBER_in_literal18050_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNDERSCORE_CHARSET_in_literal18057  */
static	ANTLR3_BITWORD FOLLOW_UNDERSCORE_CHARSET_in_literal18057_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_UNDERSCORE_CHARSET_in_literal18057	= { FOLLOW_UNDERSCORE_CHARSET_in_literal18057_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BIN_NUMBER_in_literal18060  */
static	ANTLR3_BITWORD FOLLOW_BIN_NUMBER_in_literal18060_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BIN_NUMBER_in_literal18060	= { FOLLOW_BIN_NUMBER_in_literal18060_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_literal_in_signed_literal18070  */
static	ANTLR3_BITWORD FOLLOW_literal_in_signed_literal18070_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_literal_in_signed_literal18070	= { FOLLOW_literal_in_signed_literal18070_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PLUS_OPERATOR_in_signed_literal18075  */
static	ANTLR3_BITWORD FOLLOW_PLUS_OPERATOR_in_signed_literal18075_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010810000800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PLUS_OPERATOR_in_signed_literal18075	= { FOLLOW_PLUS_OPERATOR_in_signed_literal18075_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_signed_literal18077  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_signed_literal18077_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_signed_literal18077	= { FOLLOW_ulong_number_in_signed_literal18077_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MINUS_OPERATOR_in_signed_literal18082  */
static	ANTLR3_BITWORD FOLLOW_MINUS_OPERATOR_in_signed_literal18082_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010810000800), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MINUS_OPERATOR_in_signed_literal18082	= { FOLLOW_MINUS_OPERATOR_in_signed_literal18082_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_signed_literal18084  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_signed_literal18084_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_signed_literal18084	= { FOLLOW_ulong_number_in_signed_literal18084_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_in_string_literal18095  */
static	ANTLR3_BITWORD FOLLOW_string_in_string_literal18095_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_in_string_literal18095	= { FOLLOW_string_in_string_literal18095_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NCHAR_TEXT_in_string18112  */
static	ANTLR3_BITWORD FOLLOW_NCHAR_TEXT_in_string18112_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_NCHAR_TEXT_in_string18112	= { FOLLOW_NCHAR_TEXT_in_string18112_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNDERSCORE_CHARSET_in_string18117  */
static	ANTLR3_BITWORD FOLLOW_UNDERSCORE_CHARSET_in_string18117_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_UNDERSCORE_CHARSET_in_string18117	= { FOLLOW_UNDERSCORE_CHARSET_in_string18117_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SINGLE_QUOTED_TEXT_in_string18134  */
static	ANTLR3_BITWORD FOLLOW_SINGLE_QUOTED_TEXT_in_string18134_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_SINGLE_QUOTED_TEXT_in_string18134	= { FOLLOW_SINGLE_QUOTED_TEXT_in_string18134_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DOUBLE_QUOTED_TEXT_in_string18140  */
static	ANTLR3_BITWORD FOLLOW_DOUBLE_QUOTED_TEXT_in_string18140_bits[]	= { ANTLR3_UINT64_LIT(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(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_DOUBLE_QUOTED_TEXT_in_string18140	= { FOLLOW_DOUBLE_QUOTED_TEXT_in_string18140_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATE_SYMBOL_in_temporal_literal18209  */
static	ANTLR3_BITWORD FOLLOW_DATE_SYMBOL_in_temporal_literal18209_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_DATE_SYMBOL_in_temporal_literal18209	= { FOLLOW_DATE_SYMBOL_in_temporal_literal18209_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SINGLE_QUOTED_TEXT_in_temporal_literal18211  */
static	ANTLR3_BITWORD FOLLOW_SINGLE_QUOTED_TEXT_in_temporal_literal18211_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SINGLE_QUOTED_TEXT_in_temporal_literal18211	= { FOLLOW_SINGLE_QUOTED_TEXT_in_temporal_literal18211_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TIME_SYMBOL_in_temporal_literal18216  */
static	ANTLR3_BITWORD FOLLOW_TIME_SYMBOL_in_temporal_literal18216_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_TIME_SYMBOL_in_temporal_literal18216	= { FOLLOW_TIME_SYMBOL_in_temporal_literal18216_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SINGLE_QUOTED_TEXT_in_temporal_literal18218  */
static	ANTLR3_BITWORD FOLLOW_SINGLE_QUOTED_TEXT_in_temporal_literal18218_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SINGLE_QUOTED_TEXT_in_temporal_literal18218	= { FOLLOW_SINGLE_QUOTED_TEXT_in_temporal_literal18218_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TIMESTAMP_SYMBOL_in_temporal_literal18223  */
static	ANTLR3_BITWORD FOLLOW_TIMESTAMP_SYMBOL_in_temporal_literal18223_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_TIMESTAMP_SYMBOL_in_temporal_literal18223	= { FOLLOW_TIMESTAMP_SYMBOL_in_temporal_literal18223_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SINGLE_QUOTED_TEXT_in_temporal_literal18225  */
static	ANTLR3_BITWORD FOLLOW_SINGLE_QUOTED_TEXT_in_temporal_literal18225_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SINGLE_QUOTED_TEXT_in_temporal_literal18225	= { FOLLOW_SINGLE_QUOTED_TEXT_in_temporal_literal18225_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REAL_SYMBOL_in_real_literal18265  */
static	ANTLR3_BITWORD FOLLOW_REAL_SYMBOL_in_real_literal18265_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_REAL_SYMBOL_in_real_literal18265	= { FOLLOW_REAL_SYMBOL_in_real_literal18265_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DOUBLE_SYMBOL_in_real_literal18269  */
static	ANTLR3_BITWORD FOLLOW_DOUBLE_SYMBOL_in_real_literal18269_bits[]	= { ANTLR3_UINT64_LIT(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(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DOUBLE_SYMBOL_in_real_literal18269	= { FOLLOW_DOUBLE_SYMBOL_in_real_literal18269_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PRECISION_SYMBOL_in_real_literal18271  */
static	ANTLR3_BITWORD FOLLOW_PRECISION_SYMBOL_in_real_literal18271_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PRECISION_SYMBOL_in_real_literal18271	= { FOLLOW_PRECISION_SYMBOL_in_real_literal18271_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_float_options18283  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_float_options18283_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_OPEN_PAR_SYMBOL_in_float_options18283	= { FOLLOW_OPEN_PAR_SYMBOL_in_float_options18283_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_NUMBER_in_float_options18285  */
static	ANTLR3_BITWORD FOLLOW_INT_NUMBER_in_float_options18285_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_INT_NUMBER_in_float_options18285	= { FOLLOW_INT_NUMBER_in_float_options18285_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_float_options18288  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_float_options18288_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_COMMA_SYMBOL_in_float_options18288	= { FOLLOW_COMMA_SYMBOL_in_float_options18288_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_NUMBER_in_float_options18290  */
static	ANTLR3_BITWORD FOLLOW_INT_NUMBER_in_float_options18290_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_float_options18290	= { FOLLOW_INT_NUMBER_in_float_options18290_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_float_options18294  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_float_options18294_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_float_options18294	= { FOLLOW_CLOSE_PAR_SYMBOL_in_float_options18294_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_precision18303  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_precision18303_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_OPEN_PAR_SYMBOL_in_precision18303	= { FOLLOW_OPEN_PAR_SYMBOL_in_precision18303_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_NUMBER_in_precision18305  */
static	ANTLR3_BITWORD FOLLOW_INT_NUMBER_in_precision18305_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_INT_NUMBER_in_precision18305	= { FOLLOW_INT_NUMBER_in_precision18305_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_precision18307  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_precision18307_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_COMMA_SYMBOL_in_precision18307	= { FOLLOW_COMMA_SYMBOL_in_precision18307_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_NUMBER_in_precision18309  */
static	ANTLR3_BITWORD FOLLOW_INT_NUMBER_in_precision18309_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_precision18309	= { FOLLOW_INT_NUMBER_in_precision18309_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_precision18311  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_precision18311_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_precision18311	= { FOLLOW_CLOSE_PAR_SYMBOL_in_precision18311_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NCHAR_SYMBOL_in_nchar_literal18320  */
static	ANTLR3_BITWORD FOLLOW_NCHAR_SYMBOL_in_nchar_literal18320_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_NCHAR_SYMBOL_in_nchar_literal18320	= { FOLLOW_NCHAR_SYMBOL_in_nchar_literal18320_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NATIONAL_SYMBOL_in_nchar_literal18327  */
static	ANTLR3_BITWORD FOLLOW_NATIONAL_SYMBOL_in_nchar_literal18327_bits[]	= { ANTLR3_UINT64_LIT(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_NATIONAL_SYMBOL_in_nchar_literal18327	= { FOLLOW_NATIONAL_SYMBOL_in_nchar_literal18327_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHAR_SYMBOL_in_nchar_literal18329  */
static	ANTLR3_BITWORD FOLLOW_CHAR_SYMBOL_in_nchar_literal18329_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CHAR_SYMBOL_in_nchar_literal18329	= { FOLLOW_CHAR_SYMBOL_in_nchar_literal18329_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHAR_SYMBOL_in_varchar_literal18339  */
static	ANTLR3_BITWORD FOLLOW_CHAR_SYMBOL_in_varchar_literal18339_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_CHAR_SYMBOL_in_varchar_literal18339	= { FOLLOW_CHAR_SYMBOL_in_varchar_literal18339_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VARYING_SYMBOL_in_varchar_literal18341  */
static	ANTLR3_BITWORD FOLLOW_VARYING_SYMBOL_in_varchar_literal18341_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_VARYING_SYMBOL_in_varchar_literal18341	= { FOLLOW_VARYING_SYMBOL_in_varchar_literal18341_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VARCHAR_SYMBOL_in_varchar_literal18346  */
static	ANTLR3_BITWORD FOLLOW_VARCHAR_SYMBOL_in_varchar_literal18346_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_VARCHAR_SYMBOL_in_varchar_literal18346	= { FOLLOW_VARCHAR_SYMBOL_in_varchar_literal18346_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NATIONAL_SYMBOL_in_nvarchar_literal18355  */
static	ANTLR3_BITWORD FOLLOW_NATIONAL_SYMBOL_in_nvarchar_literal18355_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_NATIONAL_SYMBOL_in_nvarchar_literal18355	= { FOLLOW_NATIONAL_SYMBOL_in_nvarchar_literal18355_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VARCHAR_SYMBOL_in_nvarchar_literal18357  */
static	ANTLR3_BITWORD FOLLOW_VARCHAR_SYMBOL_in_nvarchar_literal18357_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_VARCHAR_SYMBOL_in_nvarchar_literal18357	= { FOLLOW_VARCHAR_SYMBOL_in_nvarchar_literal18357_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NVARCHAR_SYMBOL_in_nvarchar_literal18362  */
static	ANTLR3_BITWORD FOLLOW_NVARCHAR_SYMBOL_in_nvarchar_literal18362_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_NVARCHAR_SYMBOL_in_nvarchar_literal18362	= { FOLLOW_NVARCHAR_SYMBOL_in_nvarchar_literal18362_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NCHAR_SYMBOL_in_nvarchar_literal18367  */
static	ANTLR3_BITWORD FOLLOW_NCHAR_SYMBOL_in_nvarchar_literal18367_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_NCHAR_SYMBOL_in_nvarchar_literal18367	= { FOLLOW_NCHAR_SYMBOL_in_nvarchar_literal18367_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VARCHAR_SYMBOL_in_nvarchar_literal18369  */
static	ANTLR3_BITWORD FOLLOW_VARCHAR_SYMBOL_in_nvarchar_literal18369_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_VARCHAR_SYMBOL_in_nvarchar_literal18369	= { FOLLOW_VARCHAR_SYMBOL_in_nvarchar_literal18369_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NATIONAL_SYMBOL_in_nvarchar_literal18374  */
static	ANTLR3_BITWORD FOLLOW_NATIONAL_SYMBOL_in_nvarchar_literal18374_bits[]	= { ANTLR3_UINT64_LIT(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_NATIONAL_SYMBOL_in_nvarchar_literal18374	= { FOLLOW_NATIONAL_SYMBOL_in_nvarchar_literal18374_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHAR_SYMBOL_in_nvarchar_literal18376  */
static	ANTLR3_BITWORD FOLLOW_CHAR_SYMBOL_in_nvarchar_literal18376_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_CHAR_SYMBOL_in_nvarchar_literal18376	= { FOLLOW_CHAR_SYMBOL_in_nvarchar_literal18376_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VARYING_SYMBOL_in_nvarchar_literal18378  */
static	ANTLR3_BITWORD FOLLOW_VARYING_SYMBOL_in_nvarchar_literal18378_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_VARYING_SYMBOL_in_nvarchar_literal18378	= { FOLLOW_VARYING_SYMBOL_in_nvarchar_literal18378_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NCHAR_SYMBOL_in_nvarchar_literal18383  */
static	ANTLR3_BITWORD FOLLOW_NCHAR_SYMBOL_in_nvarchar_literal18383_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_NCHAR_SYMBOL_in_nvarchar_literal18383	= { FOLLOW_NCHAR_SYMBOL_in_nvarchar_literal18383_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VARYING_SYMBOL_in_nvarchar_literal18385  */
static	ANTLR3_BITWORD FOLLOW_VARYING_SYMBOL_in_nvarchar_literal18385_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_VARYING_SYMBOL_in_nvarchar_literal18385	= { FOLLOW_VARYING_SYMBOL_in_nvarchar_literal18385_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SINGLE_QUOTED_TEXT_in_text_or_identifier18394  */
static	ANTLR3_BITWORD FOLLOW_SINGLE_QUOTED_TEXT_in_text_or_identifier18394_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SINGLE_QUOTED_TEXT_in_text_or_identifier18394	= { FOLLOW_SINGLE_QUOTED_TEXT_in_text_or_identifier18394_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_text_or_identifier18399  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_text_or_identifier18399_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_text_or_identifier18399	= { FOLLOW_identifier_in_text_or_identifier18399_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_real_ulonglong_number_in_size_number18410  */
static	ANTLR3_BITWORD FOLLOW_real_ulonglong_number_in_size_number18410_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_real_ulonglong_number_in_size_number18410	= { FOLLOW_real_ulonglong_number_in_size_number18410_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_pure_identifier_in_size_number18415  */
static	ANTLR3_BITWORD FOLLOW_pure_identifier_in_size_number18415_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_pure_identifier_in_size_number18415	= { FOLLOW_pure_identifier_in_size_number18415_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_parentheses18425  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_parentheses18425_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_OPEN_PAR_SYMBOL_in_parentheses18425	= { FOLLOW_OPEN_PAR_SYMBOL_in_parentheses18425_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_parentheses18427  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_parentheses18427_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_parentheses18427	= { FOLLOW_CLOSE_PAR_SYMBOL_in_parentheses18427_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_keyword_sp_in_keyword18469  */
static	ANTLR3_BITWORD FOLLOW_keyword_sp_in_keyword18469_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_keyword_sp_in_keyword18469	= { FOLLOW_keyword_sp_in_keyword18469_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_keyword18474  */
static	ANTLR3_BITWORD FOLLOW_set_in_keyword18474_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_keyword18474	= { FOLLOW_set_in_keyword18474_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_wild_in_synpred1_MySQL5345  */
static	ANTLR3_BITWORD FOLLOW_table_wild_in_synpred1_MySQL5345_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_wild_in_synpred1_MySQL5345	= { FOLLOW_table_wild_in_synpred1_MySQL5345_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_synpred2_MySQL11147  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_synpred2_MySQL11147_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x000000A953013010), ANTLR3_UINT64_LIT(0x08000810204000C4), ANTLR3_UINT64_LIT(0x030060DC4880A000), ANTLR3_UINT64_LIT(0x34A0000040008300), ANTLR3_UINT64_LIT(0x1CB7000122E00600), ANTLR3_UINT64_LIT(0x0D00011810120800), ANTLR3_UINT64_LIT(0x0000000C00000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_synpred2_MySQL11147	= { FOLLOW_OPEN_PAR_SYMBOL_in_synpred2_MySQL11147_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_synpred2_MySQL11149  */
static	ANTLR3_BITWORD FOLLOW_expression_in_synpred2_MySQL11149_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_synpred2_MySQL11149	= { FOLLOW_expression_in_synpred2_MySQL11149_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_synpred2_MySQL11151  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_synpred2_MySQL11151_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_synpred2_MySQL11151	= { FOLLOW_COMMA_SYMBOL_in_synpred2_MySQL11151_bits, 1	};


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


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    SEMICOLON_SYMBOL3;
    pANTLR3_COMMON_TOKEN    EOF4;
    MySQLParser_statement_return statement1;
    #undef	RETURN_TYPE_statement1
    #define	RETURN_TYPE_statement1 MySQLParser_statement_return

    MySQLParser_begin_work_return begin_work2;
    #undef	RETURN_TYPE_begin_work2
    #define	RETURN_TYPE_begin_work2 MySQLParser_begin_work_return

    pANTLR3_BASE_TREE SEMICOLON_SYMBOL3_tree;
    pANTLR3_BASE_TREE EOF4_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SEMICOLON_SYMBOL3       = NULL;
    EOF4       = NULL;
    statement1.tree = NULL;

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


    SEMICOLON_SYMBOL3_tree   = NULL;
    EOF4_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:521:6: ( ( ( statement | begin_work ) ( SEMICOLON_SYMBOL )? )? EOF )
        // MySQL.g:522:2: ( ( statement | begin_work ) ( SEMICOLON_SYMBOL )? )? EOF
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:522:2: ( ( statement | begin_work ) ( SEMICOLON_SYMBOL )? )?
            {
                int alt3=2;
                {
                    int LA3_0 = LA(1);
                    if ( (((LA3_0 >= BACKUP_SYMBOL) && (LA3_0 <= BEGIN_SYMBOL)) || LA3_0 == CACHE_SYMBOL || LA3_0 == CHECKSUM_SYMBOL || LA3_0 == COMMIT_SYMBOL || ((LA3_0 >= DEALLOCATE_SYMBOL) && (LA3_0 <= DO_SYMBOL)) || ((LA3_0 >= EXECUTE_SYMBOL) && (LA3_0 <= FLUSH_SYMBOL)) || ((LA3_0 >= HANDLER_SYMBOL) && (LA3_0 <= HELP_SYMBOL)) || LA3_0 == INSTALL_SYMBOL || LA3_0 == PARTITION_SYMBOL || LA3_0 == PREPARE_SYMBOL || ((LA3_0 >= REPAIR_SYMBOL) && (LA3_0 <= SAVEPOINT_SYMBOL)) || ((LA3_0 >= START_SYMBOL) && (LA3_0 <= TRUNCATE_SYMBOL)) || LA3_0 == UNINSTALL_SYMBOL || LA3_0 == XA_SYMBOL || LA3_0 == ANALYZE_SYMBOL || LA3_0 == BINLOG_SYMBOL || LA3_0 == SHUTDOWN_SYMBOL || LA3_0 == ALTER_SYMBOL || LA3_0 == CALL_SYMBOL || LA3_0 == CHANGE_SYMBOL || LA3_0 == CHECK_SYMBOL || LA3_0 == CREATE_SYMBOL || ((LA3_0 >= DELETE_SYMBOL) && (LA3_0 <= DESC_SYMBOL)) || LA3_0 == DROP_SYMBOL || ((LA3_0 >= GET_SYMBOL) && (LA3_0 <= GRANT_SYMBOL)) || LA3_0 == INSERT_SYMBOL || LA3_0 == KILL_SYMBOL || LA3_0 == LOAD_SYMBOL || LA3_0 == LOCK_SYMBOL || LA3_0 == OPEN_PAR_SYMBOL || LA3_0 == OPTIMIZE_SYMBOL || LA3_0 == PURGE_SYMBOL || ((LA3_0 >= RELEASE_SYMBOL) && (LA3_0 <= RENAME_SYMBOL)) || LA3_0 == REPLACE_SYMBOL || LA3_0 == RESIGNAL_SYMBOL || LA3_0 == REVOKE_SYMBOL || LA3_0 == SELECT_SYMBOL || LA3_0 == SET_SYMBOL || ((LA3_0 >= SHOW_SYMBOL) && (LA3_0 <= SIGNAL_SYMBOL)) || LA3_0 == UNLOCK_SYMBOL || LA3_0 == UPDATE_SYMBOL || LA3_0 == USE_SYMBOL))
                    {
                        alt3=1;
                    }
                }
                switch (alt3)
                {
            	case 1:
            	    // MySQL.g:522:3: ( statement | begin_work ) ( SEMICOLON_SYMBOL )?
            	    {
            	        // MySQL.g:522:3: ( statement | begin_work )
            	        {
            	            int alt1=2;
            	            {
            	                int LA1_0 = LA(1);
            	                if ( (LA1_0 == BACKUP_SYMBOL || LA1_0 == CACHE_SYMBOL || LA1_0 == CHECKSUM_SYMBOL || LA1_0 == COMMIT_SYMBOL || ((LA1_0 >= DEALLOCATE_SYMBOL) && (LA1_0 <= DO_SYMBOL)) || ((LA1_0 >= EXECUTE_SYMBOL) && (LA1_0 <= FLUSH_SYMBOL)) || ((LA1_0 >= HANDLER_SYMBOL) && (LA1_0 <= HELP_SYMBOL)) || LA1_0 == INSTALL_SYMBOL || LA1_0 == PARTITION_SYMBOL || LA1_0 == PREPARE_SYMBOL || ((LA1_0 >= REPAIR_SYMBOL) && (LA1_0 <= SAVEPOINT_SYMBOL)) || ((LA1_0 >= START_SYMBOL) && (LA1_0 <= TRUNCATE_SYMBOL)) || LA1_0 == UNINSTALL_SYMBOL || LA1_0 == XA_SYMBOL || LA1_0 == ANALYZE_SYMBOL || LA1_0 == BINLOG_SYMBOL || LA1_0 == SHUTDOWN_SYMBOL || LA1_0 == ALTER_SYMBOL || LA1_0 == CALL_SYMBOL || LA1_0 == CHANGE_SYMBOL || LA1_0 == CHECK_SYMBOL || LA1_0 == CREATE_SYMBOL || ((LA1_0 >= DELETE_SYMBOL) && (LA1_0 <= DESC_SYMBOL)) || LA1_0 == DROP_SYMBOL || ((LA1_0 >= GET_SYMBOL) && (LA1_0 <= GRANT_SYMBOL)) || LA1_0 == INSERT_SYMBOL || LA1_0 == KILL_SYMBOL || LA1_0 == LOAD_SYMBOL || LA1_0 == LOCK_SYMBOL || LA1_0 == OPEN_PAR_SYMBOL || LA1_0 == OPTIMIZE_SYMBOL || LA1_0 == PURGE_SYMBOL || ((LA1_0 >= RELEASE_SYMBOL) && (LA1_0 <= RENAME_SYMBOL)) || LA1_0 == REPLACE_SYMBOL || LA1_0 == RESIGNAL_SYMBOL || LA1_0 == REVOKE_SYMBOL || LA1_0 == SELECT_SYMBOL || LA1_0 == SET_SYMBOL || ((LA1_0 >= SHOW_SYMBOL) && (LA1_0 <= SIGNAL_SYMBOL)) || LA1_0 == UNLOCK_SYMBOL || LA1_0 == UPDATE_SYMBOL || LA1_0 == USE_SYMBOL))
            	                {
            	                    alt1=1;
            	                }
            	                else if ( (LA1_0 == BEGIN_SYMBOL))
            	                {
            	                    alt1=2;
            	                }
            	                else
            	                {
            	                    if (BACKTRACKING>0)
            	                    {
            	                        FAILEDFLAG = ANTLR3_TRUE;
            	                        return retval;
            	                    }


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


            	                    goto rulequeryEx;

            	                }
            	            }
            	            switch (alt1)
            	            {
            	        	case 1:
            	        	    // MySQL.g:522:4: statement
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_statement_in_query457);
            	        	        statement1=statement(ctx);

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

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

            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:522:16: begin_work
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_begin_work_in_query461);
            	        	        begin_work2=begin_work(ctx);

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

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

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:522:28: ( SEMICOLON_SYMBOL )?
            	        {
            	            int alt2=2;
            	            switch ( LA(1) )
            	            {
            	                case SEMICOLON_SYMBOL:
            	                	{
            	                		alt2=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt2)
            	            {
            	        	case 1:
            	        	    // MySQL.g:522:28: SEMICOLON_SYMBOL
            	        	    {
            	        	        SEMICOLON_SYMBOL3 = (pANTLR3_COMMON_TOKEN) MATCHT(SEMICOLON_SYMBOL, &FOLLOW_SEMICOLON_SYMBOL_in_query464);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulequeryEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

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

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

                }
            }

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

            if ( BACKTRACKING==0 ) {
            EOF4_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EOF4));
            ADAPTOR->addChild(ADAPTOR, root_0, EOF4_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:525: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 |{...}? get_diagnostics |{...}? signal_statement |{...}? resignal_statement );
 */
static MySQLParser_statement_return
statement(pMySQLParser ctx)
{
    MySQLParser_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_alter_statement_return alter_statement5;
    #undef	RETURN_TYPE_alter_statement5
    #define	RETURN_TYPE_alter_statement5 MySQLParser_alter_statement_return

    MySQLParser_create_statement_return create_statement6;
    #undef	RETURN_TYPE_create_statement6
    #define	RETURN_TYPE_create_statement6 MySQLParser_create_statement_return

    MySQLParser_drop_statement_return drop_statement7;
    #undef	RETURN_TYPE_drop_statement7
    #define	RETURN_TYPE_drop_statement7 MySQLParser_drop_statement_return

    MySQLParser_rename_table_statement_return rename_table_statement8;
    #undef	RETURN_TYPE_rename_table_statement8
    #define	RETURN_TYPE_rename_table_statement8 MySQLParser_rename_table_statement_return

    MySQLParser_truncate_table_statement_return truncate_table_statement9;
    #undef	RETURN_TYPE_truncate_table_statement9
    #define	RETURN_TYPE_truncate_table_statement9 MySQLParser_truncate_table_statement_return

    MySQLParser_call_statement_return call_statement10;
    #undef	RETURN_TYPE_call_statement10
    #define	RETURN_TYPE_call_statement10 MySQLParser_call_statement_return

    MySQLParser_delete_statement_return delete_statement11;
    #undef	RETURN_TYPE_delete_statement11
    #define	RETURN_TYPE_delete_statement11 MySQLParser_delete_statement_return

    MySQLParser_do_statement_return do_statement12;
    #undef	RETURN_TYPE_do_statement12
    #define	RETURN_TYPE_do_statement12 MySQLParser_do_statement_return

    MySQLParser_handler_statement_return handler_statement13;
    #undef	RETURN_TYPE_handler_statement13
    #define	RETURN_TYPE_handler_statement13 MySQLParser_handler_statement_return

    MySQLParser_insert_statement_return insert_statement14;
    #undef	RETURN_TYPE_insert_statement14
    #define	RETURN_TYPE_insert_statement14 MySQLParser_insert_statement_return

    MySQLParser_load_statement_return load_statement15;
    #undef	RETURN_TYPE_load_statement15
    #define	RETURN_TYPE_load_statement15 MySQLParser_load_statement_return

    MySQLParser_replace_statement_return replace_statement16;
    #undef	RETURN_TYPE_replace_statement16
    #define	RETURN_TYPE_replace_statement16 MySQLParser_replace_statement_return

    MySQLParser_select_statement_return select_statement17;
    #undef	RETURN_TYPE_select_statement17
    #define	RETURN_TYPE_select_statement17 MySQLParser_select_statement_return

    MySQLParser_update_statement_return update_statement18;
    #undef	RETURN_TYPE_update_statement18
    #define	RETURN_TYPE_update_statement18 MySQLParser_update_statement_return

    MySQLParser_partitioning_return partitioning19;
    #undef	RETURN_TYPE_partitioning19
    #define	RETURN_TYPE_partitioning19 MySQLParser_partitioning_return

    MySQLParser_transaction_or_locking_statement_return transaction_or_locking_statement20;
    #undef	RETURN_TYPE_transaction_or_locking_statement20
    #define	RETURN_TYPE_transaction_or_locking_statement20 MySQLParser_transaction_or_locking_statement_return

    MySQLParser_replication_statement_return replication_statement21;
    #undef	RETURN_TYPE_replication_statement21
    #define	RETURN_TYPE_replication_statement21 MySQLParser_replication_statement_return

    MySQLParser_prepared_statement_return prepared_statement22;
    #undef	RETURN_TYPE_prepared_statement22
    #define	RETURN_TYPE_prepared_statement22 MySQLParser_prepared_statement_return

    MySQLParser_account_management_statement_return account_management_statement23;
    #undef	RETURN_TYPE_account_management_statement23
    #define	RETURN_TYPE_account_management_statement23 MySQLParser_account_management_statement_return

    MySQLParser_table_administration_statement_return table_administration_statement24;
    #undef	RETURN_TYPE_table_administration_statement24
    #define	RETURN_TYPE_table_administration_statement24 MySQLParser_table_administration_statement_return

    MySQLParser_install_uninstall_statment_return install_uninstall_statment25;
    #undef	RETURN_TYPE_install_uninstall_statment25
    #define	RETURN_TYPE_install_uninstall_statment25 MySQLParser_install_uninstall_statment_return

    MySQLParser_set_statement_return set_statement26;
    #undef	RETURN_TYPE_set_statement26
    #define	RETURN_TYPE_set_statement26 MySQLParser_set_statement_return

    MySQLParser_show_statement_return show_statement27;
    #undef	RETURN_TYPE_show_statement27
    #define	RETURN_TYPE_show_statement27 MySQLParser_show_statement_return

    MySQLParser_other_administrative_statement_return other_administrative_statement28;
    #undef	RETURN_TYPE_other_administrative_statement28
    #define	RETURN_TYPE_other_administrative_statement28 MySQLParser_other_administrative_statement_return

    MySQLParser_utility_statement_return utility_statement29;
    #undef	RETURN_TYPE_utility_statement29
    #define	RETURN_TYPE_utility_statement29 MySQLParser_utility_statement_return

    MySQLParser_get_diagnostics_return get_diagnostics30;
    #undef	RETURN_TYPE_get_diagnostics30
    #define	RETURN_TYPE_get_diagnostics30 MySQLParser_get_diagnostics_return

    MySQLParser_signal_statement_return signal_statement31;
    #undef	RETURN_TYPE_signal_statement31
    #define	RETURN_TYPE_signal_statement31 MySQLParser_signal_statement_return

    MySQLParser_resignal_statement_return resignal_statement32;
    #undef	RETURN_TYPE_resignal_statement32
    #define	RETURN_TYPE_resignal_statement32 MySQLParser_resignal_statement_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    alter_statement5.tree = NULL;

    create_statement6.tree = NULL;

    drop_statement7.tree = NULL;

    rename_table_statement8.tree = NULL;

    truncate_table_statement9.tree = NULL;

    call_statement10.tree = NULL;

    delete_statement11.tree = NULL;

    do_statement12.tree = NULL;

    handler_statement13.tree = NULL;

    insert_statement14.tree = NULL;

    load_statement15.tree = NULL;

    replace_statement16.tree = NULL;

    select_statement17.tree = NULL;

    update_statement18.tree = NULL;

    partitioning19.tree = NULL;

    transaction_or_locking_statement20.tree = NULL;

    replication_statement21.tree = NULL;

    prepared_statement22.tree = NULL;

    account_management_statement23.tree = NULL;

    table_administration_statement24.tree = NULL;

    install_uninstall_statment25.tree = NULL;

    set_statement26.tree = NULL;

    show_statement27.tree = NULL;

    other_administrative_statement28.tree = NULL;

    utility_statement29.tree = NULL;

    get_diagnostics30.tree = NULL;

    signal_statement31.tree = NULL;

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




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:525: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 |{...}? get_diagnostics |{...}? signal_statement |{...}? resignal_statement )

            ANTLR3_UINT32 alt4;

            alt4=28;

            {
                int LA4_0 = LA(1);
                if ( (LA4_0 == ALTER_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case USER_SYMBOL:
                    	{
                    		alt4=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:
                    	{
                    		alt4=1;
                    	}
                        break;

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

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


                        goto rulestatementEx;

                    }

                }
                else if ( (LA4_0 == CREATE_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case USER_SYMBOL:
                    	{
                    		alt4=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:
                    	{
                    		alt4=2;
                    	}
                        break;

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

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


                        goto rulestatementEx;

                    }

                }
                else if ( (LA4_0 == DROP_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case PREPARE_SYMBOL:
                    	{
                    		alt4=18;
                    	}
                        break;
                    case USER_SYMBOL:
                    	{
                    		alt4=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:
                    	{
                    		alt4=3;
                    	}
                        break;

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

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


                        goto rulestatementEx;

                    }

                }
                else if ( (LA4_0 == RENAME_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case TABLES_SYMBOL:
                    case TABLE_SYMBOL:
                    	{
                    		alt4=4;
                    	}
                        break;
                    case USER_SYMBOL:
                    	{
                    		alt4=19;
                    	}
                        break;

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

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


                        goto rulestatementEx;

                    }

                }
                else if ( (LA4_0 == TRUNCATE_SYMBOL))
                {
                    alt4=5;
                }
                else if ( (LA4_0 == CALL_SYMBOL))
                {
                    alt4=6;
                }
                else if ( (LA4_0 == DELETE_SYMBOL))
                {
                    alt4=7;
                }
                else if ( (LA4_0 == DO_SYMBOL))
                {
                    alt4=8;
                }
                else if ( (LA4_0 == HANDLER_SYMBOL))
                {
                    alt4=9;
                }
                else if ( (LA4_0 == INSERT_SYMBOL))
                {
                    alt4=10;
                }
                else if ( (LA4_0 == LOAD_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case INDEX_SYMBOL:
                    	{
                    		alt4=24;
                    	}
                        break;
                    case DATA_SYMBOL:
                    	{
                    		{
                    		    int LA4_112 = LA(3);
                    		    if ( (!( ((SERVER_VERSION < 50500)) )))
                    		    {
                    		        alt4=11;
                    		    }
                    		    else if ( ((SERVER_VERSION < 50500)))
                    		    {
                    		        alt4=17;
                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


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


                    		        goto rulestatementEx;

                    		    }
                    		}
                    	}
                        break;
                    case XML_SYMBOL:
                    	{
                    		alt4=11;
                    	}
                        break;
                    case TABLE_SYMBOL:
                    	{
                    		alt4=17;
                    	}
                        break;

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

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


                        goto rulestatementEx;

                    }

                }
                else if ( (LA4_0 == REPLACE_SYMBOL))
                {
                    alt4=12;
                }
                else if ( (LA4_0 == OPEN_PAR_SYMBOL || LA4_0 == SELECT_SYMBOL))
                {
                    alt4=13;
                }
                else if ( (LA4_0 == UPDATE_SYMBOL))
                {
                    alt4=14;
                }
                else if ( (LA4_0 == PARTITION_SYMBOL))
                {
                    alt4=15;
                }
                else if ( (LA4_0 == START_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case TRANSACTION_SYMBOL:
                    	{
                    		alt4=16;
                    	}
                        break;
                    case GROUP_REPLICATION_SYMBOL:
                    case SLAVE_SYMBOL:
                    	{
                    		alt4=17;
                    	}
                        break;

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

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


                        goto rulestatementEx;

                    }

                }
                else if ( (LA4_0 == COMMIT_SYMBOL || ((LA4_0 >= ROLLBACK_SYMBOL) && (LA4_0 <= SAVEPOINT_SYMBOL)) || LA4_0 == XA_SYMBOL || LA4_0 == LOCK_SYMBOL || LA4_0 == RELEASE_SYMBOL || LA4_0 == UNLOCK_SYMBOL))
                {
                    alt4=16;
                }
                else if ( (LA4_0 == STOP_SYMBOL || LA4_0 == CHANGE_SYMBOL || LA4_0 == PURGE_SYMBOL))
                {
                    alt4=17;
                }
                else if ( (LA4_0 == DEALLOCATE_SYMBOL || LA4_0 == EXECUTE_SYMBOL || LA4_0 == PREPARE_SYMBOL))
                {
                    alt4=18;
                }
                else if ( (LA4_0 == GRANT_SYMBOL || LA4_0 == REVOKE_SYMBOL))
                {
                    alt4=19;
                }
                else if ( (LA4_0 == SET_SYMBOL))
                {
                    {
                        int LA4_33 = LA(2);
                        if ( (LA4_33 == PASSWORD_SYMBOL))
                        {
                            {
                                int LA4_118 = LA(3);
                                if ( (!( ((LA(1) == SET_SYMBOL && LA(2) != PASSWORD_SYMBOL)) )))
                                {
                                    alt4=19;
                                }
                                else if ( ((LA(1) == SET_SYMBOL && LA(2) != PASSWORD_SYMBOL)))
                                {
                                    alt4=22;
                                }
                                else
                                {
                                    if (BACKTRACKING>0)
                                    {
                                        FAILEDFLAG = ANTLR3_TRUE;
                                        return retval;
                                    }


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


                                    goto rulestatementEx;

                                }
                            }
                        }
                        else if ( (((LA4_33 >= ACCOUNT_SYMBOL) && (LA4_33 <= PARTITIONS_SYMBOL)) || ((LA4_33 >= PHASE_SYMBOL) && (LA4_33 <= YEAR_SYMBOL)) || LA4_33 == CHAR_SYMBOL || LA4_33 == DEFAULT_SYMBOL || ((LA4_33 >= AT_AT_SIGN_SYMBOL) && (LA4_33 <= AT_TEXT_SUFFIX)) || LA4_33 == BACK_TICK_QUOTED_ID || LA4_33 == DOUBLE_QUOTED_TEXT || LA4_33 == IDENTIFIER))
                        {
                            alt4=22;
                        }
                        else
                        {
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }


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


                            goto rulestatementEx;

                        }
                    }
                }
                else if ( (LA4_0 == BACKUP_SYMBOL || LA4_0 == CHECKSUM_SYMBOL || LA4_0 == REPAIR_SYMBOL || LA4_0 == RESTORE_SYMBOL || LA4_0 == ANALYZE_SYMBOL || LA4_0 == CHECK_SYMBOL || LA4_0 == OPTIMIZE_SYMBOL))
                {
                    alt4=20;
                }
                else if ( (LA4_0 == INSTALL_SYMBOL || LA4_0 == UNINSTALL_SYMBOL))
                {
                    alt4=21;
                }
                else if ( (LA4_0 == SHOW_SYMBOL))
                {
                    alt4=23;
                }
                else if ( (LA4_0 == CACHE_SYMBOL || LA4_0 == FLUSH_SYMBOL || LA4_0 == RESET_SYMBOL || LA4_0 == BINLOG_SYMBOL || LA4_0 == SHUTDOWN_SYMBOL || LA4_0 == KILL_SYMBOL))
                {
                    alt4=24;
                }
                else if ( (LA4_0 == HELP_SYMBOL || ((LA4_0 >= DESCRIBE_SYMBOL) && (LA4_0 <= DESC_SYMBOL)) || LA4_0 == USE_SYMBOL))
                {
                    alt4=25;
                }
                else if ( (LA4_0 == GET_SYMBOL))
                {
                    alt4=26;
                }
                else if ( (LA4_0 == SIGNAL_SYMBOL))
                {
                    alt4=27;
                }
                else if ( (LA4_0 == RESIGNAL_SYMBOL))
                {
                    alt4=28;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


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


                    goto rulestatementEx;

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


        	        FOLLOWPUSH(FOLLOW_alter_statement_in_statement480);
        	        alter_statement5=alter_statement(ctx);

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

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

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


        	        FOLLOWPUSH(FOLLOW_create_statement_in_statement485);
        	        create_statement6=create_statement(ctx);

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

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

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


        	        FOLLOWPUSH(FOLLOW_drop_statement_in_statement490);
        	        drop_statement7=drop_statement(ctx);

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

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

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


        	        FOLLOWPUSH(FOLLOW_rename_table_statement_in_statement495);
        	        rename_table_statement8=rename_table_statement(ctx);

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

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

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


        	        FOLLOWPUSH(FOLLOW_truncate_table_statement_in_statement500);
        	        truncate_table_statement9=truncate_table_statement(ctx);

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

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

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


        	        FOLLOWPUSH(FOLLOW_call_statement_in_statement509);
        	        call_statement10=call_statement(ctx);

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

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

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


        	        FOLLOWPUSH(FOLLOW_delete_statement_in_statement514);
        	        delete_statement11=delete_statement(ctx);

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

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

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


        	        FOLLOWPUSH(FOLLOW_do_statement_in_statement519);
        	        do_statement12=do_statement(ctx);

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

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

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


        	        FOLLOWPUSH(FOLLOW_handler_statement_in_statement524);
        	        handler_statement13=handler_statement(ctx);

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

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

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


        	        FOLLOWPUSH(FOLLOW_insert_statement_in_statement529);
        	        insert_statement14=insert_statement(ctx);

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

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

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


        	        FOLLOWPUSH(FOLLOW_load_statement_in_statement534);
        	        load_statement15=load_statement(ctx);

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

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

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


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

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

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

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


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

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

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

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


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

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

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

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


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

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

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

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


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

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

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

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


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

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

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

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


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

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

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

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


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

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

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

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


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

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

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

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


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

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

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

        	    }
        	    break;
        	case 22:
        	    // MySQL.g:558: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_statement607);
        	        set_statement26=set_statement(ctx);

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

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

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


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

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

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

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


        	        FOLLOWPUSH(FOLLOW_other_administrative_statement_in_statement618);
        	        other_administrative_statement28=other_administrative_statement(ctx);

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

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

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


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

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

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

        	    }
        	    break;
        	case 26:
        	    // MySQL.g:565: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 *)"statement";


        	        }

        	        FOLLOWPUSH(FOLLOW_get_diagnostics_in_statement636);
        	        get_diagnostics30=get_diagnostics(ctx);

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

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

        	    }
        	    break;
        	case 27:
        	    // MySQL.g:566: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 *)"statement";


        	        }

        	        FOLLOWPUSH(FOLLOW_signal_statement_in_statement643);
        	        signal_statement31=signal_statement(ctx);

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

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

        	    }
        	    break;
        	case 28:
        	    // MySQL.g:567: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 *)"statement";


        	        }

        	        FOLLOWPUSH(FOLLOW_resignal_statement_in_statement650);
        	        resignal_statement32=resignal_statement(ctx);

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

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, resignal_statement32.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:572: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_SYMBOL33;
    pANTLR3_COMMON_TOKEN    FUNCTION_SYMBOL36;
    pANTLR3_COMMON_TOKEN    PROCEDURE_SYMBOL39;
    MySQLParser_alter_database_return alter_database34;
    #undef	RETURN_TYPE_alter_database34
    #define	RETURN_TYPE_alter_database34 MySQLParser_alter_database_return

    MySQLParser_alter_log_file_group_return alter_log_file_group35;
    #undef	RETURN_TYPE_alter_log_file_group35
    #define	RETURN_TYPE_alter_log_file_group35 MySQLParser_alter_log_file_group_return

    MySQLParser_function_ref_return function_ref37;
    #undef	RETURN_TYPE_function_ref37
    #define	RETURN_TYPE_function_ref37 MySQLParser_function_ref_return

    MySQLParser_routine_alter_options_return routine_alter_options38;
    #undef	RETURN_TYPE_routine_alter_options38
    #define	RETURN_TYPE_routine_alter_options38 MySQLParser_routine_alter_options_return

    MySQLParser_procedure_ref_return procedure_ref40;
    #undef	RETURN_TYPE_procedure_ref40
    #define	RETURN_TYPE_procedure_ref40 MySQLParser_procedure_ref_return

    MySQLParser_routine_alter_options_return routine_alter_options41;
    #undef	RETURN_TYPE_routine_alter_options41
    #define	RETURN_TYPE_routine_alter_options41 MySQLParser_routine_alter_options_return

    MySQLParser_alter_server_return alter_server42;
    #undef	RETURN_TYPE_alter_server42
    #define	RETURN_TYPE_alter_server42 MySQLParser_alter_server_return

    MySQLParser_alter_table_return alter_table43;
    #undef	RETURN_TYPE_alter_table43
    #define	RETURN_TYPE_alter_table43 MySQLParser_alter_table_return

    MySQLParser_alter_tablespace_return alter_tablespace44;
    #undef	RETURN_TYPE_alter_tablespace44
    #define	RETURN_TYPE_alter_tablespace44 MySQLParser_alter_tablespace_return

    MySQLParser_alter_event_return alter_event45;
    #undef	RETURN_TYPE_alter_event45
    #define	RETURN_TYPE_alter_event45 MySQLParser_alter_event_return

    MySQLParser_alter_view_return alter_view46;
    #undef	RETURN_TYPE_alter_view46
    #define	RETURN_TYPE_alter_view46 MySQLParser_alter_view_return

    pANTLR3_BASE_TREE ALTER_SYMBOL33_tree;
    pANTLR3_BASE_TREE FUNCTION_SYMBOL36_tree;
    pANTLR3_BASE_TREE PROCEDURE_SYMBOL39_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ALTER_SYMBOL33       = NULL;
    FUNCTION_SYMBOL36       = NULL;
    PROCEDURE_SYMBOL39       = NULL;
    alter_database34.tree = NULL;

    alter_log_file_group35.tree = NULL;

    function_ref37.tree = NULL;

    routine_alter_options38.tree = NULL;

    procedure_ref40.tree = NULL;

    routine_alter_options41.tree = NULL;

    alter_server42.tree = NULL;

    alter_table43.tree = NULL;

    alter_tablespace44.tree = NULL;

    alter_event45.tree = NULL;

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


    ALTER_SYMBOL33_tree   = NULL;
    FUNCTION_SYMBOL36_tree   = NULL;
    PROCEDURE_SYMBOL39_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:572: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:573: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_SYMBOL33 = (pANTLR3_COMMON_TOKEN) MATCHT(ALTER_SYMBOL, &FOLLOW_ALTER_SYMBOL_in_alter_statement662);
            if  (HASEXCEPTION())
            {
                goto rulealter_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

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

            // MySQL.g:574: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 alt7=9;
                switch ( LA(1) )
                {
                case DATABASE_SYMBOL:
                	{
                		alt7=1;
                	}
                    break;
                case LOGFILE_SYMBOL:
                	{
                		alt7=2;
                	}
                    break;
                case FUNCTION_SYMBOL:
                	{
                		alt7=3;
                	}
                    break;
                case PROCEDURE_SYMBOL:
                	{
                		alt7=4;
                	}
                    break;
                case SERVER_SYMBOL:
                	{
                		alt7=5;
                	}
                    break;
                case IGNORE_SYMBOL:
                case OFFLINE_SYMBOL:
                case ONLINE_SYMBOL:
                case TABLE_SYMBOL:
                	{
                		alt7=6;
                	}
                    break;
                case TABLESPACE_SYMBOL:
                	{
                		alt7=7;
                	}
                    break;
                case DEFINER_SYMBOL:
                	{
                		switch ( LA(2) )
                		{
                		case EQUAL_OPERATOR:
                			{
                				{
                				    int LA7_15 = LA(3);
                				    if ( ((SERVER_VERSION >= 50100)))
                				    {
                				        alt7=8;
                				    }
                				    else if ( (ANTLR3_TRUE))
                				    {
                				        alt7=9;
                				    }
                				    else
                				    {
                				        if (BACKTRACKING>0)
                				        {
                				            FAILEDFLAG = ANTLR3_TRUE;
                				            return retval;
                				        }


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


                		    goto rulealter_statementEx;

                		}

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

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

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


                    goto rulealter_statementEx;

                }

                switch (alt7)
                {
            	case 1:
            	    // MySQL.g:575:2: alter_database
            	    {
            	        FOLLOWPUSH(FOLLOW_alter_database_in_alter_statement670);
            	        alter_database34=alter_database(ctx);

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

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

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:576:4: alter_log_file_group
            	    {
            	        FOLLOWPUSH(FOLLOW_alter_log_file_group_in_alter_statement675);
            	        alter_log_file_group35=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_group35.tree);

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

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

            	        FOLLOWPUSH(FOLLOW_function_ref_in_alter_statement682);
            	        function_ref37=function_ref(ctx);

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

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

            	        // MySQL.g:577:33: ( 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:577:33: routine_alter_options
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_routine_alter_options_in_alter_statement684);
            	        	        routine_alter_options38=routine_alter_options(ctx);

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

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

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 4:
            	    // MySQL.g:578:4: PROCEDURE_SYMBOL procedure_ref ( routine_alter_options )?
            	    {
            	        PROCEDURE_SYMBOL39 = (pANTLR3_COMMON_TOKEN) MATCHT(PROCEDURE_SYMBOL, &FOLLOW_PROCEDURE_SYMBOL_in_alter_statement690);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	        FOLLOWPUSH(FOLLOW_procedure_ref_in_alter_statement692);
            	        procedure_ref40=procedure_ref(ctx);

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

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

            	        // MySQL.g:578:35: ( routine_alter_options )?
            	        {
            	            int alt6=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:
            	                	{
            	                		alt6=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt6)
            	            {
            	        	case 1:
            	        	    // MySQL.g:578:35: routine_alter_options
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_routine_alter_options_in_alter_statement694);
            	        	        routine_alter_options41=routine_alter_options(ctx);

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

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

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 5:
            	    // MySQL.g:579:4: alter_server
            	    {
            	        FOLLOWPUSH(FOLLOW_alter_server_in_alter_statement700);
            	        alter_server42=alter_server(ctx);

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

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

            	    }
            	    break;
            	case 6:
            	    // MySQL.g:580:4: alter_table
            	    {
            	        FOLLOWPUSH(FOLLOW_alter_table_in_alter_statement705);
            	        alter_table43=alter_table(ctx);

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

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

            	    }
            	    break;
            	case 7:
            	    // MySQL.g:581:4: alter_tablespace
            	    {
            	        FOLLOWPUSH(FOLLOW_alter_tablespace_in_alter_statement710);
            	        alter_tablespace44=alter_tablespace(ctx);

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

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

            	    }
            	    break;
            	case 8:
            	    // MySQL.g:582: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_statement717);
            	        alter_event45=alter_event(ctx);

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

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

            	    }
            	    break;
            	case 9:
            	    // MySQL.g:583:4: alter_view
            	    {
            	        FOLLOWPUSH(FOLLOW_alter_view_in_alter_statement722);
            	        alter_view46=alter_view(ctx);

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

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, alter_view46.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:587: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_SYMBOL47;
    pANTLR3_COMMON_TOKEN    UPGRADE_SYMBOL50;
    pANTLR3_COMMON_TOKEN    DATA_SYMBOL51;
    pANTLR3_COMMON_TOKEN    DIRECTORY_SYMBOL52;
    pANTLR3_COMMON_TOKEN    NAME_SYMBOL53;
    MySQLParser_schema_ref_return schema_ref48;
    #undef	RETURN_TYPE_schema_ref48
    #define	RETURN_TYPE_schema_ref48 MySQLParser_schema_ref_return

    MySQLParser_database_option_return database_option49;
    #undef	RETURN_TYPE_database_option49
    #define	RETURN_TYPE_database_option49 MySQLParser_database_option_return

    pANTLR3_BASE_TREE DATABASE_SYMBOL47_tree;
    pANTLR3_BASE_TREE UPGRADE_SYMBOL50_tree;
    pANTLR3_BASE_TREE DATA_SYMBOL51_tree;
    pANTLR3_BASE_TREE DIRECTORY_SYMBOL52_tree;
    pANTLR3_BASE_TREE NAME_SYMBOL53_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DATABASE_SYMBOL47       = NULL;
    UPGRADE_SYMBOL50       = NULL;
    DATA_SYMBOL51       = NULL;
    DIRECTORY_SYMBOL52       = NULL;
    NAME_SYMBOL53       = NULL;
    schema_ref48.tree = NULL;

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


    DATABASE_SYMBOL47_tree   = NULL;
    UPGRADE_SYMBOL50_tree   = NULL;
    DATA_SYMBOL51_tree   = NULL;
    DIRECTORY_SYMBOL52_tree   = NULL;
    NAME_SYMBOL53_tree   = NULL;


    retval.tree  = NULL;

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


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

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

            FOLLOWPUSH(FOLLOW_schema_ref_in_alter_database737);
            schema_ref48=schema_ref(ctx);

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

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

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

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

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


                    goto rulealter_databaseEx;

                }

                switch (alt9)
                {
            	case 1:
            	    // MySQL.g:590:4: ( database_option )+
            	    {
            	        // MySQL.g:590:4: ( database_option )+
            	        {
            	            int cnt8=0;

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

            	        	}

            	        	switch (alt8)
            	        	{
            	        	    case 1:
            	        	        // MySQL.g:590:4: database_option
            	        	        {
            	        	            FOLLOWPUSH(FOLLOW_database_option_in_alter_database745);
            	        	            database_option49=database_option(ctx);

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

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

            	        	        }
            	        	        break;

            	        	    default:

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

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:591:5: UPGRADE_SYMBOL DATA_SYMBOL DIRECTORY_SYMBOL NAME_SYMBOL
            	    {
            	        UPGRADE_SYMBOL50 = (pANTLR3_COMMON_TOKEN) MATCHT(UPGRADE_SYMBOL, &FOLLOW_UPGRADE_SYMBOL_in_alter_database752);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_databaseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

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

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

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

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

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

            	        if ( BACKTRACKING==0 ) {
            	        NAME_SYMBOL53_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NAME_SYMBOL53));
            	        ADAPTOR->addChild(ADAPTOR, root_0, NAME_SYMBOL53_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:595: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_SYMBOL55;
    pANTLR3_COMMON_TOKEN    ON_SYMBOL57;
    pANTLR3_COMMON_TOKEN    SCHEDULE_SYMBOL58;
    pANTLR3_COMMON_TOKEN    ON_SYMBOL60;
    pANTLR3_COMMON_TOKEN    COMPLETION_SYMBOL61;
    pANTLR3_COMMON_TOKEN    NOT_SYMBOL62;
    pANTLR3_COMMON_TOKEN    PRESERVE_SYMBOL63;
    pANTLR3_COMMON_TOKEN    RENAME_SYMBOL64;
    pANTLR3_COMMON_TOKEN    TO_SYMBOL65;
    pANTLR3_COMMON_TOKEN    ENABLE_SYMBOL67;
    pANTLR3_COMMON_TOKEN    DISABLE_SYMBOL68;
    pANTLR3_COMMON_TOKEN    ON_SYMBOL69;
    pANTLR3_COMMON_TOKEN    SLAVE_SYMBOL70;
    pANTLR3_COMMON_TOKEN    COMMENT_SYMBOL71;
    pANTLR3_COMMON_TOKEN    DO_SYMBOL73;
    MySQLParser_definer_clause_return definer_clause54;
    #undef	RETURN_TYPE_definer_clause54
    #define	RETURN_TYPE_definer_clause54 MySQLParser_definer_clause_return

    MySQLParser_event_ref_return event_ref56;
    #undef	RETURN_TYPE_event_ref56
    #define	RETURN_TYPE_event_ref56 MySQLParser_event_ref_return

    MySQLParser_schedule_return schedule59;
    #undef	RETURN_TYPE_schedule59
    #define	RETURN_TYPE_schedule59 MySQLParser_schedule_return

    MySQLParser_identifier_return identifier66;
    #undef	RETURN_TYPE_identifier66
    #define	RETURN_TYPE_identifier66 MySQLParser_identifier_return

    MySQLParser_string_literal_return string_literal72;
    #undef	RETURN_TYPE_string_literal72
    #define	RETURN_TYPE_string_literal72 MySQLParser_string_literal_return

    MySQLParser_compound_statement_return compound_statement74;
    #undef	RETURN_TYPE_compound_statement74
    #define	RETURN_TYPE_compound_statement74 MySQLParser_compound_statement_return

    pANTLR3_BASE_TREE EVENT_SYMBOL55_tree;
    pANTLR3_BASE_TREE ON_SYMBOL57_tree;
    pANTLR3_BASE_TREE SCHEDULE_SYMBOL58_tree;
    pANTLR3_BASE_TREE ON_SYMBOL60_tree;
    pANTLR3_BASE_TREE COMPLETION_SYMBOL61_tree;
    pANTLR3_BASE_TREE NOT_SYMBOL62_tree;
    pANTLR3_BASE_TREE PRESERVE_SYMBOL63_tree;
    pANTLR3_BASE_TREE RENAME_SYMBOL64_tree;
    pANTLR3_BASE_TREE TO_SYMBOL65_tree;
    pANTLR3_BASE_TREE ENABLE_SYMBOL67_tree;
    pANTLR3_BASE_TREE DISABLE_SYMBOL68_tree;
    pANTLR3_BASE_TREE ON_SYMBOL69_tree;
    pANTLR3_BASE_TREE SLAVE_SYMBOL70_tree;
    pANTLR3_BASE_TREE COMMENT_SYMBOL71_tree;
    pANTLR3_BASE_TREE DO_SYMBOL73_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    EVENT_SYMBOL55       = NULL;
    ON_SYMBOL57       = NULL;
    SCHEDULE_SYMBOL58       = NULL;
    ON_SYMBOL60       = NULL;
    COMPLETION_SYMBOL61       = NULL;
    NOT_SYMBOL62       = NULL;
    PRESERVE_SYMBOL63       = NULL;
    RENAME_SYMBOL64       = NULL;
    TO_SYMBOL65       = NULL;
    ENABLE_SYMBOL67       = NULL;
    DISABLE_SYMBOL68       = NULL;
    ON_SYMBOL69       = NULL;
    SLAVE_SYMBOL70       = NULL;
    COMMENT_SYMBOL71       = NULL;
    DO_SYMBOL73       = NULL;
    definer_clause54.tree = NULL;

    event_ref56.tree = NULL;

    schedule59.tree = NULL;

    identifier66.tree = NULL;

    string_literal72.tree = NULL;

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


    EVENT_SYMBOL55_tree   = NULL;
    ON_SYMBOL57_tree   = NULL;
    SCHEDULE_SYMBOL58_tree   = NULL;
    ON_SYMBOL60_tree   = NULL;
    COMPLETION_SYMBOL61_tree   = NULL;
    NOT_SYMBOL62_tree   = NULL;
    PRESERVE_SYMBOL63_tree   = NULL;
    RENAME_SYMBOL64_tree   = NULL;
    TO_SYMBOL65_tree   = NULL;
    ENABLE_SYMBOL67_tree   = NULL;
    DISABLE_SYMBOL68_tree   = NULL;
    ON_SYMBOL69_tree   = NULL;
    SLAVE_SYMBOL70_tree   = NULL;
    COMMENT_SYMBOL71_tree   = NULL;
    DO_SYMBOL73_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:595: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:596: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:596:2: ( definer_clause )?
            {
                int alt10=2;
                switch ( LA(1) )
                {
                    case DEFINER_SYMBOL:
                    	{
                    		alt10=1;
                    	}
                        break;
                }

                switch (alt10)
                {
            	case 1:
            	    // MySQL.g:596:2: definer_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_definer_clause_in_alter_event770);
            	        definer_clause54=definer_clause(ctx);

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

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

            	    }
            	    break;

                }
            }

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

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

            FOLLOWPUSH(FOLLOW_event_ref_in_alter_event777);
            event_ref56=event_ref(ctx);

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

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

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

                    	}
                        break;
                }

                switch (alt11)
                {
            	case 1:
            	    // MySQL.g:598:4: ON_SYMBOL SCHEDULE_SYMBOL schedule
            	    {
            	        ON_SYMBOL57 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_alter_event782);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_eventEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

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

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

            	        FOLLOWPUSH(FOLLOW_schedule_in_alter_event786);
            	        schedule59=schedule(ctx);

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

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

            	    }
            	    break;

                }
            }

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

                switch (alt13)
                {
            	case 1:
            	    // MySQL.g:599:4: ON_SYMBOL COMPLETION_SYMBOL ( NOT_SYMBOL )? PRESERVE_SYMBOL
            	    {
            	        ON_SYMBOL60 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_alter_event793);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_eventEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

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

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

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

            	            switch (alt12)
            	            {
            	        	case 1:
            	        	    // MySQL.g:599:32: NOT_SYMBOL
            	        	    {
            	        	        NOT_SYMBOL62 = (pANTLR3_COMMON_TOKEN) MATCHT(NOT_SYMBOL, &FOLLOW_NOT_SYMBOL_in_alter_event797);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulealter_eventEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

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

            	        	    }
            	        	    break;

            	            }
            	        }

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

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

            	    }
            	    break;

                }
            }

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

                switch (alt14)
                {
            	case 1:
            	    // MySQL.g:600:4: RENAME_SYMBOL TO_SYMBOL identifier
            	    {
            	        RENAME_SYMBOL64 = (pANTLR3_COMMON_TOKEN) MATCHT(RENAME_SYMBOL, &FOLLOW_RENAME_SYMBOL_in_alter_event807);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_eventEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

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

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

            	        FOLLOWPUSH(FOLLOW_identifier_in_alter_event811);
            	        identifier66=identifier(ctx);

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

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

            	    }
            	    break;

                }
            }

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

                switch (alt16)
                {
            	case 1:
            	    // MySQL.g:601:4: ENABLE_SYMBOL
            	    {
            	        ENABLE_SYMBOL67 = (pANTLR3_COMMON_TOKEN) MATCHT(ENABLE_SYMBOL, &FOLLOW_ENABLE_SYMBOL_in_alter_event818);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_eventEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

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

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

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

            	            switch (alt15)
            	            {
            	        	case 1:
            	        	    // MySQL.g:601:36: ON_SYMBOL SLAVE_SYMBOL
            	        	    {
            	        	        ON_SYMBOL69 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_alter_event825);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulealter_eventEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

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

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

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

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

                }
            }

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

                switch (alt17)
                {
            	case 1:
            	    // MySQL.g:602:4: COMMENT_SYMBOL string_literal
            	    {
            	        COMMENT_SYMBOL71 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMENT_SYMBOL, &FOLLOW_COMMENT_SYMBOL_in_alter_event836);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_eventEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	        FOLLOWPUSH(FOLLOW_string_literal_in_alter_event838);
            	        string_literal72=string_literal(ctx);

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

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

            	    }
            	    break;

                }
            }

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

                switch (alt18)
                {
            	case 1:
            	    // MySQL.g:603:4: DO_SYMBOL compound_statement
            	    {
            	        DO_SYMBOL73 = (pANTLR3_COMMON_TOKEN) MATCHT(DO_SYMBOL, &FOLLOW_DO_SYMBOL_in_alter_event845);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_eventEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	        FOLLOWPUSH(FOLLOW_compound_statement_in_alter_event847);
            	        compound_statement74=compound_statement(ctx);

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

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, compound_statement74.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:606: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 )? engine_ref ;
 */
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_SYMBOL75;
    pANTLR3_COMMON_TOKEN    GROUP_SYMBOL76;
    pANTLR3_COMMON_TOKEN    ADD_SYMBOL78;
    pANTLR3_COMMON_TOKEN    UNDOFILE_SYMBOL79;
    pANTLR3_COMMON_TOKEN    INITIAL_SIZE_SYMBOL81;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR82;
    pANTLR3_COMMON_TOKEN    WAIT_SYMBOL84;
    pANTLR3_COMMON_TOKEN    ENGINE_SYMBOL85;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR86;
    MySQLParser_logfile_group_ref_return logfile_group_ref77;
    #undef	RETURN_TYPE_logfile_group_ref77
    #define	RETURN_TYPE_logfile_group_ref77 MySQLParser_logfile_group_ref_return

    MySQLParser_string_literal_return string_literal80;
    #undef	RETURN_TYPE_string_literal80
    #define	RETURN_TYPE_string_literal80 MySQLParser_string_literal_return

    MySQLParser_size_number_return size_number83;
    #undef	RETURN_TYPE_size_number83
    #define	RETURN_TYPE_size_number83 MySQLParser_size_number_return

    MySQLParser_engine_ref_return engine_ref87;
    #undef	RETURN_TYPE_engine_ref87
    #define	RETURN_TYPE_engine_ref87 MySQLParser_engine_ref_return

    pANTLR3_BASE_TREE LOGFILE_SYMBOL75_tree;
    pANTLR3_BASE_TREE GROUP_SYMBOL76_tree;
    pANTLR3_BASE_TREE ADD_SYMBOL78_tree;
    pANTLR3_BASE_TREE UNDOFILE_SYMBOL79_tree;
    pANTLR3_BASE_TREE INITIAL_SIZE_SYMBOL81_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR82_tree;
    pANTLR3_BASE_TREE WAIT_SYMBOL84_tree;
    pANTLR3_BASE_TREE ENGINE_SYMBOL85_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR86_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    LOGFILE_SYMBOL75       = NULL;
    GROUP_SYMBOL76       = NULL;
    ADD_SYMBOL78       = NULL;
    UNDOFILE_SYMBOL79       = NULL;
    INITIAL_SIZE_SYMBOL81       = NULL;
    EQUAL_OPERATOR82       = NULL;
    WAIT_SYMBOL84       = NULL;
    ENGINE_SYMBOL85       = NULL;
    EQUAL_OPERATOR86       = NULL;
    logfile_group_ref77.tree = NULL;

    string_literal80.tree = NULL;

    size_number83.tree = NULL;

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


    LOGFILE_SYMBOL75_tree   = NULL;
    GROUP_SYMBOL76_tree   = NULL;
    ADD_SYMBOL78_tree   = NULL;
    UNDOFILE_SYMBOL79_tree   = NULL;
    INITIAL_SIZE_SYMBOL81_tree   = NULL;
    EQUAL_OPERATOR82_tree   = NULL;
    WAIT_SYMBOL84_tree   = NULL;
    ENGINE_SYMBOL85_tree   = NULL;
    EQUAL_OPERATOR86_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:606: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 )? engine_ref )
        // MySQL.g:607: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 )? engine_ref
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


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

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

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

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

            FOLLOWPUSH(FOLLOW_logfile_group_ref_in_alter_log_file_group862);
            logfile_group_ref77=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_ref77.tree);

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

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

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

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

            FOLLOWPUSH(FOLLOW_string_literal_in_alter_log_file_group868);
            string_literal80=string_literal(ctx);

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

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

            // MySQL.g:608:3: ( INITIAL_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number )?
            {
                int alt20=2;
                switch ( LA(1) )
                {
                    case INITIAL_SIZE_SYMBOL:
                    	{
                    		alt20=1;
                    	}
                        break;
                }

                switch (alt20)
                {
            	case 1:
            	    // MySQL.g:608:4: INITIAL_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number
            	    {
            	        INITIAL_SIZE_SYMBOL81 = (pANTLR3_COMMON_TOKEN) MATCHT(INITIAL_SIZE_SYMBOL, &FOLLOW_INITIAL_SIZE_SYMBOL_in_alter_log_file_group873);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_log_file_groupEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

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

            	            switch (alt19)
            	            {
            	        	case 1:
            	        	    // MySQL.g:608:24: EQUAL_OPERATOR
            	        	    {
            	        	        EQUAL_OPERATOR82 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_alter_log_file_group875);
            	        	        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;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_size_number_in_alter_log_file_group878);
            	        size_number83=size_number(ctx);

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

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

            	    }
            	    break;

                }
            }

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

                switch (alt21)
                {
            	case 1:
            	    // MySQL.g:608:54: WAIT_SYMBOL
            	    {
            	        WAIT_SYMBOL84 = (pANTLR3_COMMON_TOKEN) MATCHT(WAIT_SYMBOL, &FOLLOW_WAIT_SYMBOL_in_alter_log_file_group882);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_log_file_groupEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	    }
            	    break;

                }
            }

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

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

            // MySQL.g:608:81: ( EQUAL_OPERATOR )?
            {
                int alt22=2;
                switch ( LA(1) )
                {
                    case EQUAL_OPERATOR:
                    	{
                    		alt22=1;
                    	}
                        break;
                }

                switch (alt22)
                {
            	case 1:
            	    // MySQL.g:608:81: EQUAL_OPERATOR
            	    {
            	        EQUAL_OPERATOR86 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_alter_log_file_group887);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_log_file_groupEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_engine_ref_in_alter_log_file_group890);
            engine_ref87=engine_ref(ctx);

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

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, engine_ref87.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:611: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_SYMBOL88;
    MySQLParser_server_ref_return server_ref89;
    #undef	RETURN_TYPE_server_ref89
    #define	RETURN_TYPE_server_ref89 MySQLParser_server_ref_return

    MySQLParser_server_options_return server_options90;
    #undef	RETURN_TYPE_server_options90
    #define	RETURN_TYPE_server_options90 MySQLParser_server_options_return

    pANTLR3_BASE_TREE SERVER_SYMBOL88_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SERVER_SYMBOL88       = NULL;
    server_ref89.tree = NULL;

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


    SERVER_SYMBOL88_tree   = NULL;


    retval.tree  = NULL;

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


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

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

            FOLLOWPUSH(FOLLOW_server_ref_in_alter_server903);
            server_ref89=server_ref(ctx);

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

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

            FOLLOWPUSH(FOLLOW_server_options_in_alter_server905);
            server_options90=server_options(ctx);

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

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, server_options90.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:615: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_SYMBOL92;
    pANTLR3_COMMON_TOKEN    TABLE_SYMBOL93;
    MySQLParser_online_option_return online_option91;
    #undef	RETURN_TYPE_online_option91
    #define	RETURN_TYPE_online_option91 MySQLParser_online_option_return

    MySQLParser_table_ref_return table_ref94;
    #undef	RETURN_TYPE_table_ref94
    #define	RETURN_TYPE_table_ref94 MySQLParser_table_ref_return

    MySQLParser_alter_table_commands_return alter_table_commands95;
    #undef	RETURN_TYPE_alter_table_commands95
    #define	RETURN_TYPE_alter_table_commands95 MySQLParser_alter_table_commands_return

    pANTLR3_BASE_TREE IGNORE_SYMBOL92_tree;
    pANTLR3_BASE_TREE TABLE_SYMBOL93_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    IGNORE_SYMBOL92       = NULL;
    TABLE_SYMBOL93       = NULL;
    online_option91.tree = NULL;

    table_ref94.tree = NULL;

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


    IGNORE_SYMBOL92_tree   = NULL;
    TABLE_SYMBOL93_tree   = NULL;


    retval.tree  = NULL;

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


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

                switch (alt23)
                {
            	case 1:
            	    // MySQL.g:616:2: online_option
            	    {
            	        FOLLOWPUSH(FOLLOW_online_option_in_alter_table914);
            	        online_option91=online_option(ctx);

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

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

            	    }
            	    break;

                }
            }

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

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

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

            	    }
            	    break;

                }
            }

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

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

            FOLLOWPUSH(FOLLOW_table_ref_in_alter_table922);
            table_ref94=table_ref(ctx);

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

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

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

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

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, alter_table_commands95.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:619: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_SYMBOL96;
    pANTLR3_COMMON_TOKEN    TABLESPACE_SYMBOL97;
    pANTLR3_COMMON_TOKEN    IMPORT_SYMBOL98;
    pANTLR3_COMMON_TOKEN    TABLESPACE_SYMBOL99;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL101;
    MySQLParser_alter_table_list_item_return alter_table_list_item100;
    #undef	RETURN_TYPE_alter_table_list_item100
    #define	RETURN_TYPE_alter_table_list_item100 MySQLParser_alter_table_list_item_return

    MySQLParser_alter_table_list_item_return alter_table_list_item102;
    #undef	RETURN_TYPE_alter_table_list_item102
    #define	RETURN_TYPE_alter_table_list_item102 MySQLParser_alter_table_list_item_return

    MySQLParser_partitioning_return partitioning103;
    #undef	RETURN_TYPE_partitioning103
    #define	RETURN_TYPE_partitioning103 MySQLParser_partitioning_return

    MySQLParser_remove_partitioning_return remove_partitioning104;
    #undef	RETURN_TYPE_remove_partitioning104
    #define	RETURN_TYPE_remove_partitioning104 MySQLParser_remove_partitioning_return

    MySQLParser_remove_partitioning_return remove_partitioning105;
    #undef	RETURN_TYPE_remove_partitioning105
    #define	RETURN_TYPE_remove_partitioning105 MySQLParser_remove_partitioning_return

    MySQLParser_partitioning_return partitioning106;
    #undef	RETURN_TYPE_partitioning106
    #define	RETURN_TYPE_partitioning106 MySQLParser_partitioning_return

    MySQLParser_alter_partition_return alter_partition107;
    #undef	RETURN_TYPE_alter_partition107
    #define	RETURN_TYPE_alter_partition107 MySQLParser_alter_partition_return

    pANTLR3_BASE_TREE DISCARD_SYMBOL96_tree;
    pANTLR3_BASE_TREE TABLESPACE_SYMBOL97_tree;
    pANTLR3_BASE_TREE IMPORT_SYMBOL98_tree;
    pANTLR3_BASE_TREE TABLESPACE_SYMBOL99_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL101_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DISCARD_SYMBOL96       = NULL;
    TABLESPACE_SYMBOL97       = NULL;
    IMPORT_SYMBOL98       = NULL;
    TABLESPACE_SYMBOL99       = NULL;
    COMMA_SYMBOL101       = NULL;
    alter_table_list_item100.tree = NULL;

    alter_table_list_item102.tree = NULL;

    partitioning103.tree = NULL;

    remove_partitioning104.tree = NULL;

    remove_partitioning105.tree = NULL;

    partitioning106.tree = NULL;

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


    DISCARD_SYMBOL96_tree   = NULL;
    TABLESPACE_SYMBOL97_tree   = NULL;
    IMPORT_SYMBOL98_tree   = NULL;
    TABLESPACE_SYMBOL99_tree   = NULL;
    COMMA_SYMBOL101_tree   = NULL;


    retval.tree  = NULL;

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

            ANTLR3_UINT32 alt29;

            alt29=6;

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

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

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


                        goto rulealter_table_commandsEx;

                    }

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

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

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


                        goto rulealter_table_commandsEx;

                    }

                }
                else if ( (((LA29_0 >= CHARSET_SYMBOL) && (LA29_0 <= CHECKSUM_SYMBOL)) || LA29_0 == COMMENT_SYMBOL || LA29_0 == UPGRADE_SYMBOL || LA29_0 == ALGORITHM_SYMBOL || LA29_0 == AUTO_INCREMENT_SYMBOL || LA29_0 == AVG_ROW_LENGTH_SYMBOL || LA29_0 == COMPRESSION_SYMBOL || LA29_0 == CONNECTION_SYMBOL || LA29_0 == DATA_SYMBOL || LA29_0 == DELAY_KEY_WRITE_SYMBOL || LA29_0 == DISABLE_SYMBOL || LA29_0 == ENGINE_SYMBOL || LA29_0 == ENABLE_SYMBOL || LA29_0 == INSERT_METHOD_SYMBOL || LA29_0 == KEY_BLOCK_SIZE_SYMBOL || LA29_0 == MAX_ROWS_SYMBOL || ((LA29_0 >= MIN_ROWS_SYMBOL) && (LA29_0 <= MODIFY_SYMBOL)) || LA29_0 == PACK_KEYS_SYMBOL || LA29_0 == PASSWORD_SYMBOL || LA29_0 == ROW_FORMAT_SYMBOL || ((LA29_0 >= STATS_AUTO_RECALC_SYMBOL) && (LA29_0 <= STATS_SAMPLE_PAGES_SYMBOL)) || LA29_0 == STORAGE_SYMBOL || ((LA29_0 >= TABLE_CHECKSUM_SYMBOL) && (LA29_0 <= TABLESPACE_SYMBOL)) || LA29_0 == TYPE_SYMBOL || LA29_0 == ALTER_SYMBOL || LA29_0 == CHANGE_SYMBOL || LA29_0 == CHAR_SYMBOL || LA29_0 == COLLATE_SYMBOL || LA29_0 == CONVERT_SYMBOL || LA29_0 == DEFAULT_SYMBOL || LA29_0 == FORCE_SYMBOL || LA29_0 == INDEX_SYMBOL || LA29_0 == LOCK_SYMBOL || LA29_0 == ORDER_SYMBOL || LA29_0 == RENAME_SYMBOL || LA29_0 == UNION_SYMBOL))
                {
                    alt29=3;
                }
                else if ( (LA29_0 == ADD_SYMBOL))
                {
                    {
                        int LA29_29 = LA(2);
                        if ( (LA29_29 == PARTITION_SYMBOL))
                        {
                            {
                                int LA29_58 = LA(3);
                                if ( (!( (( (( ((SERVER_VERSION >= 50100)) && ((SERVER_VERSION >= 50100)) )) && ((LA(1) == ADD_SYMBOL && LA(2) == PARTITION_SYMBOL)) )) )))
                                {
                                    alt29=3;
                                }
                                else if ( (( (( ((SERVER_VERSION >= 50100)) && ((SERVER_VERSION >= 50100)) )) && ((LA(1) == ADD_SYMBOL && LA(2) == PARTITION_SYMBOL)) )))
                                {
                                    alt29=6;
                                }
                                else
                                {
                                    if (BACKTRACKING>0)
                                    {
                                        FAILEDFLAG = ANTLR3_TRUE;
                                        return retval;
                                    }


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


                                    goto rulealter_table_commandsEx;

                                }
                            }
                        }
                        else if ( (((LA29_29 >= ACCOUNT_SYMBOL) && (LA29_29 <= PARSER_SYMBOL)) || ((LA29_29 >= PORT_SYMBOL) && (LA29_29 <= YEAR_SYMBOL)) || LA29_29 == CHECK_SYMBOL || LA29_29 == COLUMN_SYMBOL || LA29_29 == CONSTRAINT_SYMBOL || LA29_29 == FOREIGN_SYMBOL || LA29_29 == FULLTEXT_SYMBOL || LA29_29 == INDEX_SYMBOL || LA29_29 == KEY_SYMBOL || LA29_29 == OPEN_PAR_SYMBOL || LA29_29 == PRIMARY_SYMBOL || LA29_29 == SPATIAL_SYMBOL || LA29_29 == UNIQUE_SYMBOL || LA29_29 == BACK_TICK_QUOTED_ID || LA29_29 == DOUBLE_QUOTED_TEXT || LA29_29 == IDENTIFIER))
                        {
                            alt29=3;
                        }
                        else
                        {
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }


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


                            goto rulealter_table_commandsEx;

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


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


                                    goto rulealter_table_commandsEx;

                                }
                            }
                        }
                        else if ( (((LA29_33 >= ACCOUNT_SYMBOL) && (LA29_33 <= PARSER_SYMBOL)) || ((LA29_33 >= PORT_SYMBOL) && (LA29_33 <= YEAR_SYMBOL)) || LA29_33 == COLUMN_SYMBOL || LA29_33 == FOREIGN_SYMBOL || LA29_33 == INDEX_SYMBOL || LA29_33 == KEY_SYMBOL || LA29_33 == PRIMARY_SYMBOL || LA29_33 == BACK_TICK_QUOTED_ID || LA29_33 == DOT_SYMBOL || LA29_33 == DOUBLE_QUOTED_TEXT || LA29_33 == IDENTIFIER))
                        {
                            alt29=3;
                        }
                        else
                        {
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }


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


                            goto rulealter_table_commandsEx;

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


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


                    goto rulealter_table_commandsEx;

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


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

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

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

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

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


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

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

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

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

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:622: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_commands948);
        	        alter_table_list_item100=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_item100.tree);

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

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

        	            }

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

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

        	        	        FOLLOWPUSH(FOLLOW_alter_table_list_item_in_alter_table_commands953);
        	        	        alter_table_list_item102=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_item102.tree);

        	        	    }
        	        	    break;

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


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


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


        	                    goto rulealter_table_commandsEx;

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

        	        	            switch (alt27)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:622:65: partitioning
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_partitioning_in_alter_table_commands958);
        	        	        	        partitioning103=partitioning(ctx);

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

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

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:622:81: remove_partitioning
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_remove_partitioning_in_alter_table_commands963);
        	        	        remove_partitioning104=remove_partitioning(ctx);

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

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

        	        	    }
        	        	    break;

        	            }
        	        }

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


        	        FOLLOWPUSH(FOLLOW_remove_partitioning_in_alter_table_commands969);
        	        remove_partitioning105=remove_partitioning(ctx);

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

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

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


        	        FOLLOWPUSH(FOLLOW_partitioning_in_alter_table_commands974);
        	        partitioning106=partitioning(ctx);

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

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

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:625: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_commands981);
        	        alter_partition107=alter_partition(ctx);

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

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, alter_partition107.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:628: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_entry108;
    #undef	RETURN_TYPE_alter_table_list_entry108
    #define	RETURN_TYPE_alter_table_list_entry108 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_entry108.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:628:22: ( alter_table_list_entry -> ^( ALTER_TABLE_ITEM_TOKEN alter_table_list_entry ) )
        // MySQL.g:629:2: alter_table_list_entry
        {
            FOLLOWPUSH(FOLLOW_alter_table_list_entry_in_alter_table_list_item990);
            alter_table_list_entry108=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_entry108.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;
            	// 629:25: -> ^( ALTER_TABLE_ITEM_TOKEN alter_table_list_entry )
            	{
            	    // MySQL.g:629: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:632: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_SYMBOL110;
    pANTLR3_COMMON_TOKEN    COLUMN_SYMBOL111;
    pANTLR3_COMMON_TOKEN    FIRST_SYMBOL113;
    pANTLR3_COMMON_TOKEN    AFTER_SYMBOL114;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL116;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL118;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL120;
    pANTLR3_COMMON_TOKEN    ADD_SYMBOL121;
    pANTLR3_COMMON_TOKEN    ALTER_SYMBOL123;
    pANTLR3_COMMON_TOKEN    COLUMN_SYMBOL124;
    pANTLR3_COMMON_TOKEN    SET_SYMBOL126;
    pANTLR3_COMMON_TOKEN    DEFAULT_SYMBOL127;
    pANTLR3_COMMON_TOKEN    DROP_SYMBOL129;
    pANTLR3_COMMON_TOKEN    DEFAULT_SYMBOL130;
    pANTLR3_COMMON_TOKEN    CHANGE_SYMBOL131;
    pANTLR3_COMMON_TOKEN    COLUMN_SYMBOL132;
    pANTLR3_COMMON_TOKEN    FIRST_SYMBOL135;
    pANTLR3_COMMON_TOKEN    AFTER_SYMBOL136;
    pANTLR3_COMMON_TOKEN    MODIFY_SYMBOL138;
    pANTLR3_COMMON_TOKEN    COLUMN_SYMBOL139;
    pANTLR3_COMMON_TOKEN    FIRST_SYMBOL143;
    pANTLR3_COMMON_TOKEN    AFTER_SYMBOL144;
    pANTLR3_COMMON_TOKEN    DROP_SYMBOL146;
    pANTLR3_COMMON_TOKEN    set147;
    pANTLR3_COMMON_TOKEN    COLUMN_SYMBOL149;
    pANTLR3_COMMON_TOKEN    PRIMARY_SYMBOL151;
    pANTLR3_COMMON_TOKEN    KEY_SYMBOL152;
    pANTLR3_COMMON_TOKEN    FOREIGN_SYMBOL153;
    pANTLR3_COMMON_TOKEN    KEY_SYMBOL154;
    pANTLR3_COMMON_TOKEN    DISABLE_SYMBOL157;
    pANTLR3_COMMON_TOKEN    KEYS_SYMBOL158;
    pANTLR3_COMMON_TOKEN    ENABLE_SYMBOL159;
    pANTLR3_COMMON_TOKEN    KEYS_SYMBOL160;
    pANTLR3_COMMON_TOKEN    RENAME_SYMBOL161;
    pANTLR3_COMMON_TOKEN    set162;
    pANTLR3_COMMON_TOKEN    RENAME_SYMBOL164;
    pANTLR3_COMMON_TOKEN    set165;
    pANTLR3_COMMON_TOKEN    TO_SYMBOL167;
    pANTLR3_COMMON_TOKEN    CONVERT_SYMBOL170;
    pANTLR3_COMMON_TOKEN    TO_SYMBOL171;
    pANTLR3_COMMON_TOKEN    COLLATE_SYMBOL174;
    pANTLR3_COMMON_TOKEN    FORCE_SYMBOL176;
    pANTLR3_COMMON_TOKEN    UPGRADE_SYMBOL179;
    pANTLR3_COMMON_TOKEN    PARTITIONING_SYMBOL180;
    MySQLParser_alter_table_options_return alter_table_options109;
    #undef	RETURN_TYPE_alter_table_options109
    #define	RETURN_TYPE_alter_table_options109 MySQLParser_alter_table_options_return

    MySQLParser_column_definition_return column_definition112;
    #undef	RETURN_TYPE_column_definition112
    #define	RETURN_TYPE_column_definition112 MySQLParser_column_definition_return

    MySQLParser_identifier_return identifier115;
    #undef	RETURN_TYPE_identifier115
    #define	RETURN_TYPE_identifier115 MySQLParser_identifier_return

    MySQLParser_column_definition_return column_definition117;
    #undef	RETURN_TYPE_column_definition117
    #define	RETURN_TYPE_column_definition117 MySQLParser_column_definition_return

    MySQLParser_column_definition_return column_definition119;
    #undef	RETURN_TYPE_column_definition119
    #define	RETURN_TYPE_column_definition119 MySQLParser_column_definition_return

    MySQLParser_key_def_return key_def122;
    #undef	RETURN_TYPE_key_def122
    #define	RETURN_TYPE_key_def122 MySQLParser_key_def_return

    MySQLParser_column_internal_ref_return column_internal_ref125;
    #undef	RETURN_TYPE_column_internal_ref125
    #define	RETURN_TYPE_column_internal_ref125 MySQLParser_column_internal_ref_return

    MySQLParser_signed_literal_return signed_literal128;
    #undef	RETURN_TYPE_signed_literal128
    #define	RETURN_TYPE_signed_literal128 MySQLParser_signed_literal_return

    MySQLParser_column_internal_ref_return column_internal_ref133;
    #undef	RETURN_TYPE_column_internal_ref133
    #define	RETURN_TYPE_column_internal_ref133 MySQLParser_column_internal_ref_return

    MySQLParser_field_spec_return field_spec134;
    #undef	RETURN_TYPE_field_spec134
    #define	RETURN_TYPE_field_spec134 MySQLParser_field_spec_return

    MySQLParser_identifier_return identifier137;
    #undef	RETURN_TYPE_identifier137
    #define	RETURN_TYPE_identifier137 MySQLParser_identifier_return

    MySQLParser_column_internal_ref_return column_internal_ref140;
    #undef	RETURN_TYPE_column_internal_ref140
    #define	RETURN_TYPE_column_internal_ref140 MySQLParser_column_internal_ref_return

    MySQLParser_data_type_return data_type141;
    #undef	RETURN_TYPE_data_type141
    #define	RETURN_TYPE_data_type141 MySQLParser_data_type_return

    MySQLParser_attribute_return attribute142;
    #undef	RETURN_TYPE_attribute142
    #define	RETURN_TYPE_attribute142 MySQLParser_attribute_return

    MySQLParser_identifier_return identifier145;
    #undef	RETURN_TYPE_identifier145
    #define	RETURN_TYPE_identifier145 MySQLParser_identifier_return

    MySQLParser_column_ref_return column_ref148;
    #undef	RETURN_TYPE_column_ref148
    #define	RETURN_TYPE_column_ref148 MySQLParser_column_ref_return

    MySQLParser_column_internal_ref_return column_internal_ref150;
    #undef	RETURN_TYPE_column_internal_ref150
    #define	RETURN_TYPE_column_internal_ref150 MySQLParser_column_internal_ref_return

    MySQLParser_column_ref_return column_ref155;
    #undef	RETURN_TYPE_column_ref155
    #define	RETURN_TYPE_column_ref155 MySQLParser_column_ref_return

    MySQLParser_column_ref_return column_ref156;
    #undef	RETURN_TYPE_column_ref156
    #define	RETURN_TYPE_column_ref156 MySQLParser_column_ref_return

    MySQLParser_table_ref_return table_ref163;
    #undef	RETURN_TYPE_table_ref163
    #define	RETURN_TYPE_table_ref163 MySQLParser_table_ref_return

    MySQLParser_column_ref_return column_ref166;
    #undef	RETURN_TYPE_column_ref166
    #define	RETURN_TYPE_column_ref166 MySQLParser_column_ref_return

    MySQLParser_column_ref_return column_ref168;
    #undef	RETURN_TYPE_column_ref168
    #define	RETURN_TYPE_column_ref168 MySQLParser_column_ref_return

    MySQLParser_alter_order_by_return alter_order_by169;
    #undef	RETURN_TYPE_alter_order_by169
    #define	RETURN_TYPE_alter_order_by169 MySQLParser_alter_order_by_return

    MySQLParser_charset_return charset172;
    #undef	RETURN_TYPE_charset172
    #define	RETURN_TYPE_charset172 MySQLParser_charset_return

    MySQLParser_charset_name_or_default_return charset_name_or_default173;
    #undef	RETURN_TYPE_charset_name_or_default173
    #define	RETURN_TYPE_charset_name_or_default173 MySQLParser_charset_name_or_default_return

    MySQLParser_collation_name_or_default_return collation_name_or_default175;
    #undef	RETURN_TYPE_collation_name_or_default175
    #define	RETURN_TYPE_collation_name_or_default175 MySQLParser_collation_name_or_default_return

    MySQLParser_alter_algorithm_option_return alter_algorithm_option177;
    #undef	RETURN_TYPE_alter_algorithm_option177
    #define	RETURN_TYPE_alter_algorithm_option177 MySQLParser_alter_algorithm_option_return

    MySQLParser_alter_lock_option_return alter_lock_option178;
    #undef	RETURN_TYPE_alter_lock_option178
    #define	RETURN_TYPE_alter_lock_option178 MySQLParser_alter_lock_option_return

    pANTLR3_BASE_TREE ADD_SYMBOL110_tree;
    pANTLR3_BASE_TREE COLUMN_SYMBOL111_tree;
    pANTLR3_BASE_TREE FIRST_SYMBOL113_tree;
    pANTLR3_BASE_TREE AFTER_SYMBOL114_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL116_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL118_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL120_tree;
    pANTLR3_BASE_TREE ADD_SYMBOL121_tree;
    pANTLR3_BASE_TREE ALTER_SYMBOL123_tree;
    pANTLR3_BASE_TREE COLUMN_SYMBOL124_tree;
    pANTLR3_BASE_TREE SET_SYMBOL126_tree;
    pANTLR3_BASE_TREE DEFAULT_SYMBOL127_tree;
    pANTLR3_BASE_TREE DROP_SYMBOL129_tree;
    pANTLR3_BASE_TREE DEFAULT_SYMBOL130_tree;
    pANTLR3_BASE_TREE CHANGE_SYMBOL131_tree;
    pANTLR3_BASE_TREE COLUMN_SYMBOL132_tree;
    pANTLR3_BASE_TREE FIRST_SYMBOL135_tree;
    pANTLR3_BASE_TREE AFTER_SYMBOL136_tree;
    pANTLR3_BASE_TREE MODIFY_SYMBOL138_tree;
    pANTLR3_BASE_TREE COLUMN_SYMBOL139_tree;
    pANTLR3_BASE_TREE FIRST_SYMBOL143_tree;
    pANTLR3_BASE_TREE AFTER_SYMBOL144_tree;
    pANTLR3_BASE_TREE DROP_SYMBOL146_tree;
    pANTLR3_BASE_TREE set147_tree;
    pANTLR3_BASE_TREE COLUMN_SYMBOL149_tree;
    pANTLR3_BASE_TREE PRIMARY_SYMBOL151_tree;
    pANTLR3_BASE_TREE KEY_SYMBOL152_tree;
    pANTLR3_BASE_TREE FOREIGN_SYMBOL153_tree;
    pANTLR3_BASE_TREE KEY_SYMBOL154_tree;
    pANTLR3_BASE_TREE DISABLE_SYMBOL157_tree;
    pANTLR3_BASE_TREE KEYS_SYMBOL158_tree;
    pANTLR3_BASE_TREE ENABLE_SYMBOL159_tree;
    pANTLR3_BASE_TREE KEYS_SYMBOL160_tree;
    pANTLR3_BASE_TREE RENAME_SYMBOL161_tree;
    pANTLR3_BASE_TREE set162_tree;
    pANTLR3_BASE_TREE RENAME_SYMBOL164_tree;
    pANTLR3_BASE_TREE set165_tree;
    pANTLR3_BASE_TREE TO_SYMBOL167_tree;
    pANTLR3_BASE_TREE CONVERT_SYMBOL170_tree;
    pANTLR3_BASE_TREE TO_SYMBOL171_tree;
    pANTLR3_BASE_TREE COLLATE_SYMBOL174_tree;
    pANTLR3_BASE_TREE FORCE_SYMBOL176_tree;
    pANTLR3_BASE_TREE UPGRADE_SYMBOL179_tree;
    pANTLR3_BASE_TREE PARTITIONING_SYMBOL180_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ADD_SYMBOL110       = NULL;
    COLUMN_SYMBOL111       = NULL;
    FIRST_SYMBOL113       = NULL;
    AFTER_SYMBOL114       = NULL;
    OPEN_PAR_SYMBOL116       = NULL;
    COMMA_SYMBOL118       = NULL;
    CLOSE_PAR_SYMBOL120       = NULL;
    ADD_SYMBOL121       = NULL;
    ALTER_SYMBOL123       = NULL;
    COLUMN_SYMBOL124       = NULL;
    SET_SYMBOL126       = NULL;
    DEFAULT_SYMBOL127       = NULL;
    DROP_SYMBOL129       = NULL;
    DEFAULT_SYMBOL130       = NULL;
    CHANGE_SYMBOL131       = NULL;
    COLUMN_SYMBOL132       = NULL;
    FIRST_SYMBOL135       = NULL;
    AFTER_SYMBOL136       = NULL;
    MODIFY_SYMBOL138       = NULL;
    COLUMN_SYMBOL139       = NULL;
    FIRST_SYMBOL143       = NULL;
    AFTER_SYMBOL144       = NULL;
    DROP_SYMBOL146       = NULL;
    set147       = NULL;
    COLUMN_SYMBOL149       = NULL;
    PRIMARY_SYMBOL151       = NULL;
    KEY_SYMBOL152       = NULL;
    FOREIGN_SYMBOL153       = NULL;
    KEY_SYMBOL154       = NULL;
    DISABLE_SYMBOL157       = NULL;
    KEYS_SYMBOL158       = NULL;
    ENABLE_SYMBOL159       = NULL;
    KEYS_SYMBOL160       = NULL;
    RENAME_SYMBOL161       = NULL;
    set162       = NULL;
    RENAME_SYMBOL164       = NULL;
    set165       = NULL;
    TO_SYMBOL167       = NULL;
    CONVERT_SYMBOL170       = NULL;
    TO_SYMBOL171       = NULL;
    COLLATE_SYMBOL174       = NULL;
    FORCE_SYMBOL176       = NULL;
    UPGRADE_SYMBOL179       = NULL;
    PARTITIONING_SYMBOL180       = NULL;
    alter_table_options109.tree = NULL;

    column_definition112.tree = NULL;

    identifier115.tree = NULL;

    column_definition117.tree = NULL;

    column_definition119.tree = NULL;

    key_def122.tree = NULL;

    column_internal_ref125.tree = NULL;

    signed_literal128.tree = NULL;

    column_internal_ref133.tree = NULL;

    field_spec134.tree = NULL;

    identifier137.tree = NULL;

    column_internal_ref140.tree = NULL;

    data_type141.tree = NULL;

    attribute142.tree = NULL;

    identifier145.tree = NULL;

    column_ref148.tree = NULL;

    column_internal_ref150.tree = NULL;

    column_ref155.tree = NULL;

    column_ref156.tree = NULL;

    table_ref163.tree = NULL;

    column_ref166.tree = NULL;

    column_ref168.tree = NULL;

    alter_order_by169.tree = NULL;

    charset172.tree = NULL;

    charset_name_or_default173.tree = NULL;

    collation_name_or_default175.tree = NULL;

    alter_algorithm_option177.tree = NULL;

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


    ADD_SYMBOL110_tree   = NULL;
    COLUMN_SYMBOL111_tree   = NULL;
    FIRST_SYMBOL113_tree   = NULL;
    AFTER_SYMBOL114_tree   = NULL;
    OPEN_PAR_SYMBOL116_tree   = NULL;
    COMMA_SYMBOL118_tree   = NULL;
    CLOSE_PAR_SYMBOL120_tree   = NULL;
    ADD_SYMBOL121_tree   = NULL;
    ALTER_SYMBOL123_tree   = NULL;
    COLUMN_SYMBOL124_tree   = NULL;
    SET_SYMBOL126_tree   = NULL;
    DEFAULT_SYMBOL127_tree   = NULL;
    DROP_SYMBOL129_tree   = NULL;
    DEFAULT_SYMBOL130_tree   = NULL;
    CHANGE_SYMBOL131_tree   = NULL;
    COLUMN_SYMBOL132_tree   = NULL;
    FIRST_SYMBOL135_tree   = NULL;
    AFTER_SYMBOL136_tree   = NULL;
    MODIFY_SYMBOL138_tree   = NULL;
    COLUMN_SYMBOL139_tree   = NULL;
    FIRST_SYMBOL143_tree   = NULL;
    AFTER_SYMBOL144_tree   = NULL;
    DROP_SYMBOL146_tree   = NULL;
    set147_tree   = NULL;
    COLUMN_SYMBOL149_tree   = NULL;
    PRIMARY_SYMBOL151_tree   = NULL;
    KEY_SYMBOL152_tree   = NULL;
    FOREIGN_SYMBOL153_tree   = NULL;
    KEY_SYMBOL154_tree   = NULL;
    DISABLE_SYMBOL157_tree   = NULL;
    KEYS_SYMBOL158_tree   = NULL;
    ENABLE_SYMBOL159_tree   = NULL;
    KEYS_SYMBOL160_tree   = NULL;
    RENAME_SYMBOL161_tree   = NULL;
    set162_tree   = NULL;
    RENAME_SYMBOL164_tree   = NULL;
    set165_tree   = NULL;
    TO_SYMBOL167_tree   = NULL;
    CONVERT_SYMBOL170_tree   = NULL;
    TO_SYMBOL171_tree   = NULL;
    COLLATE_SYMBOL174_tree   = NULL;
    FORCE_SYMBOL176_tree   = NULL;
    UPGRADE_SYMBOL179_tree   = NULL;
    PARTITIONING_SYMBOL180_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:632: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 alt47;

            alt47=17;

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


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


                            goto rulealter_table_list_entryEx;

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


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


                            goto rulealter_table_list_entryEx;

                        }
                    }
                }
                else if ( (LA47_0 == ORDER_SYMBOL))
                {
                    alt47=12;
                }
                else if ( (LA47_0 == CONVERT_SYMBOL))
                {
                    alt47=13;
                }
                else if ( (LA47_0 == FORCE_SYMBOL))
                {
                    alt47=14;
                }
                else if ( (LA47_0 == ALGORITHM_SYMBOL))
                {
                    alt47=15;
                }
                else if ( (LA47_0 == LOCK_SYMBOL))
                {
                    alt47=16;
                }
                else if ( (LA47_0 == UPGRADE_SYMBOL))
                {
                    alt47=17;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


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


                    goto rulealter_table_list_entryEx;

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


        	        FOLLOWPUSH(FOLLOW_alter_table_options_in_alter_table_list_entry1007);
        	        alter_table_options109=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_options109.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:634: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_SYMBOL110 = (pANTLR3_COMMON_TOKEN) MATCHT(ADD_SYMBOL, &FOLLOW_ADD_SYMBOL_in_alter_table_list_entry1012);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_entryEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

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

        	            switch (alt30)
        	            {
        	        	case 1:
        	        	    // MySQL.g:634:15: COLUMN_SYMBOL
        	        	    {
        	        	        COLUMN_SYMBOL111 = (pANTLR3_COMMON_TOKEN) MATCHT(COLUMN_SYMBOL, &FOLLOW_COLUMN_SYMBOL_in_alter_table_list_entry1014);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_entryEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	    }
        	        	    break;

        	            }
        	        }

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


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


        	                    goto rulealter_table_list_entryEx;

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

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

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

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

        	        	            switch (alt31)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:636:23: FIRST_SYMBOL
        	        	        	    {
        	        	        	        FIRST_SYMBOL113 = (pANTLR3_COMMON_TOKEN) MATCHT(FIRST_SYMBOL, &FOLLOW_FIRST_SYMBOL_in_alter_table_list_entry1027);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulealter_table_list_entryEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

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

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

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

        	        	        	        FOLLOWPUSH(FOLLOW_identifier_in_alter_table_list_entry1033);
        	        	        	        identifier115=identifier(ctx);

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

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

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

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

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

        	        	        FOLLOWPUSH(FOLLOW_column_definition_in_alter_table_list_entry1044);
        	        	        column_definition117=column_definition(ctx);

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

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

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

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

        	        	            }

        	        	            switch (alt32)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:637:41: COMMA_SYMBOL column_definition
        	        	        	    {
        	        	        	        COMMA_SYMBOL118 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_alter_table_list_entry1047);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulealter_table_list_entryEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

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

        	        	        	        FOLLOWPUSH(FOLLOW_column_definition_in_alter_table_list_entry1049);
        	        	        	        column_definition119=column_definition(ctx);

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

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

        	        	        	    }
        	        	        	    break;

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


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

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

        	        	    }
        	        	    break;

        	            }
        	        }

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


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

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

        	        FOLLOWPUSH(FOLLOW_key_def_in_alter_table_list_entry1064);
        	        key_def122=key_def(ctx);

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

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

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:640: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_SYMBOL123 = (pANTLR3_COMMON_TOKEN) MATCHT(ALTER_SYMBOL, &FOLLOW_ALTER_SYMBOL_in_alter_table_list_entry1069);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_entryEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

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

        	            switch (alt34)
        	            {
        	        	case 1:
        	        	    // MySQL.g:640:17: COLUMN_SYMBOL
        	        	    {
        	        	        COLUMN_SYMBOL124 = (pANTLR3_COMMON_TOKEN) MATCHT(COLUMN_SYMBOL, &FOLLOW_COLUMN_SYMBOL_in_alter_table_list_entry1071);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_entryEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_column_internal_ref_in_alter_table_list_entry1074);
        	        column_internal_ref125=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_ref125.tree);

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

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

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


        	                goto rulealter_table_list_entryEx;

        	            }

        	            switch (alt35)
        	            {
        	        	case 1:
        	        	    // MySQL.g:640:53: SET_SYMBOL DEFAULT_SYMBOL signed_literal
        	        	    {
        	        	        SET_SYMBOL126 = (pANTLR3_COMMON_TOKEN) MATCHT(SET_SYMBOL, &FOLLOW_SET_SYMBOL_in_alter_table_list_entry1077);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_entryEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

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

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

        	        	        FOLLOWPUSH(FOLLOW_signed_literal_in_alter_table_list_entry1081);
        	        	        signed_literal128=signed_literal(ctx);

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

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

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

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

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

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

        	        	    }
        	        	    break;

        	            }
        	        }

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


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

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

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

        	            switch (alt36)
        	            {
        	        	case 1:
        	        	    // MySQL.g:641:18: COLUMN_SYMBOL
        	        	    {
        	        	        COLUMN_SYMBOL132 = (pANTLR3_COMMON_TOKEN) MATCHT(COLUMN_SYMBOL, &FOLLOW_COLUMN_SYMBOL_in_alter_table_list_entry1095);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_entryEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_column_internal_ref_in_alter_table_list_entry1098);
        	        column_internal_ref133=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_ref133.tree);

        	        FOLLOWPUSH(FOLLOW_field_spec_in_alter_table_list_entry1100);
        	        field_spec134=field_spec(ctx);

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

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

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

        	            switch (alt37)
        	            {
        	        	case 1:
        	        	    // MySQL.g:641:65: FIRST_SYMBOL
        	        	    {
        	        	        FIRST_SYMBOL135 = (pANTLR3_COMMON_TOKEN) MATCHT(FIRST_SYMBOL, &FOLLOW_FIRST_SYMBOL_in_alter_table_list_entry1103);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_entryEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

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

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

        	        	        FOLLOWPUSH(FOLLOW_identifier_in_alter_table_list_entry1109);
        	        	        identifier137=identifier(ctx);

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

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

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:642: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_SYMBOL138 = (pANTLR3_COMMON_TOKEN) MATCHT(MODIFY_SYMBOL, &FOLLOW_MODIFY_SYMBOL_in_alter_table_list_entry1116);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_entryEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

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

        	            switch (alt38)
        	            {
        	        	case 1:
        	        	    // MySQL.g:642:18: COLUMN_SYMBOL
        	        	    {
        	        	        COLUMN_SYMBOL139 = (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_SYMBOL139_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COLUMN_SYMBOL139));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COLUMN_SYMBOL139_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_column_internal_ref_in_alter_table_list_entry1121);
        	        column_internal_ref140=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_ref140.tree);

        	        FOLLOWPUSH(FOLLOW_data_type_in_alter_table_list_entry1123);
        	        data_type141=data_type(ctx);

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

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

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

        	        for (;;)
        	        {
        	            int alt39=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:
        	            	{
        	            		alt39=1;
        	            	}
        	                break;

        	            }

        	            switch (alt39)
        	            {
        	        	case 1:
        	        	    // MySQL.g:642:63: attribute
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_attribute_in_alter_table_list_entry1125);
        	        	        attribute142=attribute(ctx);

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

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

        	        	    }
        	        	    break;

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


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

        	            switch (alt40)
        	            {
        	        	case 1:
        	        	    // MySQL.g:642:75: FIRST_SYMBOL
        	        	    {
        	        	        FIRST_SYMBOL143 = (pANTLR3_COMMON_TOKEN) MATCHT(FIRST_SYMBOL, &FOLLOW_FIRST_SYMBOL_in_alter_table_list_entry1129);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_entryEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

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

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

        	        	        FOLLOWPUSH(FOLLOW_identifier_in_alter_table_list_entry1135);
        	        	        identifier145=identifier(ctx);

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

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

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:643: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_SYMBOL146 = (pANTLR3_COMMON_TOKEN) MATCHT(DROP_SYMBOL, &FOLLOW_DROP_SYMBOL_in_alter_table_list_entry1142);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_entryEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        // MySQL.g:644: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 alt44=4;
        	            {
        	                int LA44_0 = LA(1);
        	                if ( (LA44_0 == INDEX_SYMBOL || LA44_0 == KEY_SYMBOL))
        	                {
        	                    alt44=1;
        	                }
        	                else if ( (((LA44_0 >= ACCOUNT_SYMBOL) && (LA44_0 <= YEAR_SYMBOL)) || LA44_0 == COLUMN_SYMBOL || LA44_0 == BACK_TICK_QUOTED_ID || LA44_0 == DOT_SYMBOL || LA44_0 == DOUBLE_QUOTED_TEXT || LA44_0 == IDENTIFIER))
        	                {
        	                    alt44=2;
        	                }
        	                else if ( (LA44_0 == PRIMARY_SYMBOL))
        	                {
        	                    alt44=3;
        	                }
        	                else if ( (LA44_0 == FOREIGN_SYMBOL))
        	                {
        	                    alt44=4;
        	                }
        	                else
        	                {
        	                    if (BACKTRACKING>0)
        	                    {
        	                        FAILEDFLAG = ANTLR3_TRUE;
        	                        return retval;
        	                    }


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


        	                    goto rulealter_table_list_entryEx;

        	                }
        	            }
        	            switch (alt44)
        	            {
        	        	case 1:
        	        	    // MySQL.g:645:4: ( INDEX_SYMBOL | KEY_SYMBOL ) column_ref
        	        	    {
        	        	        set147=(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, set147))
        	        	            );
        	        	            PERRORRECOVERY=ANTLR3_FALSE;
        	        	            FAILEDFLAG=ANTLR3_FALSE;

        	        	        }
        	        	        else
        	        	        {
        	        	            if (BACKTRACKING>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_entry1159);
        	        	        column_ref148=column_ref(ctx);

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

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

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

        	        	            switch (alt41)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:646:6: COLUMN_SYMBOL
        	        	        	    {
        	        	        	        COLUMN_SYMBOL149 = (pANTLR3_COMMON_TOKEN) MATCHT(COLUMN_SYMBOL, &FOLLOW_COLUMN_SYMBOL_in_alter_table_list_entry1166);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulealter_table_list_entryEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

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

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_column_internal_ref_in_alter_table_list_entry1169);
        	        	        column_internal_ref150=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_ref150.tree);

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

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

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

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

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

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

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

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

        	        	        // MySQL.g:649:5: ({...}? => column_ref |{...}? => ( column_ref )? )
        	        	        {
        	        	            int alt43=2;
        	        	            {
        	        	                int LA43_0 = LA(1);
        	        	                if ( ((((SERVER_VERSION < 50700))||((SERVER_VERSION >= 50700)))) && (LA43_0 == DOT_SYMBOL))
        	        	                {
        	        	                    {
        	        	                        int LA43_1 = LA(2);
        	        	                        if ( ((((SERVER_VERSION < 50700))||((SERVER_VERSION >= 50700)))) && (LA43_1 == IDENTIFIER))
        	        	                        {
        	        	                            {
        	        	                                int LA43_12 = LA(3);
        	        	                                if ( ((SERVER_VERSION >= 50700)))
        	        	                                {
        	        	                                    alt43=1;
        	        	                                }
        	        	                                else if ( ((SERVER_VERSION < 50700)))
        	        	                                {
        	        	                                    alt43=2;
        	        	                                }
        	        	                                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        = 12;


        	        	                                    goto rulealter_table_list_entryEx;

        	        	                                }
        	        	                            }
        	        	                        }
        	        	                        else if ( ((((SERVER_VERSION < 50700))||((SERVER_VERSION >= 50700)))) && (LA43_1 == BACK_TICK_QUOTED_ID))
        	        	                        {
        	        	                            {
        	        	                                int LA43_13 = LA(3);
        	        	                                if ( ((SERVER_VERSION >= 50700)))
        	        	                                {
        	        	                                    alt43=1;
        	        	                                }
        	        	                                else if ( ((SERVER_VERSION < 50700)))
        	        	                                {
        	        	                                    alt43=2;
        	        	                                }
        	        	                                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        = 13;


        	        	                                    goto rulealter_table_list_entryEx;

        	        	                                }
        	        	                            }
        	        	                        }
        	        	                        else if ( ((((SERVER_VERSION < 50700))||((SERVER_VERSION >= 50700)))) && (LA43_1 == DOUBLE_QUOTED_TEXT))
        	        	                        {
        	        	                            {
        	        	                                int LA43_14 = LA(3);
        	        	                                if ( ((SERVER_VERSION >= 50700)))
        	        	                                {
        	        	                                    alt43=1;
        	        	                                }
        	        	                                else if ( ((SERVER_VERSION < 50700)))
        	        	                                {
        	        	                                    alt43=2;
        	        	                                }
        	        	                                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        = 14;


        	        	                                    goto rulealter_table_list_entryEx;

        	        	                                }
        	        	                            }
        	        	                        }
        	        	                        else if ( ((((SERVER_VERSION < 50700))||((SERVER_VERSION >= 50700)))) && (((LA43_1 >= ACTION_SYMBOL) && (LA43_1 <= SHARE_SYMBOL)) || ((LA43_1 >= SLOW_SYMBOL) && (LA43_1 <= YEAR_SYMBOL))))
        	        	                        {
        	        	                            {
        	        	                                int LA43_15 = LA(3);
        	        	                                if ( ((SERVER_VERSION >= 50700)))
        	        	                                {
        	        	                                    alt43=1;
        	        	                                }
        	        	                                else if ( ((SERVER_VERSION < 50700)))
        	        	                                {
        	        	                                    alt43=2;
        	        	                                }
        	        	                                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        = 15;


        	        	                                    goto rulealter_table_list_entryEx;

        	        	                                }
        	        	                            }
        	        	                        }
        	        	                        else if ( ((((SERVER_VERSION < 50700))||((SERVER_VERSION >= 50700)))) && (((LA43_1 >= ACCOUNT_SYMBOL) && (LA43_1 <= XA_SYMBOL)) || LA43_1 == SHUTDOWN_SYMBOL))
        	        	                        {
        	        	                            {
        	        	                                int LA43_16 = LA(3);
        	        	                                if ( ((SERVER_VERSION >= 50700)))
        	        	                                {
        	        	                                    alt43=1;
        	        	                                }
        	        	                                else if ( ((SERVER_VERSION < 50700)))
        	        	                                {
        	        	                                    alt43=2;
        	        	                                }
        	        	                                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        = 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  = 43;
        	        	                            EXCEPTION->state        = 1;


        	        	                            goto rulealter_table_list_entryEx;

        	        	                        }
        	        	                    }
        	        	                }
        	        	                else if ( ((((SERVER_VERSION < 50700))||((SERVER_VERSION >= 50700)))) && (LA43_0 == IDENTIFIER))
        	        	                {
        	        	                    {
        	        	                        int LA43_2 = LA(2);
        	        	                        if ( ((SERVER_VERSION >= 50700)))
        	        	                        {
        	        	                            alt43=1;
        	        	                        }
        	        	                        else if ( ((SERVER_VERSION < 50700)))
        	        	                        {
        	        	                            alt43=2;
        	        	                        }
        	        	                        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        = 2;


        	        	                            goto rulealter_table_list_entryEx;

        	        	                        }
        	        	                    }
        	        	                }
        	        	                else if ( ((((SERVER_VERSION < 50700))||((SERVER_VERSION >= 50700)))) && (LA43_0 == BACK_TICK_QUOTED_ID))
        	        	                {
        	        	                    {
        	        	                        int LA43_3 = LA(2);
        	        	                        if ( ((SERVER_VERSION >= 50700)))
        	        	                        {
        	        	                            alt43=1;
        	        	                        }
        	        	                        else if ( ((SERVER_VERSION < 50700)))
        	        	                        {
        	        	                            alt43=2;
        	        	                        }
        	        	                        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        = 3;


        	        	                            goto rulealter_table_list_entryEx;

        	        	                        }
        	        	                    }
        	        	                }
        	        	                else if ( ((((SERVER_VERSION < 50700))||((SERVER_VERSION >= 50700)))) && (LA43_0 == DOUBLE_QUOTED_TEXT))
        	        	                {
        	        	                    {
        	        	                        int LA43_4 = LA(2);
        	        	                        if ( (( (( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) )) && ((SERVER_VERSION >= 50700)) )))
        	        	                        {
        	        	                            alt43=1;
        	        	                        }
        	        	                        else if ( (( (( ((SERVER_VERSION < 50700)) && ((SERVER_VERSION < 50700)) )) && ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) )))
        	        	                        {
        	        	                            alt43=2;
        	        	                        }
        	        	                        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        = 4;


        	        	                            goto rulealter_table_list_entryEx;

        	        	                        }
        	        	                    }
        	        	                }
        	        	                else if ( ((((SERVER_VERSION < 50700))||((SERVER_VERSION >= 50700)))) && (((LA43_0 >= ACTION_SYMBOL) && (LA43_0 <= SHARE_SYMBOL)) || ((LA43_0 >= SLOW_SYMBOL) && (LA43_0 <= YEAR_SYMBOL))))
        	        	                {
        	        	                    {
        	        	                        int LA43_5 = LA(2);
        	        	                        if ( ((SERVER_VERSION >= 50700)))
        	        	                        {
        	        	                            alt43=1;
        	        	                        }
        	        	                        else if ( ((SERVER_VERSION < 50700)))
        	        	                        {
        	        	                            alt43=2;
        	        	                        }
        	        	                        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        = 5;


        	        	                            goto rulealter_table_list_entryEx;

        	        	                        }
        	        	                    }
        	        	                }
        	        	                else if ( ((((SERVER_VERSION < 50700))||((SERVER_VERSION >= 50700)))) && (LA43_0 == PARTITION_SYMBOL))
        	        	                {
        	        	                    {
        	        	                        int LA43_6 = LA(2);
        	        	                        if ( ((SERVER_VERSION >= 50700)))
        	        	                        {
        	        	                            alt43=1;
        	        	                        }
        	        	                        else if ( ((SERVER_VERSION < 50700)))
        	        	                        {
        	        	                            alt43=2;
        	        	                        }
        	        	                        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        = 6;


        	        	                            goto rulealter_table_list_entryEx;

        	        	                        }
        	        	                    }
        	        	                }
        	        	                else if ( ((SERVER_VERSION < 50700)) && (LA43_0 == EOF || LA43_0 == SEMICOLON_SYMBOL || LA43_0 == COMMA_SYMBOL))
        	        	                {
        	        	                    alt43=2;
        	        	                }
        	        	                else if ( ((((SERVER_VERSION < 50700))||(( (( ((SERVER_VERSION < 50700)) && ((SERVER_VERSION < 50700)) )) && ((SERVER_VERSION >= 50100)) ))||((SERVER_VERSION >= 50700)))) && (LA43_0 == REMOVE_SYMBOL))
        	        	                {
        	        	                    {
        	        	                        int LA43_8 = LA(2);
        	        	                        if ( ((SERVER_VERSION >= 50700)))
        	        	                        {
        	        	                            alt43=1;
        	        	                        }
        	        	                        else if ( ((SERVER_VERSION < 50700)))
        	        	                        {
        	        	                            alt43=2;
        	        	                        }
        	        	                        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        = 8;


        	        	                            goto rulealter_table_list_entryEx;

        	        	                        }
        	        	                    }
        	        	                }
        	        	                else if ( ((((SERVER_VERSION < 50700))||((SERVER_VERSION >= 50700)))) && (((LA43_0 >= ACCOUNT_SYMBOL) && (LA43_0 <= PARSER_SYMBOL)) || ((LA43_0 >= PORT_SYMBOL) && (LA43_0 <= PREPARE_SYMBOL)) || ((LA43_0 >= REPAIR_SYMBOL) && (LA43_0 <= XA_SYMBOL)) || LA43_0 == SHUTDOWN_SYMBOL))
        	        	                {
        	        	                    {
        	        	                        int LA43_11 = LA(2);
        	        	                        if ( ((SERVER_VERSION >= 50700)))
        	        	                        {
        	        	                            alt43=1;
        	        	                        }
        	        	                        else if ( ((SERVER_VERSION < 50700)))
        	        	                        {
        	        	                            alt43=2;
        	        	                        }
        	        	                        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        = 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  = 43;
        	        	                    EXCEPTION->state        = 0;


        	        	                    goto rulealter_table_list_entryEx;

        	        	                }
        	        	            }
        	        	            switch (alt43)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:651: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_entry1210);
        	        	        	        column_ref155=column_ref(ctx);

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

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

        	        	        	    }
        	        	        	    break;
        	        	        	case 2:
        	        	        	    // MySQL.g:652: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:652:37: ( column_ref )?
        	        	        	        {
        	        	        	            int alt42=2;
        	        	        	            {
        	        	        	                int LA42_0 = LA(1);
        	        	        	                if ( (((LA42_0 >= ACCOUNT_SYMBOL) && (LA42_0 <= PARSER_SYMBOL)) || ((LA42_0 >= PORT_SYMBOL) && (LA42_0 <= PREPARE_SYMBOL)) || ((LA42_0 >= REPAIR_SYMBOL) && (LA42_0 <= YEAR_SYMBOL)) || LA42_0 == BACK_TICK_QUOTED_ID || LA42_0 == DOT_SYMBOL || LA42_0 == DOUBLE_QUOTED_TEXT || LA42_0 == IDENTIFIER))
        	        	        	                {
        	        	        	                    alt42=1;
        	        	        	                }
        	        	        	                else if ( (LA42_0 == PARTITION_SYMBOL))
        	        	        	                {
        	        	        	                    switch ( LA(2) )
        	        	        	                    {
        	        	        	                        case EOF:
        	        	        	                        case PARTITION_SYMBOL:
        	        	        	                        case REMOVE_SYMBOL:
        	        	        	                        case SEMICOLON_SYMBOL:
        	        	        	                        case COMMA_SYMBOL:
        	        	        	                        case DOT_SYMBOL:
        	        	        	                        	{
        	        	        	                        		alt42=1;
        	        	        	                        	}
        	        	        	                            break;
        	        	        	                    }

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

        	        	        	                }
        	        	        	            }
        	        	        	            switch (alt42)
        	        	        	            {
        	        	        	        	case 1:
        	        	        	        	    // MySQL.g:652:37: column_ref
        	        	        	        	    {
        	        	        	        	        FOLLOWPUSH(FOLLOW_column_ref_in_alter_table_list_entry1223);
        	        	        	        	        column_ref156=column_ref(ctx);

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

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

        	        	        	        	    }
        	        	        	        	    break;

        	        	        	            }
        	        	        	        }

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

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


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

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

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

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

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


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

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

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

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

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


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

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

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

        	            switch (alt45)
        	            {
        	        	case 1:
        	        	    // MySQL.g:
        	        	    {
        	        	        set162=(pANTLR3_COMMON_TOKEN)LT(1);

        	        	        if ( LA(1) == TO_SYMBOL || LA(1) == AS_SYMBOL )
        	        	        {
        	        	            CONSUME();
        	        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set162))
        	        	            );
        	        	            PERRORRECOVERY=ANTLR3_FALSE;
        	        	            FAILEDFLAG=ANTLR3_FALSE;

        	        	        }
        	        	        else
        	        	        {
        	        	            if (BACKTRACKING>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_entry1264);
        	        table_ref163=table_ref(ctx);

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

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

        	    }
        	    break;
        	case 11:
        	    // MySQL.g:658: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_SYMBOL164 = (pANTLR3_COMMON_TOKEN) MATCHT(RENAME_SYMBOL, &FOLLOW_RENAME_SYMBOL_in_alter_table_list_entry1271);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_entryEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        set165=(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, set165))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>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_entry1281);
        	        column_ref166=column_ref(ctx);

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

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

        	        TO_SYMBOL167 = (pANTLR3_COMMON_TOKEN) MATCHT(TO_SYMBOL, &FOLLOW_TO_SYMBOL_in_alter_table_list_entry1283);
        	        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_column_ref_in_alter_table_list_entry1285);
        	        column_ref168=column_ref(ctx);

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

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

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


        	        FOLLOWPUSH(FOLLOW_alter_order_by_in_alter_table_list_entry1290);
        	        alter_order_by169=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_by169.tree);

        	    }
        	    break;
        	case 13:
        	    // MySQL.g:660: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_SYMBOL170 = (pANTLR3_COMMON_TOKEN) MATCHT(CONVERT_SYMBOL, &FOLLOW_CONVERT_SYMBOL_in_alter_table_list_entry1295);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_entryEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

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

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

        	        FOLLOWPUSH(FOLLOW_charset_in_alter_table_list_entry1299);
        	        charset172=charset(ctx);

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

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

        	        FOLLOWPUSH(FOLLOW_charset_name_or_default_in_alter_table_list_entry1301);
        	        charset_name_or_default173=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_default173.tree);

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

        	            switch (alt46)
        	            {
        	        	case 1:
        	        	    // MySQL.g:660:62: COLLATE_SYMBOL collation_name_or_default
        	        	    {
        	        	        COLLATE_SYMBOL174 = (pANTLR3_COMMON_TOKEN) MATCHT(COLLATE_SYMBOL, &FOLLOW_COLLATE_SYMBOL_in_alter_table_list_entry1304);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_entryEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	        FOLLOWPUSH(FOLLOW_collation_name_or_default_in_alter_table_list_entry1306);
        	        	        collation_name_or_default175=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_default175.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

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


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

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

        	    }
        	    break;
        	case 15:
        	    // MySQL.g:662: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_entry1320);
        	        alter_algorithm_option177=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_option177.tree);

        	    }
        	    break;
        	case 16:
        	    // MySQL.g:663: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_entry1327);
        	        alter_lock_option178=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_option178.tree);

        	    }
        	    break;
        	case 17:
        	    // MySQL.g:664: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_SYMBOL179 = (pANTLR3_COMMON_TOKEN) MATCHT(UPGRADE_SYMBOL, &FOLLOW_UPGRADE_SYMBOL_in_alter_table_list_entry1334);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_entryEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

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

        	        if ( BACKTRACKING==0 ) {
        	        PARTITIONING_SYMBOL180_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARTITIONING_SYMBOL180));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PARTITIONING_SYMBOL180_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:667: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_SYMBOL181;
    pANTLR3_COMMON_TOKEN    PRIMARY_SYMBOL183;
    pANTLR3_COMMON_TOKEN    KEY_SYMBOL184;
    pANTLR3_COMMON_TOKEN    FOREIGN_SYMBOL189;
    pANTLR3_COMMON_TOKEN    KEY_SYMBOL190;
    pANTLR3_COMMON_TOKEN    UNIQUE_SYMBOL194;
    pANTLR3_COMMON_TOKEN    set195;
    pANTLR3_COMMON_TOKEN    CHECK_SYMBOL200;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL201;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL203;
    pANTLR3_COMMON_TOKEN    set204;
    pANTLR3_COMMON_TOKEN    set209;
    pANTLR3_COMMON_TOKEN    set210;
    MySQLParser_column_ref_return column_ref182;
    #undef	RETURN_TYPE_column_ref182
    #define	RETURN_TYPE_column_ref182 MySQLParser_column_ref_return

    MySQLParser_column_ref_return column_ref185;
    #undef	RETURN_TYPE_column_ref185
    #define	RETURN_TYPE_column_ref185 MySQLParser_column_ref_return

    MySQLParser_index_type_return index_type186;
    #undef	RETURN_TYPE_index_type186
    #define	RETURN_TYPE_index_type186 MySQLParser_index_type_return

    MySQLParser_index_columns_return index_columns187;
    #undef	RETURN_TYPE_index_columns187
    #define	RETURN_TYPE_index_columns187 MySQLParser_index_columns_return

    MySQLParser_normal_index_option_return normal_index_option188;
    #undef	RETURN_TYPE_normal_index_option188
    #define	RETURN_TYPE_normal_index_option188 MySQLParser_normal_index_option_return

    MySQLParser_column_ref_return column_ref191;
    #undef	RETURN_TYPE_column_ref191
    #define	RETURN_TYPE_column_ref191 MySQLParser_column_ref_return

    MySQLParser_index_columns_return index_columns192;
    #undef	RETURN_TYPE_index_columns192
    #define	RETURN_TYPE_index_columns192 MySQLParser_index_columns_return

    MySQLParser_reference_definition_return reference_definition193;
    #undef	RETURN_TYPE_reference_definition193
    #define	RETURN_TYPE_reference_definition193 MySQLParser_reference_definition_return

    MySQLParser_column_ref_return column_ref196;
    #undef	RETURN_TYPE_column_ref196
    #define	RETURN_TYPE_column_ref196 MySQLParser_column_ref_return

    MySQLParser_index_type_return index_type197;
    #undef	RETURN_TYPE_index_type197
    #define	RETURN_TYPE_index_type197 MySQLParser_index_type_return

    MySQLParser_index_columns_return index_columns198;
    #undef	RETURN_TYPE_index_columns198
    #define	RETURN_TYPE_index_columns198 MySQLParser_index_columns_return

    MySQLParser_normal_index_option_return normal_index_option199;
    #undef	RETURN_TYPE_normal_index_option199
    #define	RETURN_TYPE_normal_index_option199 MySQLParser_normal_index_option_return

    MySQLParser_expression_return expression202;
    #undef	RETURN_TYPE_expression202
    #define	RETURN_TYPE_expression202 MySQLParser_expression_return

    MySQLParser_column_ref_return column_ref205;
    #undef	RETURN_TYPE_column_ref205
    #define	RETURN_TYPE_column_ref205 MySQLParser_column_ref_return

    MySQLParser_index_type_return index_type206;
    #undef	RETURN_TYPE_index_type206
    #define	RETURN_TYPE_index_type206 MySQLParser_index_type_return

    MySQLParser_index_columns_return index_columns207;
    #undef	RETURN_TYPE_index_columns207
    #define	RETURN_TYPE_index_columns207 MySQLParser_index_columns_return

    MySQLParser_normal_index_option_return normal_index_option208;
    #undef	RETURN_TYPE_normal_index_option208
    #define	RETURN_TYPE_normal_index_option208 MySQLParser_normal_index_option_return

    MySQLParser_column_ref_return column_ref211;
    #undef	RETURN_TYPE_column_ref211
    #define	RETURN_TYPE_column_ref211 MySQLParser_column_ref_return

    MySQLParser_index_columns_return index_columns212;
    #undef	RETURN_TYPE_index_columns212
    #define	RETURN_TYPE_index_columns212 MySQLParser_index_columns_return

    MySQLParser_normal_index_option_return normal_index_option213;
    #undef	RETURN_TYPE_normal_index_option213
    #define	RETURN_TYPE_normal_index_option213 MySQLParser_normal_index_option_return

    pANTLR3_BASE_TREE CONSTRAINT_SYMBOL181_tree;
    pANTLR3_BASE_TREE PRIMARY_SYMBOL183_tree;
    pANTLR3_BASE_TREE KEY_SYMBOL184_tree;
    pANTLR3_BASE_TREE FOREIGN_SYMBOL189_tree;
    pANTLR3_BASE_TREE KEY_SYMBOL190_tree;
    pANTLR3_BASE_TREE UNIQUE_SYMBOL194_tree;
    pANTLR3_BASE_TREE set195_tree;
    pANTLR3_BASE_TREE CHECK_SYMBOL200_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL201_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL203_tree;
    pANTLR3_BASE_TREE set204_tree;
    pANTLR3_BASE_TREE set209_tree;
    pANTLR3_BASE_TREE set210_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CONSTRAINT_SYMBOL181       = NULL;
    PRIMARY_SYMBOL183       = NULL;
    KEY_SYMBOL184       = NULL;
    FOREIGN_SYMBOL189       = NULL;
    KEY_SYMBOL190       = NULL;
    UNIQUE_SYMBOL194       = NULL;
    set195       = NULL;
    CHECK_SYMBOL200       = NULL;
    OPEN_PAR_SYMBOL201       = NULL;
    CLOSE_PAR_SYMBOL203       = NULL;
    set204       = NULL;
    set209       = NULL;
    set210       = NULL;
    column_ref182.tree = NULL;

    column_ref185.tree = NULL;

    index_type186.tree = NULL;

    index_columns187.tree = NULL;

    normal_index_option188.tree = NULL;

    column_ref191.tree = NULL;

    index_columns192.tree = NULL;

    reference_definition193.tree = NULL;

    column_ref196.tree = NULL;

    index_type197.tree = NULL;

    index_columns198.tree = NULL;

    normal_index_option199.tree = NULL;

    expression202.tree = NULL;

    column_ref205.tree = NULL;

    index_type206.tree = NULL;

    index_columns207.tree = NULL;

    normal_index_option208.tree = NULL;

    column_ref211.tree = NULL;

    index_columns212.tree = NULL;

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


    CONSTRAINT_SYMBOL181_tree   = NULL;
    PRIMARY_SYMBOL183_tree   = NULL;
    KEY_SYMBOL184_tree   = NULL;
    FOREIGN_SYMBOL189_tree   = NULL;
    KEY_SYMBOL190_tree   = NULL;
    UNIQUE_SYMBOL194_tree   = NULL;
    set195_tree   = NULL;
    CHECK_SYMBOL200_tree   = NULL;
    OPEN_PAR_SYMBOL201_tree   = NULL;
    CLOSE_PAR_SYMBOL203_tree   = NULL;
    set204_tree   = NULL;
    set209_tree   = NULL;
    set210_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:667: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 alt65;

            alt65=3;

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

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

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


                goto rulekey_defEx;

            }

            switch (alt65)
            {
        	case 1:
        	    // MySQL.g:668: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:668:2: ( CONSTRAINT_SYMBOL ( column_ref )? )?
        	        {
        	            int alt49=2;
        	            switch ( LA(1) )
        	            {
        	                case CONSTRAINT_SYMBOL:
        	                	{
        	                		alt49=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt49)
        	            {
        	        	case 1:
        	        	    // MySQL.g:668:3: CONSTRAINT_SYMBOL ( column_ref )?
        	        	    {
        	        	        CONSTRAINT_SYMBOL181 = (pANTLR3_COMMON_TOKEN) MATCHT(CONSTRAINT_SYMBOL, &FOLLOW_CONSTRAINT_SYMBOL_in_key_def1346);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulekey_defEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	        // MySQL.g:668:21: ( column_ref )?
        	        	        {
        	        	            int alt48=2;
        	        	            {
        	        	                int LA48_0 = LA(1);
        	        	                if ( (((LA48_0 >= ACCOUNT_SYMBOL) && (LA48_0 <= YEAR_SYMBOL)) || LA48_0 == BACK_TICK_QUOTED_ID || LA48_0 == DOT_SYMBOL || LA48_0 == DOUBLE_QUOTED_TEXT || LA48_0 == IDENTIFIER))
        	        	                {
        	        	                    alt48=1;
        	        	                }
        	        	            }
        	        	            switch (alt48)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:668:21: column_ref
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_column_ref_in_key_def1348);
        	        	        	        column_ref182=column_ref(ctx);

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

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

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:669: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 alt58=4;
        	            switch ( LA(1) )
        	            {
        	            case PRIMARY_SYMBOL:
        	            	{
        	            		alt58=1;
        	            	}
        	                break;
        	            case FOREIGN_SYMBOL:
        	            	{
        	            		alt58=2;
        	            	}
        	                break;
        	            case UNIQUE_SYMBOL:
        	            	{
        	            		alt58=3;
        	            	}
        	                break;
        	            case CHECK_SYMBOL:
        	            	{
        	            		alt58=4;
        	            	}
        	                break;

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

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


        	                goto rulekey_defEx;

        	            }

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

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

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

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

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

        	        	                }
        	        	            }
        	        	            switch (alt50)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:670:30: column_ref
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_column_ref_in_key_def1364);
        	        	        	        column_ref185=column_ref(ctx);

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

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

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

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

        	        	            switch (alt51)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:670:42: index_type
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_index_type_in_key_def1367);
        	        	        	        index_type186=index_type(ctx);

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

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

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_index_columns_in_key_def1370);
        	        	        index_columns187=index_columns(ctx);

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

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

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

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

        	        	            }

        	        	            switch (alt52)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:670:68: normal_index_option
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_normal_index_option_in_key_def1372);
        	        	        	        normal_index_option188=normal_index_option(ctx);

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

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

        	        	        	    }
        	        	        	    break;

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


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

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

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

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

        	        	        // MySQL.g:671:32: ( column_ref )?
        	        	        {
        	        	            int alt53=2;
        	        	            {
        	        	                int LA53_0 = LA(1);
        	        	                if ( (((LA53_0 >= ACCOUNT_SYMBOL) && (LA53_0 <= YEAR_SYMBOL)) || LA53_0 == BACK_TICK_QUOTED_ID || LA53_0 == DOT_SYMBOL || LA53_0 == DOUBLE_QUOTED_TEXT || LA53_0 == IDENTIFIER))
        	        	                {
        	        	                    alt53=1;
        	        	                }
        	        	            }
        	        	            switch (alt53)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:671:32: column_ref
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_column_ref_in_key_def1384);
        	        	        	        column_ref191=column_ref(ctx);

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

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

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_index_columns_in_key_def1387);
        	        	        index_columns192=index_columns(ctx);

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

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

        	        	        FOLLOWPUSH(FOLLOW_reference_definition_in_key_def1389);
        	        	        reference_definition193=reference_definition(ctx);

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

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

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

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

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

        	        	            switch (alt54)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:
        	        	        	    {
        	        	        	        set195=(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, set195))
        	        	        	            );
        	        	        	            PERRORRECOVERY=ANTLR3_FALSE;
        	        	        	            FAILEDFLAG=ANTLR3_FALSE;

        	        	        	        }
        	        	        	        else
        	        	        	        {
        	        	        	            if (BACKTRACKING>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:672:49: ( column_ref )?
        	        	        {
        	        	            int alt55=2;
        	        	            {
        	        	                int LA55_0 = LA(1);
        	        	                if ( (((LA55_0 >= ACCOUNT_SYMBOL) && (LA55_0 <= TYPES_SYMBOL)) || ((LA55_0 >= UDF_RETURNS_SYMBOL) && (LA55_0 <= YEAR_SYMBOL)) || LA55_0 == BACK_TICK_QUOTED_ID || LA55_0 == DOT_SYMBOL || LA55_0 == DOUBLE_QUOTED_TEXT || LA55_0 == IDENTIFIER))
        	        	                {
        	        	                    alt55=1;
        	        	                }
        	        	                else if ( (LA55_0 == TYPE_SYMBOL))
        	        	                {
        	        	                    switch ( LA(2) )
        	        	                    {
        	        	                        case TYPE_SYMBOL:
        	        	                        case OPEN_PAR_SYMBOL:
        	        	                        case USING_SYMBOL:
        	        	                        case DOT_SYMBOL:
        	        	                        	{
        	        	                        		alt55=1;
        	        	                        	}
        	        	                            break;
        	        	                    }

        	        	                }
        	        	            }
        	        	            switch (alt55)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:672:49: column_ref
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_column_ref_in_key_def1407);
        	        	        	        column_ref196=column_ref(ctx);

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

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

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

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

        	        	            switch (alt56)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:672:61: index_type
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_index_type_in_key_def1410);
        	        	        	        index_type197=index_type(ctx);

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

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

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_index_columns_in_key_def1413);
        	        	        index_columns198=index_columns(ctx);

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

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

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

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

        	        	            }

        	        	            switch (alt57)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:672:87: normal_index_option
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_normal_index_option_in_key_def1415);
        	        	        	        normal_index_option199=normal_index_option(ctx);

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

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

        	        	        	    }
        	        	        	    break;

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


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

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

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

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

        	        	        FOLLOWPUSH(FOLLOW_expression_in_key_def1427);
        	        	        expression202=expression(ctx);

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

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

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

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

        	        	    }
        	        	    break;

        	            }
        	        }

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


        	        set204=(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, set204))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>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:675:32: ( column_ref )?
        	        {
        	            int alt59=2;
        	            {
        	                int LA59_0 = LA(1);
        	                if ( (((LA59_0 >= ACCOUNT_SYMBOL) && (LA59_0 <= TYPES_SYMBOL)) || ((LA59_0 >= UDF_RETURNS_SYMBOL) && (LA59_0 <= YEAR_SYMBOL)) || LA59_0 == BACK_TICK_QUOTED_ID || LA59_0 == DOT_SYMBOL || LA59_0 == DOUBLE_QUOTED_TEXT || LA59_0 == IDENTIFIER))
        	                {
        	                    alt59=1;
        	                }
        	                else if ( (LA59_0 == TYPE_SYMBOL))
        	                {
        	                    switch ( LA(2) )
        	                    {
        	                        case TYPE_SYMBOL:
        	                        case OPEN_PAR_SYMBOL:
        	                        case USING_SYMBOL:
        	                        case DOT_SYMBOL:
        	                        	{
        	                        		alt59=1;
        	                        	}
        	                            break;
        	                    }

        	                }
        	            }
        	            switch (alt59)
        	            {
        	        	case 1:
        	        	    // MySQL.g:675:32: column_ref
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_column_ref_in_key_def1446);
        	        	        column_ref205=column_ref(ctx);

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

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

        	        	    }
        	        	    break;

        	            }
        	        }

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

        	            switch (alt60)
        	            {
        	        	case 1:
        	        	    // MySQL.g:675:44: index_type
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_index_type_in_key_def1449);
        	        	        index_type206=index_type(ctx);

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

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

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_index_columns_in_key_def1452);
        	        index_columns207=index_columns(ctx);

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

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

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

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

        	            }

        	            switch (alt61)
        	            {
        	        	case 1:
        	        	    // MySQL.g:675:70: normal_index_option
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_normal_index_option_in_key_def1454);
        	        	        normal_index_option208=normal_index_option(ctx);

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

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

        	        	    }
        	        	    break;

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


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


        	        set209=(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, set209))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>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:676:39: ( INDEX_SYMBOL | KEY_SYMBOL )?
        	        {
        	            int alt62=2;
        	            switch ( LA(1) )
        	            {
        	                case INDEX_SYMBOL:
        	                case KEY_SYMBOL:
        	                	{
        	                		alt62=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt62)
        	            {
        	        	case 1:
        	        	    // MySQL.g:
        	        	    {
        	        	        set210=(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, set210))
        	        	            );
        	        	            PERRORRECOVERY=ANTLR3_FALSE;
        	        	            FAILEDFLAG=ANTLR3_FALSE;

        	        	        }
        	        	        else
        	        	        {
        	        	            if (BACKTRACKING>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:676:68: ( column_ref )?
        	        {
        	            int alt63=2;
        	            {
        	                int LA63_0 = LA(1);
        	                if ( (((LA63_0 >= ACCOUNT_SYMBOL) && (LA63_0 <= YEAR_SYMBOL)) || LA63_0 == BACK_TICK_QUOTED_ID || LA63_0 == DOT_SYMBOL || LA63_0 == DOUBLE_QUOTED_TEXT || LA63_0 == IDENTIFIER))
        	                {
        	                    alt63=1;
        	                }
        	            }
        	            switch (alt63)
        	            {
        	        	case 1:
        	        	    // MySQL.g:676:68: column_ref
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_column_ref_in_key_def1477);
        	        	        column_ref211=column_ref(ctx);

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

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

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_index_columns_in_key_def1480);
        	        index_columns212=index_columns(ctx);

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

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

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

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

        	            }

        	            switch (alt64)
        	            {
        	        	case 1:
        	        	    // MySQL.g:676:94: normal_index_option
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_normal_index_option_in_key_def1482);
        	        	        normal_index_option213=normal_index_option(ctx);

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

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

        	        	    }
        	        	    break;

        	        	default:
        	        	    goto loop64;	/* break out of the loop */
        	        	    break;
        	            }
        	        }
        	        loop64: ; /* 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:679:1: alter_order_by : ORDER_SYMBOL BY_SYMBOL identifier direction ( options {greedy=true; } : COMMA_SYMBOL identifier direction )* ;
 */
static MySQLParser_alter_order_by_return
alter_order_by(pMySQLParser ctx)
{
    MySQLParser_alter_order_by_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    ORDER_SYMBOL214;
    pANTLR3_COMMON_TOKEN    BY_SYMBOL215;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL218;
    MySQLParser_identifier_return identifier216;
    #undef	RETURN_TYPE_identifier216
    #define	RETURN_TYPE_identifier216 MySQLParser_identifier_return

    MySQLParser_direction_return direction217;
    #undef	RETURN_TYPE_direction217
    #define	RETURN_TYPE_direction217 MySQLParser_direction_return

    MySQLParser_identifier_return identifier219;
    #undef	RETURN_TYPE_identifier219
    #define	RETURN_TYPE_identifier219 MySQLParser_identifier_return

    MySQLParser_direction_return direction220;
    #undef	RETURN_TYPE_direction220
    #define	RETURN_TYPE_direction220 MySQLParser_direction_return

    pANTLR3_BASE_TREE ORDER_SYMBOL214_tree;
    pANTLR3_BASE_TREE BY_SYMBOL215_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL218_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ORDER_SYMBOL214       = NULL;
    BY_SYMBOL215       = NULL;
    COMMA_SYMBOL218       = NULL;
    identifier216.tree = NULL;

    direction217.tree = NULL;

    identifier219.tree = NULL;

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


    ORDER_SYMBOL214_tree   = NULL;
    BY_SYMBOL215_tree   = NULL;
    COMMA_SYMBOL218_tree   = NULL;


    retval.tree  = NULL;

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


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

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

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

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

            FOLLOWPUSH(FOLLOW_identifier_in_alter_order_by1496);
            identifier216=identifier(ctx);

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

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

            FOLLOWPUSH(FOLLOW_direction_in_alter_order_by1498);
            direction217=direction(ctx);

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

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

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

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

                		}
                	}
                    break;

                }

                switch (alt66)
                {
            	case 1:
            	    // MySQL.g:680:75: COMMA_SYMBOL identifier direction
            	    {
            	        COMMA_SYMBOL218 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_alter_order_by1513);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_order_byEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	        FOLLOWPUSH(FOLLOW_identifier_in_alter_order_by1515);
            	        identifier219=identifier(ctx);

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

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

            	        FOLLOWPUSH(FOLLOW_direction_in_alter_order_by1517);
            	        direction220=direction(ctx);

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

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

            	    }
            	    break;

            	default:
            	    goto loop66;	/* break out of the loop */
            	    break;
                }
            }
            loop66: ; /* 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:683:1: alter_algorithm_option : ALGORITHM_SYMBOL ( EQUAL_OPERATOR )? ( DEFAULT_SYMBOL | identifier ) ;
 */
static MySQLParser_alter_algorithm_option_return
alter_algorithm_option(pMySQLParser ctx)
{
    MySQLParser_alter_algorithm_option_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    ALGORITHM_SYMBOL221;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR222;
    pANTLR3_COMMON_TOKEN    DEFAULT_SYMBOL223;
    MySQLParser_identifier_return identifier224;
    #undef	RETURN_TYPE_identifier224
    #define	RETURN_TYPE_identifier224 MySQLParser_identifier_return

    pANTLR3_BASE_TREE ALGORITHM_SYMBOL221_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR222_tree;
    pANTLR3_BASE_TREE DEFAULT_SYMBOL223_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

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


    ALGORITHM_SYMBOL221_tree   = NULL;
    EQUAL_OPERATOR222_tree   = NULL;
    DEFAULT_SYMBOL223_tree   = NULL;


    retval.tree  = NULL;

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


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

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

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

                switch (alt67)
                {
            	case 1:
            	    // MySQL.g:684:19: EQUAL_OPERATOR
            	    {
            	        EQUAL_OPERATOR222 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_alter_algorithm_option1530);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_algorithm_optionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	    }
            	    break;

                }
            }

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


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


                        goto rulealter_algorithm_optionEx;

                    }
                }
                switch (alt68)
                {
            	case 1:
            	    // MySQL.g:684:37: DEFAULT_SYMBOL
            	    {
            	        DEFAULT_SYMBOL223 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_alter_algorithm_option1535);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_algorithm_optionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:684:54: identifier
            	    {
            	        FOLLOWPUSH(FOLLOW_identifier_in_alter_algorithm_option1539);
            	        identifier224=identifier(ctx);

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

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

            	    }
            	    break;

                }
            }

        }

    }

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


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

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


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

/**
 * $ANTLR start alter_lock_option
 * MySQL.g:687:1: alter_lock_option : LOCK_SYMBOL ( EQUAL_OPERATOR )? ( DEFAULT_SYMBOL | identifier ) ;
 */
static MySQLParser_alter_lock_option_return
alter_lock_option(pMySQLParser ctx)
{
    MySQLParser_alter_lock_option_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    LOCK_SYMBOL225;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR226;
    pANTLR3_COMMON_TOKEN    DEFAULT_SYMBOL227;
    MySQLParser_identifier_return identifier228;
    #undef	RETURN_TYPE_identifier228
    #define	RETURN_TYPE_identifier228 MySQLParser_identifier_return

    pANTLR3_BASE_TREE LOCK_SYMBOL225_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR226_tree;
    pANTLR3_BASE_TREE DEFAULT_SYMBOL227_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    LOCK_SYMBOL225       = NULL;
    EQUAL_OPERATOR226       = NULL;
    DEFAULT_SYMBOL227       = NULL;
    identifier228.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    LOCK_SYMBOL225_tree   = NULL;
    EQUAL_OPERATOR226_tree   = NULL;
    DEFAULT_SYMBOL227_tree   = NULL;


    retval.tree  = NULL;

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


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

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

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

                switch (alt69)
                {
            	case 1:
            	    // MySQL.g:688:14: EQUAL_OPERATOR
            	    {
            	        EQUAL_OPERATOR226 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_alter_lock_option1552);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_lock_optionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	    }
            	    break;

                }
            }

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


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


                        goto rulealter_lock_optionEx;

                    }
                }
                switch (alt70)
                {
            	case 1:
            	    // MySQL.g:688:31: DEFAULT_SYMBOL
            	    {
            	        DEFAULT_SYMBOL227 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_alter_lock_option1556);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_lock_optionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:688:48: identifier
            	    {
            	        FOLLOWPUSH(FOLLOW_identifier_in_alter_lock_option1560);
            	        identifier228=identifier(ctx);

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

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

            	    }
            	    break;

                }
            }

        }

    }

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


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

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


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

/**
 * $ANTLR start index_lock_algorithm
 * MySQL.g:691:1: index_lock_algorithm :{...}? => ( alter_algorithm_option ( alter_lock_option )? | alter_lock_option ( alter_algorithm_option )? ) ;
 */
static MySQLParser_index_lock_algorithm_return
index_lock_algorithm(pMySQLParser ctx)
{
    MySQLParser_index_lock_algorithm_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_alter_algorithm_option_return alter_algorithm_option229;
    #undef	RETURN_TYPE_alter_algorithm_option229
    #define	RETURN_TYPE_alter_algorithm_option229 MySQLParser_alter_algorithm_option_return

    MySQLParser_alter_lock_option_return alter_lock_option230;
    #undef	RETURN_TYPE_alter_lock_option230
    #define	RETURN_TYPE_alter_lock_option230 MySQLParser_alter_lock_option_return

    MySQLParser_alter_lock_option_return alter_lock_option231;
    #undef	RETURN_TYPE_alter_lock_option231
    #define	RETURN_TYPE_alter_lock_option231 MySQLParser_alter_lock_option_return

    MySQLParser_alter_algorithm_option_return alter_algorithm_option232;
    #undef	RETURN_TYPE_alter_algorithm_option232
    #define	RETURN_TYPE_alter_algorithm_option232 MySQLParser_alter_algorithm_option_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    alter_algorithm_option229.tree = NULL;

    alter_lock_option230.tree = NULL;

    alter_lock_option231.tree = NULL;

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




    retval.tree  = NULL;

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

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

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


                    goto ruleindex_lock_algorithmEx;

                }

                switch (alt73)
                {
            	case 1:
            	    // MySQL.g:694:4: alter_algorithm_option ( alter_lock_option )?
            	    {
            	        FOLLOWPUSH(FOLLOW_alter_algorithm_option_in_index_lock_algorithm1582);
            	        alter_algorithm_option229=alter_algorithm_option(ctx);

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

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

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

            	            switch (alt71)
            	            {
            	        	case 1:
            	        	    // MySQL.g:694:27: alter_lock_option
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_alter_lock_option_in_index_lock_algorithm1584);
            	        	        alter_lock_option230=alter_lock_option(ctx);

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

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

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:695:6: alter_lock_option ( alter_algorithm_option )?
            	    {
            	        FOLLOWPUSH(FOLLOW_alter_lock_option_in_index_lock_algorithm1592);
            	        alter_lock_option231=alter_lock_option(ctx);

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

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

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

            	            switch (alt72)
            	            {
            	        	case 1:
            	        	    // MySQL.g:695:24: alter_algorithm_option
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_alter_algorithm_option_in_index_lock_algorithm1594);
            	        	        alter_algorithm_option232=alter_algorithm_option(ctx);

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

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

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

                }
            }

        }

    }

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


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

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


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

/**
 * $ANTLR start alter_partition
 * MySQL.g:699: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_SYMBOL233;
    pANTLR3_COMMON_TOKEN    PARTITION_SYMBOL234;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL236;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL238;
    pANTLR3_COMMON_TOKEN    PARTITIONS_SYMBOL239;
    pANTLR3_COMMON_TOKEN    DROP_SYMBOL241;
    pANTLR3_COMMON_TOKEN    PARTITION_SYMBOL242;
    pANTLR3_COMMON_TOKEN    REBUILD_SYMBOL244;
    pANTLR3_COMMON_TOKEN    PARTITION_SYMBOL245;
    pANTLR3_COMMON_TOKEN    OPTIMIZE_SYMBOL248;
    pANTLR3_COMMON_TOKEN    PARTITION_SYMBOL249;
    pANTLR3_COMMON_TOKEN    ANALYZE_SYMBOL253;
    pANTLR3_COMMON_TOKEN    PARTITION_SYMBOL254;
    pANTLR3_COMMON_TOKEN    CHECK_SYMBOL257;
    pANTLR3_COMMON_TOKEN    PARTITION_SYMBOL258;
    pANTLR3_COMMON_TOKEN    REPAIR_SYMBOL261;
    pANTLR3_COMMON_TOKEN    PARTITION_SYMBOL262;
    pANTLR3_COMMON_TOKEN    COALESCE_SYMBOL266;
    pANTLR3_COMMON_TOKEN    PARTITION_SYMBOL267;
    pANTLR3_COMMON_TOKEN    TRUNCATE_SYMBOL270;
    pANTLR3_COMMON_TOKEN    PARTITION_SYMBOL271;
    pANTLR3_COMMON_TOKEN    EXCHANGE_SYMBOL273;
    pANTLR3_COMMON_TOKEN    PARTITION_SYMBOL274;
    pANTLR3_COMMON_TOKEN    WITH_SYMBOL276;
    pANTLR3_COMMON_TOKEN    TABLE_SYMBOL277;
    pANTLR3_COMMON_TOKEN    REORGANIZE_SYMBOL280;
    pANTLR3_COMMON_TOKEN    PARTITION_SYMBOL281;
    pANTLR3_COMMON_TOKEN    INTO_SYMBOL284;
    pANTLR3_COMMON_TOKEN    DISCARD_SYMBOL286;
    pANTLR3_COMMON_TOKEN    PARTITION_SYMBOL287;
    pANTLR3_COMMON_TOKEN    TABLESPACE_SYMBOL289;
    pANTLR3_COMMON_TOKEN    IMPORT_SYMBOL290;
    pANTLR3_COMMON_TOKEN    PARTITION_SYMBOL291;
    pANTLR3_COMMON_TOKEN    TABLESPACE_SYMBOL293;
    MySQLParser_no_write_to_bin_log_return no_write_to_bin_log235;
    #undef	RETURN_TYPE_no_write_to_bin_log235
    #define	RETURN_TYPE_no_write_to_bin_log235 MySQLParser_no_write_to_bin_log_return

    MySQLParser_partition_definition_return partition_definition237;
    #undef	RETURN_TYPE_partition_definition237
    #define	RETURN_TYPE_partition_definition237 MySQLParser_partition_definition_return

    MySQLParser_real_ulong_number_return real_ulong_number240;
    #undef	RETURN_TYPE_real_ulong_number240
    #define	RETURN_TYPE_real_ulong_number240 MySQLParser_real_ulong_number_return

    MySQLParser_identifier_list_return identifier_list243;
    #undef	RETURN_TYPE_identifier_list243
    #define	RETURN_TYPE_identifier_list243 MySQLParser_identifier_list_return

    MySQLParser_no_write_to_bin_log_return no_write_to_bin_log246;
    #undef	RETURN_TYPE_no_write_to_bin_log246
    #define	RETURN_TYPE_no_write_to_bin_log246 MySQLParser_no_write_to_bin_log_return

    MySQLParser_all_or_partition_name_list_return all_or_partition_name_list247;
    #undef	RETURN_TYPE_all_or_partition_name_list247
    #define	RETURN_TYPE_all_or_partition_name_list247 MySQLParser_all_or_partition_name_list_return

    MySQLParser_no_write_to_bin_log_return no_write_to_bin_log250;
    #undef	RETURN_TYPE_no_write_to_bin_log250
    #define	RETURN_TYPE_no_write_to_bin_log250 MySQLParser_no_write_to_bin_log_return

    MySQLParser_all_or_partition_name_list_return all_or_partition_name_list251;
    #undef	RETURN_TYPE_all_or_partition_name_list251
    #define	RETURN_TYPE_all_or_partition_name_list251 MySQLParser_all_or_partition_name_list_return

    MySQLParser_no_write_to_bin_log_return no_write_to_bin_log252;
    #undef	RETURN_TYPE_no_write_to_bin_log252
    #define	RETURN_TYPE_no_write_to_bin_log252 MySQLParser_no_write_to_bin_log_return

    MySQLParser_no_write_to_bin_log_return no_write_to_bin_log255;
    #undef	RETURN_TYPE_no_write_to_bin_log255
    #define	RETURN_TYPE_no_write_to_bin_log255 MySQLParser_no_write_to_bin_log_return

    MySQLParser_all_or_partition_name_list_return all_or_partition_name_list256;
    #undef	RETURN_TYPE_all_or_partition_name_list256
    #define	RETURN_TYPE_all_or_partition_name_list256 MySQLParser_all_or_partition_name_list_return

    MySQLParser_all_or_partition_name_list_return all_or_partition_name_list259;
    #undef	RETURN_TYPE_all_or_partition_name_list259
    #define	RETURN_TYPE_all_or_partition_name_list259 MySQLParser_all_or_partition_name_list_return

    MySQLParser_check_option_return check_option260;
    #undef	RETURN_TYPE_check_option260
    #define	RETURN_TYPE_check_option260 MySQLParser_check_option_return

    MySQLParser_no_write_to_bin_log_return no_write_to_bin_log263;
    #undef	RETURN_TYPE_no_write_to_bin_log263
    #define	RETURN_TYPE_no_write_to_bin_log263 MySQLParser_no_write_to_bin_log_return

    MySQLParser_all_or_partition_name_list_return all_or_partition_name_list264;
    #undef	RETURN_TYPE_all_or_partition_name_list264
    #define	RETURN_TYPE_all_or_partition_name_list264 MySQLParser_all_or_partition_name_list_return

    MySQLParser_repair_option_return repair_option265;
    #undef	RETURN_TYPE_repair_option265
    #define	RETURN_TYPE_repair_option265 MySQLParser_repair_option_return

    MySQLParser_no_write_to_bin_log_return no_write_to_bin_log268;
    #undef	RETURN_TYPE_no_write_to_bin_log268
    #define	RETURN_TYPE_no_write_to_bin_log268 MySQLParser_no_write_to_bin_log_return

    MySQLParser_real_ulong_number_return real_ulong_number269;
    #undef	RETURN_TYPE_real_ulong_number269
    #define	RETURN_TYPE_real_ulong_number269 MySQLParser_real_ulong_number_return

    MySQLParser_all_or_partition_name_list_return all_or_partition_name_list272;
    #undef	RETURN_TYPE_all_or_partition_name_list272
    #define	RETURN_TYPE_all_or_partition_name_list272 MySQLParser_all_or_partition_name_list_return

    MySQLParser_identifier_return identifier275;
    #undef	RETURN_TYPE_identifier275
    #define	RETURN_TYPE_identifier275 MySQLParser_identifier_return

    MySQLParser_table_ref_return table_ref278;
    #undef	RETURN_TYPE_table_ref278
    #define	RETURN_TYPE_table_ref278 MySQLParser_table_ref_return

    MySQLParser_validation_return validation279;
    #undef	RETURN_TYPE_validation279
    #define	RETURN_TYPE_validation279 MySQLParser_validation_return

    MySQLParser_no_write_to_bin_log_return no_write_to_bin_log282;
    #undef	RETURN_TYPE_no_write_to_bin_log282
    #define	RETURN_TYPE_no_write_to_bin_log282 MySQLParser_no_write_to_bin_log_return

    MySQLParser_identifier_list_return identifier_list283;
    #undef	RETURN_TYPE_identifier_list283
    #define	RETURN_TYPE_identifier_list283 MySQLParser_identifier_list_return

    MySQLParser_partition_definitions_return partition_definitions285;
    #undef	RETURN_TYPE_partition_definitions285
    #define	RETURN_TYPE_partition_definitions285 MySQLParser_partition_definitions_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

    MySQLParser_all_or_partition_name_list_return all_or_partition_name_list292;
    #undef	RETURN_TYPE_all_or_partition_name_list292
    #define	RETURN_TYPE_all_or_partition_name_list292 MySQLParser_all_or_partition_name_list_return

    pANTLR3_BASE_TREE ADD_SYMBOL233_tree;
    pANTLR3_BASE_TREE PARTITION_SYMBOL234_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL236_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL238_tree;
    pANTLR3_BASE_TREE PARTITIONS_SYMBOL239_tree;
    pANTLR3_BASE_TREE DROP_SYMBOL241_tree;
    pANTLR3_BASE_TREE PARTITION_SYMBOL242_tree;
    pANTLR3_BASE_TREE REBUILD_SYMBOL244_tree;
    pANTLR3_BASE_TREE PARTITION_SYMBOL245_tree;
    pANTLR3_BASE_TREE OPTIMIZE_SYMBOL248_tree;
    pANTLR3_BASE_TREE PARTITION_SYMBOL249_tree;
    pANTLR3_BASE_TREE ANALYZE_SYMBOL253_tree;
    pANTLR3_BASE_TREE PARTITION_SYMBOL254_tree;
    pANTLR3_BASE_TREE CHECK_SYMBOL257_tree;
    pANTLR3_BASE_TREE PARTITION_SYMBOL258_tree;
    pANTLR3_BASE_TREE REPAIR_SYMBOL261_tree;
    pANTLR3_BASE_TREE PARTITION_SYMBOL262_tree;
    pANTLR3_BASE_TREE COALESCE_SYMBOL266_tree;
    pANTLR3_BASE_TREE PARTITION_SYMBOL267_tree;
    pANTLR3_BASE_TREE TRUNCATE_SYMBOL270_tree;
    pANTLR3_BASE_TREE PARTITION_SYMBOL271_tree;
    pANTLR3_BASE_TREE EXCHANGE_SYMBOL273_tree;
    pANTLR3_BASE_TREE PARTITION_SYMBOL274_tree;
    pANTLR3_BASE_TREE WITH_SYMBOL276_tree;
    pANTLR3_BASE_TREE TABLE_SYMBOL277_tree;
    pANTLR3_BASE_TREE REORGANIZE_SYMBOL280_tree;
    pANTLR3_BASE_TREE PARTITION_SYMBOL281_tree;
    pANTLR3_BASE_TREE INTO_SYMBOL284_tree;
    pANTLR3_BASE_TREE DISCARD_SYMBOL286_tree;
    pANTLR3_BASE_TREE PARTITION_SYMBOL287_tree;
    pANTLR3_BASE_TREE TABLESPACE_SYMBOL289_tree;
    pANTLR3_BASE_TREE IMPORT_SYMBOL290_tree;
    pANTLR3_BASE_TREE PARTITION_SYMBOL291_tree;
    pANTLR3_BASE_TREE TABLESPACE_SYMBOL293_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ADD_SYMBOL233       = NULL;
    PARTITION_SYMBOL234       = NULL;
    OPEN_PAR_SYMBOL236       = NULL;
    CLOSE_PAR_SYMBOL238       = NULL;
    PARTITIONS_SYMBOL239       = NULL;
    DROP_SYMBOL241       = NULL;
    PARTITION_SYMBOL242       = NULL;
    REBUILD_SYMBOL244       = NULL;
    PARTITION_SYMBOL245       = NULL;
    OPTIMIZE_SYMBOL248       = NULL;
    PARTITION_SYMBOL249       = NULL;
    ANALYZE_SYMBOL253       = NULL;
    PARTITION_SYMBOL254       = NULL;
    CHECK_SYMBOL257       = NULL;
    PARTITION_SYMBOL258       = NULL;
    REPAIR_SYMBOL261       = NULL;
    PARTITION_SYMBOL262       = NULL;
    COALESCE_SYMBOL266       = NULL;
    PARTITION_SYMBOL267       = NULL;
    TRUNCATE_SYMBOL270       = NULL;
    PARTITION_SYMBOL271       = NULL;
    EXCHANGE_SYMBOL273       = NULL;
    PARTITION_SYMBOL274       = NULL;
    WITH_SYMBOL276       = NULL;
    TABLE_SYMBOL277       = NULL;
    REORGANIZE_SYMBOL280       = NULL;
    PARTITION_SYMBOL281       = NULL;
    INTO_SYMBOL284       = NULL;
    DISCARD_SYMBOL286       = NULL;
    PARTITION_SYMBOL287       = NULL;
    TABLESPACE_SYMBOL289       = NULL;
    IMPORT_SYMBOL290       = NULL;
    PARTITION_SYMBOL291       = NULL;
    TABLESPACE_SYMBOL293       = NULL;
    no_write_to_bin_log235.tree = NULL;

    partition_definition237.tree = NULL;

    real_ulong_number240.tree = NULL;

    identifier_list243.tree = NULL;

    no_write_to_bin_log246.tree = NULL;

    all_or_partition_name_list247.tree = NULL;

    no_write_to_bin_log250.tree = NULL;

    all_or_partition_name_list251.tree = NULL;

    no_write_to_bin_log252.tree = NULL;

    no_write_to_bin_log255.tree = NULL;

    all_or_partition_name_list256.tree = NULL;

    all_or_partition_name_list259.tree = NULL;

    check_option260.tree = NULL;

    no_write_to_bin_log263.tree = NULL;

    all_or_partition_name_list264.tree = NULL;

    repair_option265.tree = NULL;

    no_write_to_bin_log268.tree = NULL;

    real_ulong_number269.tree = NULL;

    all_or_partition_name_list272.tree = NULL;

    identifier275.tree = NULL;

    table_ref278.tree = NULL;

    validation279.tree = NULL;

    no_write_to_bin_log282.tree = NULL;

    identifier_list283.tree = NULL;

    partition_definitions285.tree = NULL;

    all_or_partition_name_list288.tree = NULL;

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


    ADD_SYMBOL233_tree   = NULL;
    PARTITION_SYMBOL234_tree   = NULL;
    OPEN_PAR_SYMBOL236_tree   = NULL;
    CLOSE_PAR_SYMBOL238_tree   = NULL;
    PARTITIONS_SYMBOL239_tree   = NULL;
    DROP_SYMBOL241_tree   = NULL;
    PARTITION_SYMBOL242_tree   = NULL;
    REBUILD_SYMBOL244_tree   = NULL;
    PARTITION_SYMBOL245_tree   = NULL;
    OPTIMIZE_SYMBOL248_tree   = NULL;
    PARTITION_SYMBOL249_tree   = NULL;
    ANALYZE_SYMBOL253_tree   = NULL;
    PARTITION_SYMBOL254_tree   = NULL;
    CHECK_SYMBOL257_tree   = NULL;
    PARTITION_SYMBOL258_tree   = NULL;
    REPAIR_SYMBOL261_tree   = NULL;
    PARTITION_SYMBOL262_tree   = NULL;
    COALESCE_SYMBOL266_tree   = NULL;
    PARTITION_SYMBOL267_tree   = NULL;
    TRUNCATE_SYMBOL270_tree   = NULL;
    PARTITION_SYMBOL271_tree   = NULL;
    EXCHANGE_SYMBOL273_tree   = NULL;
    PARTITION_SYMBOL274_tree   = NULL;
    WITH_SYMBOL276_tree   = NULL;
    TABLE_SYMBOL277_tree   = NULL;
    REORGANIZE_SYMBOL280_tree   = NULL;
    PARTITION_SYMBOL281_tree   = NULL;
    INTO_SYMBOL284_tree   = NULL;
    DISCARD_SYMBOL286_tree   = NULL;
    PARTITION_SYMBOL287_tree   = NULL;
    TABLESPACE_SYMBOL289_tree   = NULL;
    IMPORT_SYMBOL290_tree   = NULL;
    PARTITION_SYMBOL291_tree   = NULL;
    TABLESPACE_SYMBOL293_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:699: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 alt87;

            alt87=13;

            {
                int LA87_0 = LA(1);
                if ( ((LA(1) == ADD_SYMBOL && LA(2) == PARTITION_SYMBOL)) && (LA87_0 == ADD_SYMBOL))
                {
                    alt87=1;
                }
                else if ( (LA87_0 == DROP_SYMBOL))
                {
                    alt87=2;
                }
                else if ( (LA87_0 == REBUILD_SYMBOL))
                {
                    alt87=3;
                }
                else if ( (LA87_0 == OPTIMIZE_SYMBOL))
                {
                    alt87=4;
                }
                else if ( (LA87_0 == ANALYZE_SYMBOL))
                {
                    alt87=5;
                }
                else if ( (LA87_0 == CHECK_SYMBOL))
                {
                    alt87=6;
                }
                else if ( (LA87_0 == REPAIR_SYMBOL))
                {
                    alt87=7;
                }
                else if ( (LA87_0 == COALESCE_SYMBOL))
                {
                    alt87=8;
                }
                else if ( (LA87_0 == TRUNCATE_SYMBOL))
                {
                    alt87=9;
                }
                else if ( (LA87_0 == EXCHANGE_SYMBOL))
                {
                    alt87=10;
                }
                else if ( (LA87_0 == REORGANIZE_SYMBOL))
                {
                    alt87=11;
                }
                else if ( (LA87_0 == DISCARD_SYMBOL))
                {
                    alt87=12;
                }
                else if ( (LA87_0 == IMPORT_SYMBOL))
                {
                    alt87=13;
                }
                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 rulealter_partitionEx;

                }
            }
            switch (alt87)
            {
        	case 1:
        	    // MySQL.g:700: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_SYMBOL233 = (pANTLR3_COMMON_TOKEN) MATCHT(ADD_SYMBOL, &FOLLOW_ADD_SYMBOL_in_alter_partition1612);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

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

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

        	        // MySQL.g:700:85: ( no_write_to_bin_log )?
        	        {
        	            int alt74=2;
        	            {
        	                int LA74_0 = LA(1);
        	                if ( ((LA(1) == LOCAL_SYMBOL)) && (LA74_0 == LOCAL_SYMBOL))
        	                {
        	                    alt74=1;
        	                }
        	                else if ( (LA74_0 == NO_WRITE_TO_BINLOG_SYMBOL))
        	                {
        	                    alt74=1;
        	                }
        	            }
        	            switch (alt74)
        	            {
        	        	case 1:
        	        	    // MySQL.g:700:85: no_write_to_bin_log
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_no_write_to_bin_log_in_alter_partition1616);
        	        	        no_write_to_bin_log235=no_write_to_bin_log(ctx);

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

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

        	        	    }
        	        	    break;

        	            }
        	        }

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

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

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


        	                goto rulealter_partitionEx;

        	            }

        	            switch (alt75)
        	            {
        	        	case 1:
        	        	    // MySQL.g:702:4: OPEN_PAR_SYMBOL partition_definition CLOSE_PAR_SYMBOL
        	        	    {
        	        	        OPEN_PAR_SYMBOL236 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_alter_partition1626);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_partitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	        FOLLOWPUSH(FOLLOW_partition_definition_in_alter_partition1628);
        	        	        partition_definition237=partition_definition(ctx);

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

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

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

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

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

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

        	        	        FOLLOWPUSH(FOLLOW_real_ulong_number_in_alter_partition1639);
        	        	        real_ulong_number240=real_ulong_number(ctx);

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

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

        	        	    }
        	        	    break;

        	            }
        	        }

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


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

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

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

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

        	        FOLLOWPUSH(FOLLOW_identifier_list_in_alter_partition1652);
        	        identifier_list243=identifier_list(ctx);

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

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

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


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

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

        	        PARTITION_SYMBOL245 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITION_SYMBOL, &FOLLOW_PARTITION_SYMBOL_in_alter_partition1659);
        	        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:706:36: ( 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 <= YEAR_SYMBOL)) || LA76_1 == ALL_SYMBOL || LA76_1 == BACK_TICK_QUOTED_ID || LA76_1 == DOUBLE_QUOTED_TEXT || LA76_1 == IDENTIFIER))
        	                		    {
        	                		        alt76=1;
        	                		    }
        	                		}
        	                	}
        	                    break;
        	                case NO_WRITE_TO_BINLOG_SYMBOL:
        	                	{
        	                		alt76=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt76)
        	            {
        	        	case 1:
        	        	    // MySQL.g:706:36: no_write_to_bin_log
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_no_write_to_bin_log_in_alter_partition1661);
        	        	        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_partition1664);
        	        all_or_partition_name_list247=all_or_partition_name_list(ctx);

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

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

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


        	        OPTIMIZE_SYMBOL248 = (pANTLR3_COMMON_TOKEN) MATCHT(OPTIMIZE_SYMBOL, &FOLLOW_OPTIMIZE_SYMBOL_in_alter_partition1669);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

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

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

        	        // MySQL.g:707:37: ( no_write_to_bin_log )?
        	        {
        	            int alt77=2;
        	            switch ( LA(1) )
        	            {
        	                case LOCAL_SYMBOL:
        	                	{
        	                		{
        	                		    int LA77_1 = LA(2);
        	                		    if ( ((LA(1) == LOCAL_SYMBOL)) && (((LA77_1 >= ACCOUNT_SYMBOL) && (LA77_1 <= LIST_SYMBOL)) || ((LA77_1 >= LOCKS_SYMBOL) && (LA77_1 <= YEAR_SYMBOL)) || LA77_1 == ALL_SYMBOL || LA77_1 == BACK_TICK_QUOTED_ID || LA77_1 == DOUBLE_QUOTED_TEXT || LA77_1 == IDENTIFIER))
        	                		    {
        	                		        alt77=1;
        	                		    }
        	                		    else if ( (LA77_1 == LOCAL_SYMBOL))
        	                		    {
        	                		        {
        	                		            int LA77_13 = LA(3);
        	                		            if ( ((LA(1) == LOCAL_SYMBOL)))
        	                		            {
        	                		                alt77=1;
        	                		            }
        	                		        }
        	                		    }
        	                		}
        	                	}
        	                    break;
        	                case NO_WRITE_TO_BINLOG_SYMBOL:
        	                	{
        	                		alt77=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt77)
        	            {
        	        	case 1:
        	        	    // MySQL.g:707:37: no_write_to_bin_log
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_no_write_to_bin_log_in_alter_partition1673);
        	        	        no_write_to_bin_log250=no_write_to_bin_log(ctx);

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

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

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_all_or_partition_name_list_in_alter_partition1676);
        	        all_or_partition_name_list251=all_or_partition_name_list(ctx);

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

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

        	        // MySQL.g:707:85: ( no_write_to_bin_log )?
        	        {
        	            int alt78=2;
        	            {
        	                int LA78_0 = LA(1);
        	                if ( ((LA(1) == LOCAL_SYMBOL)) && (LA78_0 == LOCAL_SYMBOL))
        	                {
        	                    alt78=1;
        	                }
        	                else if ( (LA78_0 == NO_WRITE_TO_BINLOG_SYMBOL))
        	                {
        	                    alt78=1;
        	                }
        	            }
        	            switch (alt78)
        	            {
        	        	case 1:
        	        	    // MySQL.g:707:85: no_write_to_bin_log
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_no_write_to_bin_log_in_alter_partition1678);
        	        	        no_write_to_bin_log252=no_write_to_bin_log(ctx);

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

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

        	        	    }
        	        	    break;

        	            }
        	        }

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


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

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

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

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

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

        	            switch (alt79)
        	            {
        	        	case 1:
        	        	    // MySQL.g:708:36: no_write_to_bin_log
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_no_write_to_bin_log_in_alter_partition1689);
        	        	        no_write_to_bin_log255=no_write_to_bin_log(ctx);

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

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

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_all_or_partition_name_list_in_alter_partition1692);
        	        all_or_partition_name_list256=all_or_partition_name_list(ctx);

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

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

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


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

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

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

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

        	        FOLLOWPUSH(FOLLOW_all_or_partition_name_list_in_alter_partition1701);
        	        all_or_partition_name_list259=all_or_partition_name_list(ctx);

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

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

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

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

        	            }

        	            switch (alt80)
        	            {
        	        	case 1:
        	        	    // MySQL.g:709:61: check_option
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_check_option_in_alter_partition1703);
        	        	        check_option260=check_option(ctx);

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

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

        	        	    }
        	        	    break;

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


        	    }
        	    break;
        	case 7:
        	    // MySQL.g:710:4: REPAIR_SYMBOL PARTITION_SYMBOL ( no_write_to_bin_log )? all_or_partition_name_list ( repair_option )*
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        REPAIR_SYMBOL261 = (pANTLR3_COMMON_TOKEN) MATCHT(REPAIR_SYMBOL, &FOLLOW_REPAIR_SYMBOL_in_alter_partition1709);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

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

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

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

        	            switch (alt81)
        	            {
        	        	case 1:
        	        	    // MySQL.g:710:35: no_write_to_bin_log
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_no_write_to_bin_log_in_alter_partition1713);
        	        	        no_write_to_bin_log263=no_write_to_bin_log(ctx);

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

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

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_all_or_partition_name_list_in_alter_partition1716);
        	        all_or_partition_name_list264=all_or_partition_name_list(ctx);

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

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

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

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

        	            }

        	            switch (alt82)
        	            {
        	        	case 1:
        	        	    // MySQL.g:710:83: repair_option
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_repair_option_in_alter_partition1718);
        	        	        repair_option265=repair_option(ctx);

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

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

        	        	    }
        	        	    break;

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


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


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

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

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

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

        	        // MySQL.g:711:37: ( no_write_to_bin_log )?
        	        {
        	            int alt83=2;
        	            {
        	                int LA83_0 = LA(1);
        	                if ( ((LA(1) == LOCAL_SYMBOL)) && (LA83_0 == LOCAL_SYMBOL))
        	                {
        	                    alt83=1;
        	                }
        	                else if ( (LA83_0 == NO_WRITE_TO_BINLOG_SYMBOL))
        	                {
        	                    alt83=1;
        	                }
        	            }
        	            switch (alt83)
        	            {
        	        	case 1:
        	        	    // MySQL.g:711:37: no_write_to_bin_log
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_no_write_to_bin_log_in_alter_partition1728);
        	        	        no_write_to_bin_log268=no_write_to_bin_log(ctx);

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

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

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_real_ulong_number_in_alter_partition1731);
        	        real_ulong_number269=real_ulong_number(ctx);

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

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

        	    }
        	    break;
        	case 9:
        	    // MySQL.g:712:4: {...}? TRUNCATE_SYMBOL PARTITION_SYMBOL all_or_partition_name_list
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


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

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


        	        }

        	        TRUNCATE_SYMBOL270 = (pANTLR3_COMMON_TOKEN) MATCHT(TRUNCATE_SYMBOL, &FOLLOW_TRUNCATE_SYMBOL_in_alter_partition1738);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

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

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

        	        FOLLOWPUSH(FOLLOW_all_or_partition_name_list_in_alter_partition1742);
        	        all_or_partition_name_list272=all_or_partition_name_list(ctx);

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

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

        	    }
        	    break;
        	case 10:
        	    // MySQL.g:713:4: EXCHANGE_SYMBOL PARTITION_SYMBOL identifier WITH_SYMBOL TABLE_SYMBOL table_ref ( validation )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        EXCHANGE_SYMBOL273 = (pANTLR3_COMMON_TOKEN) MATCHT(EXCHANGE_SYMBOL, &FOLLOW_EXCHANGE_SYMBOL_in_alter_partition1747);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

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

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

        	        FOLLOWPUSH(FOLLOW_identifier_in_alter_partition1751);
        	        identifier275=identifier(ctx);

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

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

        	        WITH_SYMBOL276 = (pANTLR3_COMMON_TOKEN) MATCHT(WITH_SYMBOL, &FOLLOW_WITH_SYMBOL_in_alter_partition1753);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        TABLE_SYMBOL277 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLE_SYMBOL, &FOLLOW_TABLE_SYMBOL_in_alter_partition1755);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        FOLLOWPUSH(FOLLOW_table_ref_in_alter_partition1757);
        	        table_ref278=table_ref(ctx);

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

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

        	        // MySQL.g:713:83: ( validation )?
        	        {
        	            int alt84=2;
        	            {
        	                int LA84_0 = LA(1);
        	                if ( ((SERVER_VERSION >= 50706)) && (LA84_0 == WITHOUT_SYMBOL || LA84_0 == WITH_SYMBOL))
        	                {
        	                    alt84=1;
        	                }
        	            }
        	            switch (alt84)
        	            {
        	        	case 1:
        	        	    // MySQL.g:713:83: validation
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_validation_in_alter_partition1759);
        	        	        validation279=validation(ctx);

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

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

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 11:
        	    // MySQL.g:714: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_SYMBOL280 = (pANTLR3_COMMON_TOKEN) MATCHT(REORGANIZE_SYMBOL, &FOLLOW_REORGANIZE_SYMBOL_in_alter_partition1765);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

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

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

        	        // MySQL.g:714:39: ( no_write_to_bin_log )?
        	        {
        	            int alt85=2;
        	            switch ( LA(1) )
        	            {
        	                case LOCAL_SYMBOL:
        	                	{
        	                		{
        	                		    int LA85_1 = LA(2);
        	                		    if ( ((LA(1) == LOCAL_SYMBOL)) && (LA85_1 == EOF || ((LA85_1 >= ACCOUNT_SYMBOL) && (LA85_1 <= YEAR_SYMBOL)) || LA85_1 == SEMICOLON_SYMBOL || LA85_1 == BACK_TICK_QUOTED_ID || LA85_1 == DOUBLE_QUOTED_TEXT || LA85_1 == IDENTIFIER))
        	                		    {
        	                		        alt85=1;
        	                		    }
        	                		}
        	                	}
        	                    break;
        	                case NO_WRITE_TO_BINLOG_SYMBOL:
        	                	{
        	                		alt85=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt85)
        	            {
        	        	case 1:
        	        	    // MySQL.g:714:39: no_write_to_bin_log
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_no_write_to_bin_log_in_alter_partition1769);
        	        	        no_write_to_bin_log282=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_log282.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:714:60: ( identifier_list INTO_SYMBOL partition_definitions )?
        	        {
        	            int alt86=2;
        	            {
        	                int LA86_0 = LA(1);
        	                if ( (((LA86_0 >= ACCOUNT_SYMBOL) && (LA86_0 <= YEAR_SYMBOL)) || LA86_0 == BACK_TICK_QUOTED_ID || LA86_0 == DOUBLE_QUOTED_TEXT || LA86_0 == IDENTIFIER))
        	                {
        	                    alt86=1;
        	                }
        	            }
        	            switch (alt86)
        	            {
        	        	case 1:
        	        	    // MySQL.g:714:61: identifier_list INTO_SYMBOL partition_definitions
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_identifier_list_in_alter_partition1773);
        	        	        identifier_list283=identifier_list(ctx);

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

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

        	        	        INTO_SYMBOL284 = (pANTLR3_COMMON_TOKEN) MATCHT(INTO_SYMBOL, &FOLLOW_INTO_SYMBOL_in_alter_partition1775);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_partitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	        FOLLOWPUSH(FOLLOW_partition_definitions_in_alter_partition1777);
        	        	        partition_definitions285=partition_definitions(ctx);

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

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

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 12:
        	    // MySQL.g:715: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_SYMBOL286 = (pANTLR3_COMMON_TOKEN) MATCHT(DISCARD_SYMBOL, &FOLLOW_DISCARD_SYMBOL_in_alter_partition1786);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        PARTITION_SYMBOL287 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITION_SYMBOL, &FOLLOW_PARTITION_SYMBOL_in_alter_partition1788);
        	        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_partition1790);
        	        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_partition1792);
        	        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;
        	case 13:
        	    // MySQL.g:716: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_SYMBOL290 = (pANTLR3_COMMON_TOKEN) MATCHT(IMPORT_SYMBOL, &FOLLOW_IMPORT_SYMBOL_in_alter_partition1799);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

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

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

        	        FOLLOWPUSH(FOLLOW_all_or_partition_name_list_in_alter_partition1803);
        	        all_or_partition_name_list292=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_list292.tree);

        	        TABLESPACE_SYMBOL293 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLESPACE_SYMBOL, &FOLLOW_TABLESPACE_SYMBOL_in_alter_partition1805);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TABLESPACE_SYMBOL293_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLESPACE_SYMBOL293));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TABLESPACE_SYMBOL293_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:719: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    set294;
    pANTLR3_COMMON_TOKEN    VALIDATION_SYMBOL295;

    pANTLR3_BASE_TREE set294_tree;
    pANTLR3_BASE_TREE VALIDATION_SYMBOL295_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set294       = NULL;
    VALIDATION_SYMBOL295       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set294_tree   = NULL;
    VALIDATION_SYMBOL295_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:719:11: ({...}? => ( WITH_SYMBOL | WITHOUT_SYMBOL ) VALIDATION_SYMBOL )
        // MySQL.g:720: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";


            }

            set294=(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, set294))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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_SYMBOL295 = (pANTLR3_COMMON_TOKEN) MATCHT(VALIDATION_SYMBOL, &FOLLOW_VALIDATION_SYMBOL_in_validation1826);
            if  (HASEXCEPTION())
            {
                goto rulevalidationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            VALIDATION_SYMBOL295_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VALIDATION_SYMBOL295));
            ADAPTOR->addChild(ADAPTOR, root_0, VALIDATION_SYMBOL295_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:723: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_SYMBOL296;
    pANTLR3_COMMON_TOKEN    PARTITIONING_SYMBOL297;

    pANTLR3_BASE_TREE REMOVE_SYMBOL296_tree;
    pANTLR3_BASE_TREE PARTITIONING_SYMBOL297_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    REMOVE_SYMBOL296       = NULL;
    PARTITIONING_SYMBOL297       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    REMOVE_SYMBOL296_tree   = NULL;
    PARTITIONING_SYMBOL297_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:723:20: ({...}? => REMOVE_SYMBOL PARTITIONING_SYMBOL )
        // MySQL.g:724: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_SYMBOL296 = (pANTLR3_COMMON_TOKEN) MATCHT(REMOVE_SYMBOL, &FOLLOW_REMOVE_SYMBOL_in_remove_partitioning1839);
            if  (HASEXCEPTION())
            {
                goto ruleremove_partitioningEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

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

            PARTITIONING_SYMBOL297 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITIONING_SYMBOL, &FOLLOW_PARTITIONING_SYMBOL_in_remove_partitioning1841);
            if  (HASEXCEPTION())
            {
                goto ruleremove_partitioningEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            PARTITIONING_SYMBOL297_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARTITIONING_SYMBOL297));
            ADAPTOR->addChild(ADAPTOR, root_0, PARTITIONING_SYMBOL297_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:727: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_SYMBOL298;
    MySQLParser_identifier_list_return identifier_list299;
    #undef	RETURN_TYPE_identifier_list299
    #define	RETURN_TYPE_identifier_list299 MySQLParser_identifier_list_return

    pANTLR3_BASE_TREE ALL_SYMBOL298_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

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


    ALL_SYMBOL298_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:727:27: ( ALL_SYMBOL | identifier_list )

            ANTLR3_UINT32 alt88;

            alt88=2;

            {
                int LA88_0 = LA(1);
                if ( (LA88_0 == ALL_SYMBOL))
                {
                    alt88=1;
                }
                else if ( (((LA88_0 >= ACCOUNT_SYMBOL) && (LA88_0 <= YEAR_SYMBOL)) || LA88_0 == BACK_TICK_QUOTED_ID || LA88_0 == DOUBLE_QUOTED_TEXT || LA88_0 == IDENTIFIER))
                {
                    alt88=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


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


                    goto ruleall_or_partition_name_listEx;

                }
            }
            switch (alt88)
            {
        	case 1:
        	    // MySQL.g:728:2: ALL_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ALL_SYMBOL298 = (pANTLR3_COMMON_TOKEN) MATCHT(ALL_SYMBOL, &FOLLOW_ALL_SYMBOL_in_all_or_partition_name_list1850);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleall_or_partition_name_listEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

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


        	        FOLLOWPUSH(FOLLOW_identifier_list_in_all_or_partition_name_list1855);
        	        identifier_list299=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_list299.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:732: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_SYMBOL300;
    pANTLR3_COMMON_TOKEN    set302;
    pANTLR3_COMMON_TOKEN    DATAFILE_SYMBOL303;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL306;
    pANTLR3_COMMON_TOKEN    CHANGE_SYMBOL308;
    pANTLR3_COMMON_TOKEN    DATAFILE_SYMBOL309;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL312;
    pANTLR3_COMMON_TOKEN    READ_ONLY_SYMBOL314;
    pANTLR3_COMMON_TOKEN    READ_WRITE_SYMBOL315;
    pANTLR3_COMMON_TOKEN    NOT_SYMBOL316;
    pANTLR3_COMMON_TOKEN    ACCESSIBLE_SYMBOL317;
    MySQLParser_tablespace_ref_return tablespace_ref301;
    #undef	RETURN_TYPE_tablespace_ref301
    #define	RETURN_TYPE_tablespace_ref301 MySQLParser_tablespace_ref_return

    MySQLParser_string_literal_return string_literal304;
    #undef	RETURN_TYPE_string_literal304
    #define	RETURN_TYPE_string_literal304 MySQLParser_string_literal_return

    MySQLParser_alter_tablespace_option_return alter_tablespace_option305;
    #undef	RETURN_TYPE_alter_tablespace_option305
    #define	RETURN_TYPE_alter_tablespace_option305 MySQLParser_alter_tablespace_option_return

    MySQLParser_alter_tablespace_option_return alter_tablespace_option307;
    #undef	RETURN_TYPE_alter_tablespace_option307
    #define	RETURN_TYPE_alter_tablespace_option307 MySQLParser_alter_tablespace_option_return

    MySQLParser_string_literal_return string_literal310;
    #undef	RETURN_TYPE_string_literal310
    #define	RETURN_TYPE_string_literal310 MySQLParser_string_literal_return

    MySQLParser_change_tablespace_option_return change_tablespace_option311;
    #undef	RETURN_TYPE_change_tablespace_option311
    #define	RETURN_TYPE_change_tablespace_option311 MySQLParser_change_tablespace_option_return

    MySQLParser_change_tablespace_option_return change_tablespace_option313;
    #undef	RETURN_TYPE_change_tablespace_option313
    #define	RETURN_TYPE_change_tablespace_option313 MySQLParser_change_tablespace_option_return

    pANTLR3_BASE_TREE TABLESPACE_SYMBOL300_tree;
    pANTLR3_BASE_TREE set302_tree;
    pANTLR3_BASE_TREE DATAFILE_SYMBOL303_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL306_tree;
    pANTLR3_BASE_TREE CHANGE_SYMBOL308_tree;
    pANTLR3_BASE_TREE DATAFILE_SYMBOL309_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL312_tree;
    pANTLR3_BASE_TREE READ_ONLY_SYMBOL314_tree;
    pANTLR3_BASE_TREE READ_WRITE_SYMBOL315_tree;
    pANTLR3_BASE_TREE NOT_SYMBOL316_tree;
    pANTLR3_BASE_TREE ACCESSIBLE_SYMBOL317_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    TABLESPACE_SYMBOL300       = NULL;
    set302       = NULL;
    DATAFILE_SYMBOL303       = NULL;
    COMMA_SYMBOL306       = NULL;
    CHANGE_SYMBOL308       = NULL;
    DATAFILE_SYMBOL309       = NULL;
    COMMA_SYMBOL312       = NULL;
    READ_ONLY_SYMBOL314       = NULL;
    READ_WRITE_SYMBOL315       = NULL;
    NOT_SYMBOL316       = NULL;
    ACCESSIBLE_SYMBOL317       = NULL;
    tablespace_ref301.tree = NULL;

    string_literal304.tree = NULL;

    alter_tablespace_option305.tree = NULL;

    alter_tablespace_option307.tree = NULL;

    string_literal310.tree = NULL;

    change_tablespace_option311.tree = NULL;

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


    TABLESPACE_SYMBOL300_tree   = NULL;
    set302_tree   = NULL;
    DATAFILE_SYMBOL303_tree   = NULL;
    COMMA_SYMBOL306_tree   = NULL;
    CHANGE_SYMBOL308_tree   = NULL;
    DATAFILE_SYMBOL309_tree   = NULL;
    COMMA_SYMBOL312_tree   = NULL;
    READ_ONLY_SYMBOL314_tree   = NULL;
    READ_WRITE_SYMBOL315_tree   = NULL;
    NOT_SYMBOL316_tree   = NULL;
    ACCESSIBLE_SYMBOL317_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:732: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:733: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_SYMBOL300 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLESPACE_SYMBOL, &FOLLOW_TABLESPACE_SYMBOL_in_alter_tablespace1864);
            if  (HASEXCEPTION())
            {
                goto rulealter_tablespaceEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

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

            FOLLOWPUSH(FOLLOW_tablespace_ref_in_alter_tablespace1866);
            tablespace_ref301=tablespace_ref(ctx);

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

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

            // MySQL.g:734: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 alt95=5;
                switch ( LA(1) )
                {
                case ADD_SYMBOL:
                case DROP_SYMBOL:
                	{
                		alt95=1;
                	}
                    break;
                case CHANGE_SYMBOL:
                	{
                		alt95=2;
                	}
                    break;
                case READ_ONLY_SYMBOL:
                	{
                		alt95=3;
                	}
                    break;
                case READ_WRITE_SYMBOL:
                	{
                		alt95=4;
                	}
                    break;
                case NOT_SYMBOL:
                	{
                		alt95=5;
                	}
                    break;

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

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


                    goto rulealter_tablespaceEx;

                }

                switch (alt95)
                {
            	case 1:
            	    // MySQL.g:735:3: ( ADD_SYMBOL | DROP_SYMBOL ) DATAFILE_SYMBOL string_literal ( alter_tablespace_option ( ( COMMA_SYMBOL )? alter_tablespace_option )* )?
            	    {
            	        set302=(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, set302))
            	            );
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

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

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

            	            goto rulealter_tablespaceEx;
            	        }


            	        DATAFILE_SYMBOL303 = (pANTLR3_COMMON_TOKEN) MATCHT(DATAFILE_SYMBOL, &FOLLOW_DATAFILE_SYMBOL_in_alter_tablespace1881);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_tablespaceEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	        FOLLOWPUSH(FOLLOW_string_literal_in_alter_tablespace1883);
            	        string_literal304=string_literal(ctx);

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

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

            	        // MySQL.g:735:61: ( alter_tablespace_option ( ( COMMA_SYMBOL )? alter_tablespace_option )* )?
            	        {
            	            int alt91=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:
            	                	{
            	                		alt91=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt91)
            	            {
            	        	case 1:
            	        	    // MySQL.g:735:62: alter_tablespace_option ( ( COMMA_SYMBOL )? alter_tablespace_option )*
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_alter_tablespace_option_in_alter_tablespace1886);
            	        	        alter_tablespace_option305=alter_tablespace_option(ctx);

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

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

            	        	        // MySQL.g:735:86: ( ( COMMA_SYMBOL )? alter_tablespace_option )*

            	        	        for (;;)
            	        	        {
            	        	            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:
            	        	            case COMMA_SYMBOL:
            	        	            	{
            	        	            		alt90=1;
            	        	            	}
            	        	                break;

            	        	            }

            	        	            switch (alt90)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:735:87: ( COMMA_SYMBOL )? alter_tablespace_option
            	        	        	    {
            	        	        	        // MySQL.g:735:87: ( COMMA_SYMBOL )?
            	        	        	        {
            	        	        	            int alt89=2;
            	        	        	            switch ( LA(1) )
            	        	        	            {
            	        	        	                case COMMA_SYMBOL:
            	        	        	                	{
            	        	        	                		alt89=1;
            	        	        	                	}
            	        	        	                    break;
            	        	        	            }

            	        	        	            switch (alt89)
            	        	        	            {
            	        	        	        	case 1:
            	        	        	        	    // MySQL.g:735:87: COMMA_SYMBOL
            	        	        	        	    {
            	        	        	        	        COMMA_SYMBOL306 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_alter_tablespace1889);
            	        	        	        	        if  (HASEXCEPTION())
            	        	        	        	        {
            	        	        	        	            goto rulealter_tablespaceEx;
            	        	        	        	        }
            	        	        	        	        if (HASFAILED())
            	        	        	        	        {
            	        	        	        	            return retval;
            	        	        	        	        }

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

            	        	        	        	    }
            	        	        	        	    break;

            	        	        	            }
            	        	        	        }

            	        	        	        FOLLOWPUSH(FOLLOW_alter_tablespace_option_in_alter_tablespace1892);
            	        	        	        alter_tablespace_option307=alter_tablespace_option(ctx);

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

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

            	        	        	    }
            	        	        	    break;

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


            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:737:5: CHANGE_SYMBOL DATAFILE_SYMBOL string_literal ( change_tablespace_option ( ( COMMA_SYMBOL )? change_tablespace_option )* )?
            	    {
            	        CHANGE_SYMBOL308 = (pANTLR3_COMMON_TOKEN) MATCHT(CHANGE_SYMBOL, &FOLLOW_CHANGE_SYMBOL_in_alter_tablespace1905);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_tablespaceEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	        DATAFILE_SYMBOL309 = (pANTLR3_COMMON_TOKEN) MATCHT(DATAFILE_SYMBOL, &FOLLOW_DATAFILE_SYMBOL_in_alter_tablespace1907);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_tablespaceEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	        FOLLOWPUSH(FOLLOW_string_literal_in_alter_tablespace1909);
            	        string_literal310=string_literal(ctx);

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

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

            	        // MySQL.g:737:50: ( change_tablespace_option ( ( COMMA_SYMBOL )? change_tablespace_option )* )?
            	        {
            	            int alt94=2;
            	            switch ( LA(1) )
            	            {
            	                case AUTOEXTEND_SIZE_SYMBOL:
            	                case INITIAL_SIZE_SYMBOL:
            	                case MAX_SIZE_SYMBOL:
            	                	{
            	                		alt94=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt94)
            	            {
            	        	case 1:
            	        	    // MySQL.g:737:51: change_tablespace_option ( ( COMMA_SYMBOL )? change_tablespace_option )*
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_change_tablespace_option_in_alter_tablespace1912);
            	        	        change_tablespace_option311=change_tablespace_option(ctx);

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

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

            	        	        // MySQL.g:737:76: ( ( COMMA_SYMBOL )? change_tablespace_option )*

            	        	        for (;;)
            	        	        {
            	        	            int alt93=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	            case AUTOEXTEND_SIZE_SYMBOL:
            	        	            case INITIAL_SIZE_SYMBOL:
            	        	            case MAX_SIZE_SYMBOL:
            	        	            case COMMA_SYMBOL:
            	        	            	{
            	        	            		alt93=1;
            	        	            	}
            	        	                break;

            	        	            }

            	        	            switch (alt93)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:737:77: ( COMMA_SYMBOL )? change_tablespace_option
            	        	        	    {
            	        	        	        // MySQL.g:737:77: ( COMMA_SYMBOL )?
            	        	        	        {
            	        	        	            int alt92=2;
            	        	        	            switch ( LA(1) )
            	        	        	            {
            	        	        	                case COMMA_SYMBOL:
            	        	        	                	{
            	        	        	                		alt92=1;
            	        	        	                	}
            	        	        	                    break;
            	        	        	            }

            	        	        	            switch (alt92)
            	        	        	            {
            	        	        	        	case 1:
            	        	        	        	    // MySQL.g:737:77: COMMA_SYMBOL
            	        	        	        	    {
            	        	        	        	        COMMA_SYMBOL312 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_alter_tablespace1915);
            	        	        	        	        if  (HASEXCEPTION())
            	        	        	        	        {
            	        	        	        	            goto rulealter_tablespaceEx;
            	        	        	        	        }
            	        	        	        	        if (HASFAILED())
            	        	        	        	        {
            	        	        	        	            return retval;
            	        	        	        	        }

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

            	        	        	        	    }
            	        	        	        	    break;

            	        	        	            }
            	        	        	        }

            	        	        	        FOLLOWPUSH(FOLLOW_change_tablespace_option_in_alter_tablespace1918);
            	        	        	        change_tablespace_option313=change_tablespace_option(ctx);

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

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

            	        	        	    }
            	        	        	    break;

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


            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:738:5: READ_ONLY_SYMBOL
            	    {
            	        READ_ONLY_SYMBOL314 = (pANTLR3_COMMON_TOKEN) MATCHT(READ_ONLY_SYMBOL, &FOLLOW_READ_ONLY_SYMBOL_in_alter_tablespace1928);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_tablespaceEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	    }
            	    break;
            	case 4:
            	    // MySQL.g:739:5: READ_WRITE_SYMBOL
            	    {
            	        READ_WRITE_SYMBOL315 = (pANTLR3_COMMON_TOKEN) MATCHT(READ_WRITE_SYMBOL, &FOLLOW_READ_WRITE_SYMBOL_in_alter_tablespace1934);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_tablespaceEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	    }
            	    break;
            	case 5:
            	    // MySQL.g:740:5: NOT_SYMBOL ACCESSIBLE_SYMBOL
            	    {
            	        NOT_SYMBOL316 = (pANTLR3_COMMON_TOKEN) MATCHT(NOT_SYMBOL, &FOLLOW_NOT_SYMBOL_in_alter_tablespace1940);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_tablespaceEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	        ACCESSIBLE_SYMBOL317 = (pANTLR3_COMMON_TOKEN) MATCHT(ACCESSIBLE_SYMBOL, &FOLLOW_ACCESSIBLE_SYMBOL_in_alter_tablespace1942);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_tablespaceEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ACCESSIBLE_SYMBOL317_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ACCESSIBLE_SYMBOL317));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ACCESSIBLE_SYMBOL317_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:744: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_SYMBOL318;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR319;
    pANTLR3_COMMON_TOKEN    AUTOEXTEND_SIZE_SYMBOL321;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR322;
    pANTLR3_COMMON_TOKEN    MAX_SIZE_SYMBOL324;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR325;
    pANTLR3_COMMON_TOKEN    STORAGE_SYMBOL327;
    pANTLR3_COMMON_TOKEN    ENGINE_SYMBOL328;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR329;
    pANTLR3_COMMON_TOKEN    set331;
    MySQLParser_size_number_return size_number320;
    #undef	RETURN_TYPE_size_number320
    #define	RETURN_TYPE_size_number320 MySQLParser_size_number_return

    MySQLParser_size_number_return size_number323;
    #undef	RETURN_TYPE_size_number323
    #define	RETURN_TYPE_size_number323 MySQLParser_size_number_return

    MySQLParser_size_number_return size_number326;
    #undef	RETURN_TYPE_size_number326
    #define	RETURN_TYPE_size_number326 MySQLParser_size_number_return

    MySQLParser_engine_ref_return engine_ref330;
    #undef	RETURN_TYPE_engine_ref330
    #define	RETURN_TYPE_engine_ref330 MySQLParser_engine_ref_return

    pANTLR3_BASE_TREE INITIAL_SIZE_SYMBOL318_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR319_tree;
    pANTLR3_BASE_TREE AUTOEXTEND_SIZE_SYMBOL321_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR322_tree;
    pANTLR3_BASE_TREE MAX_SIZE_SYMBOL324_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR325_tree;
    pANTLR3_BASE_TREE STORAGE_SYMBOL327_tree;
    pANTLR3_BASE_TREE ENGINE_SYMBOL328_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR329_tree;
    pANTLR3_BASE_TREE set331_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    INITIAL_SIZE_SYMBOL318       = NULL;
    EQUAL_OPERATOR319       = NULL;
    AUTOEXTEND_SIZE_SYMBOL321       = NULL;
    EQUAL_OPERATOR322       = NULL;
    MAX_SIZE_SYMBOL324       = NULL;
    EQUAL_OPERATOR325       = NULL;
    STORAGE_SYMBOL327       = NULL;
    ENGINE_SYMBOL328       = NULL;
    EQUAL_OPERATOR329       = NULL;
    set331       = NULL;
    size_number320.tree = NULL;

    size_number323.tree = NULL;

    size_number326.tree = NULL;

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


    INITIAL_SIZE_SYMBOL318_tree   = NULL;
    EQUAL_OPERATOR319_tree   = NULL;
    AUTOEXTEND_SIZE_SYMBOL321_tree   = NULL;
    EQUAL_OPERATOR322_tree   = NULL;
    MAX_SIZE_SYMBOL324_tree   = NULL;
    EQUAL_OPERATOR325_tree   = NULL;
    STORAGE_SYMBOL327_tree   = NULL;
    ENGINE_SYMBOL328_tree   = NULL;
    EQUAL_OPERATOR329_tree   = NULL;
    set331_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:744: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 alt101;

            alt101=5;

            switch ( LA(1) )
            {
            case INITIAL_SIZE_SYMBOL:
            	{
            		alt101=1;
            	}
                break;
            case AUTOEXTEND_SIZE_SYMBOL:
            	{
            		alt101=2;
            	}
                break;
            case MAX_SIZE_SYMBOL:
            	{
            		alt101=3;
            	}
                break;
            case ENGINE_SYMBOL:
            case STORAGE_SYMBOL:
            	{
            		alt101=4;
            	}
                break;
            case NO_WAIT_SYMBOL:
            case WAIT_SYMBOL:
            	{
            		alt101=5;
            	}
                break;

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

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


                goto rulealter_tablespace_optionEx;

            }

            switch (alt101)
            {
        	case 1:
        	    // MySQL.g:745:2: INITIAL_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        INITIAL_SIZE_SYMBOL318 = (pANTLR3_COMMON_TOKEN) MATCHT(INITIAL_SIZE_SYMBOL, &FOLLOW_INITIAL_SIZE_SYMBOL_in_alter_tablespace_option1954);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_tablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        // MySQL.g:745:22: ( EQUAL_OPERATOR )?
        	        {
        	            int alt96=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt96=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt96)
        	            {
        	        	case 1:
        	        	    // MySQL.g:745:22: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR319 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_alter_tablespace_option1956);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_tablespace_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_size_number_in_alter_tablespace_option1959);
        	        size_number320=size_number(ctx);

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

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

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:746:4: AUTOEXTEND_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        AUTOEXTEND_SIZE_SYMBOL321 = (pANTLR3_COMMON_TOKEN) MATCHT(AUTOEXTEND_SIZE_SYMBOL, &FOLLOW_AUTOEXTEND_SIZE_SYMBOL_in_alter_tablespace_option1964);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_tablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        // MySQL.g:746:27: ( EQUAL_OPERATOR )?
        	        {
        	            int alt97=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt97=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt97)
        	            {
        	        	case 1:
        	        	    // MySQL.g:746:27: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR322 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_alter_tablespace_option1966);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_tablespace_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_size_number_in_alter_tablespace_option1969);
        	        size_number323=size_number(ctx);

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

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

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:747:4: MAX_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MAX_SIZE_SYMBOL324 = (pANTLR3_COMMON_TOKEN) MATCHT(MAX_SIZE_SYMBOL, &FOLLOW_MAX_SIZE_SYMBOL_in_alter_tablespace_option1974);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_tablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        // MySQL.g:747:20: ( EQUAL_OPERATOR )?
        	        {
        	            int alt98=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt98=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt98)
        	            {
        	        	case 1:
        	        	    // MySQL.g:747:20: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR325 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_alter_tablespace_option1976);
        	        	        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_size_number_in_alter_tablespace_option1979);
        	        size_number326=size_number(ctx);

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

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

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:748:4: ( STORAGE_SYMBOL )? ENGINE_SYMBOL ( EQUAL_OPERATOR )? engine_ref
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:748:4: ( STORAGE_SYMBOL )?
        	        {
        	            int alt99=2;
        	            switch ( LA(1) )
        	            {
        	                case STORAGE_SYMBOL:
        	                	{
        	                		alt99=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt99)
        	            {
        	        	case 1:
        	        	    // MySQL.g:748:4: STORAGE_SYMBOL
        	        	    {
        	        	        STORAGE_SYMBOL327 = (pANTLR3_COMMON_TOKEN) MATCHT(STORAGE_SYMBOL, &FOLLOW_STORAGE_SYMBOL_in_alter_tablespace_option1984);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_tablespace_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	    }
        	        	    break;

        	            }
        	        }

        	        ENGINE_SYMBOL328 = (pANTLR3_COMMON_TOKEN) MATCHT(ENGINE_SYMBOL, &FOLLOW_ENGINE_SYMBOL_in_alter_tablespace_option1987);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_tablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        // MySQL.g:748:34: ( EQUAL_OPERATOR )?
        	        {
        	            int alt100=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt100=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt100)
        	            {
        	        	case 1:
        	        	    // MySQL.g:748:34: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR329 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_alter_tablespace_option1989);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_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_engine_ref_in_alter_tablespace_option1992);
        	        engine_ref330=engine_ref(ctx);

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

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

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:749:4: ( WAIT_SYMBOL | NO_WAIT_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        set331=(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, set331))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>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:752: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_SYMBOL332;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR333;
    pANTLR3_COMMON_TOKEN    AUTOEXTEND_SIZE_SYMBOL335;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR336;
    pANTLR3_COMMON_TOKEN    MAX_SIZE_SYMBOL338;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR339;
    MySQLParser_size_number_return size_number334;
    #undef	RETURN_TYPE_size_number334
    #define	RETURN_TYPE_size_number334 MySQLParser_size_number_return

    MySQLParser_size_number_return size_number337;
    #undef	RETURN_TYPE_size_number337
    #define	RETURN_TYPE_size_number337 MySQLParser_size_number_return

    MySQLParser_size_number_return size_number340;
    #undef	RETURN_TYPE_size_number340
    #define	RETURN_TYPE_size_number340 MySQLParser_size_number_return

    pANTLR3_BASE_TREE INITIAL_SIZE_SYMBOL332_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR333_tree;
    pANTLR3_BASE_TREE AUTOEXTEND_SIZE_SYMBOL335_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR336_tree;
    pANTLR3_BASE_TREE MAX_SIZE_SYMBOL338_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR339_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    INITIAL_SIZE_SYMBOL332       = NULL;
    EQUAL_OPERATOR333       = NULL;
    AUTOEXTEND_SIZE_SYMBOL335       = NULL;
    EQUAL_OPERATOR336       = NULL;
    MAX_SIZE_SYMBOL338       = NULL;
    EQUAL_OPERATOR339       = NULL;
    size_number334.tree = NULL;

    size_number337.tree = NULL;

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


    INITIAL_SIZE_SYMBOL332_tree   = NULL;
    EQUAL_OPERATOR333_tree   = NULL;
    AUTOEXTEND_SIZE_SYMBOL335_tree   = NULL;
    EQUAL_OPERATOR336_tree   = NULL;
    MAX_SIZE_SYMBOL338_tree   = NULL;
    EQUAL_OPERATOR339_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:752:25: ( INITIAL_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number | AUTOEXTEND_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number | MAX_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number )

            ANTLR3_UINT32 alt105;

            alt105=3;

            switch ( LA(1) )
            {
            case INITIAL_SIZE_SYMBOL:
            	{
            		alt105=1;
            	}
                break;
            case AUTOEXTEND_SIZE_SYMBOL:
            	{
            		alt105=2;
            	}
                break;
            case MAX_SIZE_SYMBOL:
            	{
            		alt105=3;
            	}
                break;

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

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


                goto rulechange_tablespace_optionEx;

            }

            switch (alt105)
            {
        	case 1:
        	    // MySQL.g:753:2: INITIAL_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        INITIAL_SIZE_SYMBOL332 = (pANTLR3_COMMON_TOKEN) MATCHT(INITIAL_SIZE_SYMBOL, &FOLLOW_INITIAL_SIZE_SYMBOL_in_change_tablespace_option2012);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulechange_tablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        // MySQL.g:753:22: ( EQUAL_OPERATOR )?
        	        {
        	            int alt102=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt102=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt102)
        	            {
        	        	case 1:
        	        	    // MySQL.g:753:22: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR333 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_change_tablespace_option2014);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulechange_tablespace_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_size_number_in_change_tablespace_option2017);
        	        size_number334=size_number(ctx);

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

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

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:754:4: AUTOEXTEND_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        AUTOEXTEND_SIZE_SYMBOL335 = (pANTLR3_COMMON_TOKEN) MATCHT(AUTOEXTEND_SIZE_SYMBOL, &FOLLOW_AUTOEXTEND_SIZE_SYMBOL_in_change_tablespace_option2022);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulechange_tablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        // MySQL.g:754:27: ( EQUAL_OPERATOR )?
        	        {
        	            int alt103=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt103=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt103)
        	            {
        	        	case 1:
        	        	    // MySQL.g:754:27: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR336 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_change_tablespace_option2024);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulechange_tablespace_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_size_number_in_change_tablespace_option2027);
        	        size_number337=size_number(ctx);

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

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

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:755:4: MAX_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MAX_SIZE_SYMBOL338 = (pANTLR3_COMMON_TOKEN) MATCHT(MAX_SIZE_SYMBOL, &FOLLOW_MAX_SIZE_SYMBOL_in_change_tablespace_option2032);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulechange_tablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        // MySQL.g:755:20: ( EQUAL_OPERATOR )?
        	        {
        	            int alt104=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt104=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt104)
        	            {
        	        	case 1:
        	        	    // MySQL.g:755:20: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR339 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_change_tablespace_option2034);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulechange_tablespace_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_size_number_in_change_tablespace_option2037);
        	        size_number340=size_number(ctx);

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

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, size_number340.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:758: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_SYMBOL341;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR342;
    pANTLR3_COMMON_TOKEN    set343;
    pANTLR3_COMMON_TOKEN    SQL_SYMBOL345;
    pANTLR3_COMMON_TOKEN    SECURITY_SYMBOL346;
    pANTLR3_COMMON_TOKEN    set347;
    pANTLR3_COMMON_TOKEN    VIEW_SYMBOL348;
    pANTLR3_COMMON_TOKEN    AS_SYMBOL351;
    pANTLR3_COMMON_TOKEN    WITH_SYMBOL353;
    pANTLR3_COMMON_TOKEN    set354;
    pANTLR3_COMMON_TOKEN    CHECK_SYMBOL355;
    pANTLR3_COMMON_TOKEN    OPTION_SYMBOL356;
    MySQLParser_definer_clause_return definer_clause344;
    #undef	RETURN_TYPE_definer_clause344
    #define	RETURN_TYPE_definer_clause344 MySQLParser_definer_clause_return

    MySQLParser_view_ref_return view_ref349;
    #undef	RETURN_TYPE_view_ref349
    #define	RETURN_TYPE_view_ref349 MySQLParser_view_ref_return

    MySQLParser_identifier_list_with_parentheses_return identifier_list_with_parentheses350;
    #undef	RETURN_TYPE_identifier_list_with_parentheses350
    #define	RETURN_TYPE_identifier_list_with_parentheses350 MySQLParser_identifier_list_with_parentheses_return

    MySQLParser_select_statement_return select_statement352;
    #undef	RETURN_TYPE_select_statement352
    #define	RETURN_TYPE_select_statement352 MySQLParser_select_statement_return

    pANTLR3_BASE_TREE ALGORITHM_SYMBOL341_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR342_tree;
    pANTLR3_BASE_TREE set343_tree;
    pANTLR3_BASE_TREE SQL_SYMBOL345_tree;
    pANTLR3_BASE_TREE SECURITY_SYMBOL346_tree;
    pANTLR3_BASE_TREE set347_tree;
    pANTLR3_BASE_TREE VIEW_SYMBOL348_tree;
    pANTLR3_BASE_TREE AS_SYMBOL351_tree;
    pANTLR3_BASE_TREE WITH_SYMBOL353_tree;
    pANTLR3_BASE_TREE set354_tree;
    pANTLR3_BASE_TREE CHECK_SYMBOL355_tree;
    pANTLR3_BASE_TREE OPTION_SYMBOL356_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ALGORITHM_SYMBOL341       = NULL;
    EQUAL_OPERATOR342       = NULL;
    set343       = NULL;
    SQL_SYMBOL345       = NULL;
    SECURITY_SYMBOL346       = NULL;
    set347       = NULL;
    VIEW_SYMBOL348       = NULL;
    AS_SYMBOL351       = NULL;
    WITH_SYMBOL353       = NULL;
    set354       = NULL;
    CHECK_SYMBOL355       = NULL;
    OPTION_SYMBOL356       = NULL;
    definer_clause344.tree = NULL;

    view_ref349.tree = NULL;

    identifier_list_with_parentheses350.tree = NULL;

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


    ALGORITHM_SYMBOL341_tree   = NULL;
    EQUAL_OPERATOR342_tree   = NULL;
    set343_tree   = NULL;
    SQL_SYMBOL345_tree   = NULL;
    SECURITY_SYMBOL346_tree   = NULL;
    set347_tree   = NULL;
    VIEW_SYMBOL348_tree   = NULL;
    AS_SYMBOL351_tree   = NULL;
    WITH_SYMBOL353_tree   = NULL;
    set354_tree   = NULL;
    CHECK_SYMBOL355_tree   = NULL;
    OPTION_SYMBOL356_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:758: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:759: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:759:2: ( ALGORITHM_SYMBOL EQUAL_OPERATOR ( UNDEFINED_SYMBOL | MERGE_SYMBOL | TEMPTABLE_SYMBOL ) )?
            {
                int alt106=2;
                switch ( LA(1) )
                {
                    case ALGORITHM_SYMBOL:
                    	{
                    		alt106=1;
                    	}
                        break;
                }

                switch (alt106)
                {
            	case 1:
            	    // MySQL.g:759:3: ALGORITHM_SYMBOL EQUAL_OPERATOR ( UNDEFINED_SYMBOL | MERGE_SYMBOL | TEMPTABLE_SYMBOL )
            	    {
            	        ALGORITHM_SYMBOL341 = (pANTLR3_COMMON_TOKEN) MATCHT(ALGORITHM_SYMBOL, &FOLLOW_ALGORITHM_SYMBOL_in_alter_view2047);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_viewEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	        EQUAL_OPERATOR342 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_alter_view2049);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_viewEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	        set343=(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, 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;

                }
            }

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

                switch (alt107)
                {
            	case 1:
            	    // MySQL.g:760:3: definer_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_definer_clause_in_alter_view2067);
            	        definer_clause344=definer_clause(ctx);

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

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

            	    }
            	    break;

                }
            }

            // MySQL.g:761:3: ( SQL_SYMBOL SECURITY_SYMBOL ( DEFINER_SYMBOL | INVOKER_SYMBOL ) )?
            {
                int alt108=2;
                switch ( LA(1) )
                {
                    case SQL_SYMBOL:
                    	{
                    		alt108=1;
                    	}
                        break;
                }

                switch (alt108)
                {
            	case 1:
            	    // MySQL.g:761:4: SQL_SYMBOL SECURITY_SYMBOL ( DEFINER_SYMBOL | INVOKER_SYMBOL )
            	    {
            	        SQL_SYMBOL345 = (pANTLR3_COMMON_TOKEN) MATCHT(SQL_SYMBOL, &FOLLOW_SQL_SYMBOL_in_alter_view2073);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_viewEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	        SECURITY_SYMBOL346 = (pANTLR3_COMMON_TOKEN) MATCHT(SECURITY_SYMBOL, &FOLLOW_SECURITY_SYMBOL_in_alter_view2075);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_viewEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	        set347=(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, set347))
            	            );
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

            	        }
            	        else
            	        {
            	            if (BACKTRACKING>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_SYMBOL348 = (pANTLR3_COMMON_TOKEN) MATCHT(VIEW_SYMBOL, &FOLLOW_VIEW_SYMBOL_in_alter_view2089);
            if  (HASEXCEPTION())
            {
                goto rulealter_viewEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

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

            FOLLOWPUSH(FOLLOW_view_ref_in_alter_view2091);
            view_ref349=view_ref(ctx);

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

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

            // MySQL.g:762:24: ( identifier_list_with_parentheses )?
            {
                int alt109=2;
                switch ( LA(1) )
                {
                    case OPEN_PAR_SYMBOL:
                    	{
                    		alt109=1;
                    	}
                        break;
                }

                switch (alt109)
                {
            	case 1:
            	    // MySQL.g:762:24: identifier_list_with_parentheses
            	    {
            	        FOLLOWPUSH(FOLLOW_identifier_list_with_parentheses_in_alter_view2093);
            	        identifier_list_with_parentheses350=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_parentheses350.tree);

            	    }
            	    break;

                }
            }

            AS_SYMBOL351 = (pANTLR3_COMMON_TOKEN) MATCHT(AS_SYMBOL, &FOLLOW_AS_SYMBOL_in_alter_view2096);
            if  (HASEXCEPTION())
            {
                goto rulealter_viewEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

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

            FOLLOWPUSH(FOLLOW_select_statement_in_alter_view2098);
            select_statement352=select_statement(ctx);

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

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

            // MySQL.g:763:3: ( WITH_SYMBOL ( CASCADED_SYMBOL | LOCAL_SYMBOL )? CHECK_SYMBOL OPTION_SYMBOL )?
            {
                int alt111=2;
                switch ( LA(1) )
                {
                    case WITH_SYMBOL:
                    	{
                    		alt111=1;
                    	}
                        break;
                }

                switch (alt111)
                {
            	case 1:
            	    // MySQL.g:763:4: WITH_SYMBOL ( CASCADED_SYMBOL | LOCAL_SYMBOL )? CHECK_SYMBOL OPTION_SYMBOL
            	    {
            	        WITH_SYMBOL353 = (pANTLR3_COMMON_TOKEN) MATCHT(WITH_SYMBOL, &FOLLOW_WITH_SYMBOL_in_alter_view2103);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_viewEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	        // MySQL.g:763:16: ( CASCADED_SYMBOL | LOCAL_SYMBOL )?
            	        {
            	            int alt110=2;
            	            switch ( LA(1) )
            	            {
            	                case CASCADED_SYMBOL:
            	                case LOCAL_SYMBOL:
            	                	{
            	                		alt110=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt110)
            	            {
            	        	case 1:
            	        	    // MySQL.g:
            	        	    {
            	        	        set354=(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, set354))
            	        	            );
            	        	            PERRORRECOVERY=ANTLR3_FALSE;
            	        	            FAILEDFLAG=ANTLR3_FALSE;

            	        	        }
            	        	        else
            	        	        {
            	        	            if (BACKTRACKING>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_SYMBOL355 = (pANTLR3_COMMON_TOKEN) MATCHT(CHECK_SYMBOL, &FOLLOW_CHECK_SYMBOL_in_alter_view2114);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_viewEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	        OPTION_SYMBOL356 = (pANTLR3_COMMON_TOKEN) MATCHT(OPTION_SYMBOL, &FOLLOW_OPTION_SYMBOL_in_alter_view2116);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_viewEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OPTION_SYMBOL356_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPTION_SYMBOL356));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OPTION_SYMBOL356_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:771: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_SYMBOL357;
    MySQLParser_create_table_tail_return create_table_tail358;
    #undef	RETURN_TYPE_create_table_tail358
    #define	RETURN_TYPE_create_table_tail358 MySQLParser_create_table_tail_return

    MySQLParser_create_index_tail_return create_index_tail359;
    #undef	RETURN_TYPE_create_index_tail359
    #define	RETURN_TYPE_create_index_tail359 MySQLParser_create_index_tail_return

    MySQLParser_create_database_tail_return create_database_tail360;
    #undef	RETURN_TYPE_create_database_tail360
    #define	RETURN_TYPE_create_database_tail360 MySQLParser_create_database_tail_return

    MySQLParser_definer_clause_return definer_clause361;
    #undef	RETURN_TYPE_definer_clause361
    #define	RETURN_TYPE_definer_clause361 MySQLParser_definer_clause_return

    MySQLParser_create_event_tail_return create_event_tail362;
    #undef	RETURN_TYPE_create_event_tail362
    #define	RETURN_TYPE_create_event_tail362 MySQLParser_create_event_tail_return

    MySQLParser_create_view_tail_return create_view_tail363;
    #undef	RETURN_TYPE_create_view_tail363
    #define	RETURN_TYPE_create_view_tail363 MySQLParser_create_view_tail_return

    MySQLParser_create_routine_or_udf_return create_routine_or_udf364;
    #undef	RETURN_TYPE_create_routine_or_udf364
    #define	RETURN_TYPE_create_routine_or_udf364 MySQLParser_create_routine_or_udf_return

    MySQLParser_create_trigger_tail_return create_trigger_tail365;
    #undef	RETURN_TYPE_create_trigger_tail365
    #define	RETURN_TYPE_create_trigger_tail365 MySQLParser_create_trigger_tail_return

    MySQLParser_view_replace_or_algorithm_return view_replace_or_algorithm366;
    #undef	RETURN_TYPE_view_replace_or_algorithm366
    #define	RETURN_TYPE_view_replace_or_algorithm366 MySQLParser_view_replace_or_algorithm_return

    MySQLParser_definer_clause_return definer_clause367;
    #undef	RETURN_TYPE_definer_clause367
    #define	RETURN_TYPE_definer_clause367 MySQLParser_definer_clause_return

    MySQLParser_create_view_tail_return create_view_tail368;
    #undef	RETURN_TYPE_create_view_tail368
    #define	RETURN_TYPE_create_view_tail368 MySQLParser_create_view_tail_return

    MySQLParser_create_logfile_group_tail_return create_logfile_group_tail369;
    #undef	RETURN_TYPE_create_logfile_group_tail369
    #define	RETURN_TYPE_create_logfile_group_tail369 MySQLParser_create_logfile_group_tail_return

    MySQLParser_create_server_tail_return create_server_tail370;
    #undef	RETURN_TYPE_create_server_tail370
    #define	RETURN_TYPE_create_server_tail370 MySQLParser_create_server_tail_return

    MySQLParser_create_tablespace_tail_return create_tablespace_tail371;
    #undef	RETURN_TYPE_create_tablespace_tail371
    #define	RETURN_TYPE_create_tablespace_tail371 MySQLParser_create_tablespace_tail_return

    pANTLR3_BASE_TREE CREATE_SYMBOL357_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CREATE_SYMBOL357       = NULL;
    create_table_tail358.tree = NULL;

    create_index_tail359.tree = NULL;

    create_database_tail360.tree = NULL;

    definer_clause361.tree = NULL;

    create_event_tail362.tree = NULL;

    create_view_tail363.tree = NULL;

    create_routine_or_udf364.tree = NULL;

    create_trigger_tail365.tree = NULL;

    view_replace_or_algorithm366.tree = NULL;

    definer_clause367.tree = NULL;

    create_view_tail368.tree = NULL;

    create_logfile_group_tail369.tree = NULL;

    create_server_tail370.tree = NULL;

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


    CREATE_SYMBOL357_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:771: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:772: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_SYMBOL357 = (pANTLR3_COMMON_TOKEN) MATCHT(CREATE_SYMBOL, &FOLLOW_CREATE_SYMBOL_in_create_statement2132);
            if  (HASEXCEPTION())
            {
                goto rulecreate_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

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

            // MySQL.g:773: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 alt115=8;
                switch ( LA(1) )
                {
                case TEMPORARY_SYMBOL:
                case TABLE_SYMBOL:
                	{
                		alt115=1;
                	}
                    break;
                case FULLTEXT_SYMBOL:
                case INDEX_SYMBOL:
                case OFFLINE_SYMBOL:
                case ONLINE_SYMBOL:
                case SPATIAL_SYMBOL:
                case UNIQUE_SYMBOL:
                	{
                		alt115=2;
                	}
                    break;
                case DATABASE_SYMBOL:
                	{
                		alt115=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:
                	{
                		alt115=4;
                	}
                    break;
                case ALGORITHM_SYMBOL:
                case OR_SYMBOL:
                	{
                		alt115=5;
                	}
                    break;
                case LOGFILE_SYMBOL:
                	{
                		alt115=6;
                	}
                    break;
                case SERVER_SYMBOL:
                	{
                		alt115=7;
                	}
                    break;
                case TABLESPACE_SYMBOL:
                	{
                		alt115=8;
                	}
                    break;

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

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


                    goto rulecreate_statementEx;

                }

                switch (alt115)
                {
            	case 1:
            	    // MySQL.g:774:3: create_table_tail
            	    {
            	        FOLLOWPUSH(FOLLOW_create_table_tail_in_create_statement2140);
            	        create_table_tail358=create_table_tail(ctx);

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

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

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:775:5: create_index_tail
            	    {
            	        FOLLOWPUSH(FOLLOW_create_index_tail_in_create_statement2146);
            	        create_index_tail359=create_index_tail(ctx);

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

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

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:776:5: create_database_tail
            	    {
            	        FOLLOWPUSH(FOLLOW_create_database_tail_in_create_statement2152);
            	        create_database_tail360=create_database_tail(ctx);

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

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

            	    }
            	    break;
            	case 4:
            	    // MySQL.g:777:5: ( definer_clause )? ({...}? create_event_tail | create_view_tail | create_routine_or_udf | create_trigger_tail )
            	    {
            	        // MySQL.g:777:5: ( definer_clause )?
            	        {
            	            int alt112=2;
            	            switch ( LA(1) )
            	            {
            	                case DEFINER_SYMBOL:
            	                	{
            	                		alt112=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt112)
            	            {
            	        	case 1:
            	        	    // MySQL.g:777:5: definer_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_definer_clause_in_create_statement2158);
            	        	        definer_clause361=definer_clause(ctx);

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

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

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:778:4: ({...}? create_event_tail | create_view_tail | create_routine_or_udf | create_trigger_tail )
            	        {
            	            int alt113=4;
            	            switch ( LA(1) )
            	            {
            	            case EVENT_SYMBOL:
            	            	{
            	            		alt113=1;
            	            	}
            	                break;
            	            case VIEW_SYMBOL:
            	            case SQL_SYMBOL:
            	            	{
            	            		alt113=2;
            	            	}
            	                break;
            	            case AGGREGATE_SYMBOL:
            	            case FUNCTION_SYMBOL:
            	            case PROCEDURE_SYMBOL:
            	            	{
            	            		alt113=3;
            	            	}
            	                break;
            	            case TRIGGER_SYMBOL:
            	            	{
            	            		alt113=4;
            	            	}
            	                break;

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

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


            	                goto rulecreate_statementEx;

            	            }

            	            switch (alt113)
            	            {
            	        	case 1:
            	        	    // MySQL.g:779: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_statement2172);
            	        	        create_event_tail362=create_event_tail(ctx);

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

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

            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:780:7: create_view_tail
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_create_view_tail_in_create_statement2180);
            	        	        create_view_tail363=create_view_tail(ctx);

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

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

            	        	    }
            	        	    break;
            	        	case 3:
            	        	    // MySQL.g:781:7: create_routine_or_udf
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_create_routine_or_udf_in_create_statement2188);
            	        	        create_routine_or_udf364=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_udf364.tree);

            	        	    }
            	        	    break;
            	        	case 4:
            	        	    // MySQL.g:782:7: create_trigger_tail
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_create_trigger_tail_in_create_statement2196);
            	        	        create_trigger_tail365=create_trigger_tail(ctx);

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

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

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 5:
            	    // MySQL.g:784:5: view_replace_or_algorithm ( definer_clause )? create_view_tail
            	    {
            	        FOLLOWPUSH(FOLLOW_view_replace_or_algorithm_in_create_statement2207);
            	        view_replace_or_algorithm366=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_algorithm366.tree);

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

            	            switch (alt114)
            	            {
            	        	case 1:
            	        	    // MySQL.g:784:31: definer_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_definer_clause_in_create_statement2209);
            	        	        definer_clause367=definer_clause(ctx);

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

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

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_create_view_tail_in_create_statement2212);
            	        create_view_tail368=create_view_tail(ctx);

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

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

            	    }
            	    break;
            	case 6:
            	    // MySQL.g:785:5: create_logfile_group_tail
            	    {
            	        FOLLOWPUSH(FOLLOW_create_logfile_group_tail_in_create_statement2218);
            	        create_logfile_group_tail369=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_tail369.tree);

            	    }
            	    break;
            	case 7:
            	    // MySQL.g:786:5: create_server_tail
            	    {
            	        FOLLOWPUSH(FOLLOW_create_server_tail_in_create_statement2224);
            	        create_server_tail370=create_server_tail(ctx);

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

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

            	    }
            	    break;
            	case 8:
            	    // MySQL.g:787:5: create_tablespace_tail
            	    {
            	        FOLLOWPUSH(FOLLOW_create_tablespace_tail_in_create_statement2230);
            	        create_tablespace_tail371=create_tablespace_tail(ctx);

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

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_tablespace_tail371.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:791: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_SYMBOL372;
    pANTLR3_COMMON_TOKEN    SEMICOLON_SYMBOL374;
    pANTLR3_COMMON_TOKEN    EOF375;
    MySQLParser_create_database_tail_return create_database_tail373;
    #undef	RETURN_TYPE_create_database_tail373
    #define	RETURN_TYPE_create_database_tail373 MySQLParser_create_database_tail_return

    pANTLR3_BASE_TREE CREATE_SYMBOL372_tree;
    pANTLR3_BASE_TREE SEMICOLON_SYMBOL374_tree;
    pANTLR3_BASE_TREE EOF375_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CREATE_SYMBOL372       = NULL;
    SEMICOLON_SYMBOL374       = NULL;
    EOF375       = NULL;
    create_database_tail373.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CREATE_SYMBOL372_tree   = NULL;
    SEMICOLON_SYMBOL374_tree   = NULL;
    EOF375_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:791:16: ( CREATE_SYMBOL ^ create_database_tail ( SEMICOLON_SYMBOL )? EOF )
        // MySQL.g:792:2: CREATE_SYMBOL ^ create_database_tail ( SEMICOLON_SYMBOL )? EOF
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            CREATE_SYMBOL372 = (pANTLR3_COMMON_TOKEN) MATCHT(CREATE_SYMBOL, &FOLLOW_CREATE_SYMBOL_in_create_database2243);
            if  (HASEXCEPTION())
            {
                goto rulecreate_databaseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

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

            FOLLOWPUSH(FOLLOW_create_database_tail_in_create_database2246);
            create_database_tail373=create_database_tail(ctx);

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

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

            // MySQL.g:792:38: ( SEMICOLON_SYMBOL )?
            {
                int alt116=2;
                switch ( LA(1) )
                {
                    case SEMICOLON_SYMBOL:
                    	{
                    		alt116=1;
                    	}
                        break;
                }

                switch (alt116)
                {
            	case 1:
            	    // MySQL.g:792:38: SEMICOLON_SYMBOL
            	    {
            	        SEMICOLON_SYMBOL374 = (pANTLR3_COMMON_TOKEN) MATCHT(SEMICOLON_SYMBOL, &FOLLOW_SEMICOLON_SYMBOL_in_create_database2248);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_databaseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	    }
            	    break;

                }
            }

            EOF375 = (pANTLR3_COMMON_TOKEN) MATCHT(EOF, &FOLLOW_EOF_in_create_database2251);
            if  (HASEXCEPTION())
            {
                goto rulecreate_databaseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EOF375_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EOF375));
            ADAPTOR->addChild(ADAPTOR, root_0, EOF375_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:795: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_SYMBOL376;
    MySQLParser_if_not_exists_return if_not_exists377;
    #undef	RETURN_TYPE_if_not_exists377
    #define	RETURN_TYPE_if_not_exists377 MySQLParser_if_not_exists_return

    MySQLParser_schema_name_return schema_name378;
    #undef	RETURN_TYPE_schema_name378
    #define	RETURN_TYPE_schema_name378 MySQLParser_schema_name_return

    MySQLParser_database_option_return database_option379;
    #undef	RETURN_TYPE_database_option379
    #define	RETURN_TYPE_database_option379 MySQLParser_database_option_return

    pANTLR3_BASE_TREE DATABASE_SYMBOL376_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DATABASE_SYMBOL376       = NULL;
    if_not_exists377.tree = NULL;

    schema_name378.tree = NULL;

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


    DATABASE_SYMBOL376_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:795:21: ( DATABASE_SYMBOL ( if_not_exists )? schema_name ( database_option )* )
        // MySQL.g:796:2: DATABASE_SYMBOL ( if_not_exists )? schema_name ( database_option )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            DATABASE_SYMBOL376 = (pANTLR3_COMMON_TOKEN) MATCHT(DATABASE_SYMBOL, &FOLLOW_DATABASE_SYMBOL_in_create_database_tail2260);
            if  (HASEXCEPTION())
            {
                goto rulecreate_database_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

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

            // MySQL.g:796:18: ( if_not_exists )?
            {
                int alt117=2;
                switch ( LA(1) )
                {
                    case IF_SYMBOL:
                    	{
                    		alt117=1;
                    	}
                        break;
                }

                switch (alt117)
                {
            	case 1:
            	    // MySQL.g:796:18: if_not_exists
            	    {
            	        FOLLOWPUSH(FOLLOW_if_not_exists_in_create_database_tail2262);
            	        if_not_exists377=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_exists377.tree);

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_schema_name_in_create_database_tail2265);
            schema_name378=schema_name(ctx);

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

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

            // MySQL.g:796:45: ( database_option )*

            for (;;)
            {
                int alt118=2;
                switch ( LA(1) )
                {
                case CHARSET_SYMBOL:
                case CHAR_SYMBOL:
                case COLLATE_SYMBOL:
                case DEFAULT_SYMBOL:
                	{
                		alt118=1;
                	}
                    break;

                }

                switch (alt118)
                {
            	case 1:
            	    // MySQL.g:796:45: database_option
            	    {
            	        FOLLOWPUSH(FOLLOW_database_option_in_create_database_tail2267);
            	        database_option379=database_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_database_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, database_option379.tree);

            	    }
            	    break;

            	default:
            	    goto loop118;	/* break out of the loop */
            	    break;
                }
            }
            loop118: ; /* 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:799: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_SYMBOL380;
    MySQLParser_definer_clause_return definer_clause381;
    #undef	RETURN_TYPE_definer_clause381
    #define	RETURN_TYPE_definer_clause381 MySQLParser_definer_clause_return

    pANTLR3_BASE_TREE CREATE_SYMBOL380_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CREATE_SYMBOL380       = NULL;
    definer_clause381.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CREATE_SYMBOL380_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:799:20: ( CREATE_SYMBOL ^ ( definer_clause )? )
        // MySQL.g:800:2: CREATE_SYMBOL ^ ( definer_clause )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            CREATE_SYMBOL380 = (pANTLR3_COMMON_TOKEN) MATCHT(CREATE_SYMBOL, &FOLLOW_CREATE_SYMBOL_in_create_with_definer2277);
            if  (HASEXCEPTION())
            {
                goto rulecreate_with_definerEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CREATE_SYMBOL380_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CREATE_SYMBOL380))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, CREATE_SYMBOL380_tree, root_0));
            }

            // MySQL.g:800:17: ( definer_clause )?
            {
                int alt119=2;
                switch ( LA(1) )
                {
                    case DEFINER_SYMBOL:
                    	{
                    		alt119=1;
                    	}
                        break;
                }

                switch (alt119)
                {
            	case 1:
            	    // MySQL.g:800:17: definer_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_definer_clause_in_create_with_definer2280);
            	        definer_clause381=definer_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_with_definerEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, definer_clause381.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:803: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_SYMBOL384;
    pANTLR3_COMMON_TOKEN    EOF385;
    MySQLParser_create_with_definer_return create_with_definer382;
    #undef	RETURN_TYPE_create_with_definer382
    #define	RETURN_TYPE_create_with_definer382 MySQLParser_create_with_definer_return

    MySQLParser_create_event_tail_return create_event_tail383;
    #undef	RETURN_TYPE_create_event_tail383
    #define	RETURN_TYPE_create_event_tail383 MySQLParser_create_event_tail_return

    pANTLR3_BASE_TREE SEMICOLON_SYMBOL384_tree;
    pANTLR3_BASE_TREE EOF385_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SEMICOLON_SYMBOL384       = NULL;
    EOF385       = NULL;
    create_with_definer382.tree = NULL;

    create_event_tail383.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SEMICOLON_SYMBOL384_tree   = NULL;
    EOF385_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:803:13: ( create_with_definer create_event_tail ( SEMICOLON_SYMBOL )? EOF )
        // MySQL.g:804: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_event2291);
            create_with_definer382=create_with_definer(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_eventEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_with_definer382.tree);

            FOLLOWPUSH(FOLLOW_create_event_tail_in_create_event2293);
            create_event_tail383=create_event_tail(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_eventEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_event_tail383.tree);

            // MySQL.g:804:40: ( SEMICOLON_SYMBOL )?
            {
                int alt120=2;
                switch ( LA(1) )
                {
                    case SEMICOLON_SYMBOL:
                    	{
                    		alt120=1;
                    	}
                        break;
                }

                switch (alt120)
                {
            	case 1:
            	    // MySQL.g:804:40: SEMICOLON_SYMBOL
            	    {
            	        SEMICOLON_SYMBOL384 = (pANTLR3_COMMON_TOKEN) MATCHT(SEMICOLON_SYMBOL, &FOLLOW_SEMICOLON_SYMBOL_in_create_event2295);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_eventEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SEMICOLON_SYMBOL384_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SEMICOLON_SYMBOL384));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SEMICOLON_SYMBOL384_tree);
            	        }

            	    }
            	    break;

                }
            }

            EOF385 = (pANTLR3_COMMON_TOKEN) MATCHT(EOF, &FOLLOW_EOF_in_create_event2298);
            if  (HASEXCEPTION())
            {
                goto rulecreate_eventEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EOF385_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EOF385));
            ADAPTOR->addChild(ADAPTOR, root_0, EOF385_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:807: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_SYMBOL386;
    pANTLR3_COMMON_TOKEN    ON_SYMBOL389;
    pANTLR3_COMMON_TOKEN    SCHEDULE_SYMBOL390;
    pANTLR3_COMMON_TOKEN    ON_SYMBOL392;
    pANTLR3_COMMON_TOKEN    COMPLETION_SYMBOL393;
    pANTLR3_COMMON_TOKEN    NOT_SYMBOL394;
    pANTLR3_COMMON_TOKEN    PRESERVE_SYMBOL395;
    pANTLR3_COMMON_TOKEN    ENABLE_SYMBOL396;
    pANTLR3_COMMON_TOKEN    DISABLE_SYMBOL397;
    pANTLR3_COMMON_TOKEN    ON_SYMBOL398;
    pANTLR3_COMMON_TOKEN    SLAVE_SYMBOL399;
    pANTLR3_COMMON_TOKEN    COMMENT_SYMBOL400;
    pANTLR3_COMMON_TOKEN    DO_SYMBOL402;
    MySQLParser_if_not_exists_return if_not_exists387;
    #undef	RETURN_TYPE_if_not_exists387
    #define	RETURN_TYPE_if_not_exists387 MySQLParser_if_not_exists_return

    MySQLParser_event_name_return event_name388;
    #undef	RETURN_TYPE_event_name388
    #define	RETURN_TYPE_event_name388 MySQLParser_event_name_return

    MySQLParser_schedule_return schedule391;
    #undef	RETURN_TYPE_schedule391
    #define	RETURN_TYPE_schedule391 MySQLParser_schedule_return

    MySQLParser_string_literal_return string_literal401;
    #undef	RETURN_TYPE_string_literal401
    #define	RETURN_TYPE_string_literal401 MySQLParser_string_literal_return

    MySQLParser_compound_statement_return compound_statement403;
    #undef	RETURN_TYPE_compound_statement403
    #define	RETURN_TYPE_compound_statement403 MySQLParser_compound_statement_return

    pANTLR3_BASE_TREE EVENT_SYMBOL386_tree;
    pANTLR3_BASE_TREE ON_SYMBOL389_tree;
    pANTLR3_BASE_TREE SCHEDULE_SYMBOL390_tree;
    pANTLR3_BASE_TREE ON_SYMBOL392_tree;
    pANTLR3_BASE_TREE COMPLETION_SYMBOL393_tree;
    pANTLR3_BASE_TREE NOT_SYMBOL394_tree;
    pANTLR3_BASE_TREE PRESERVE_SYMBOL395_tree;
    pANTLR3_BASE_TREE ENABLE_SYMBOL396_tree;
    pANTLR3_BASE_TREE DISABLE_SYMBOL397_tree;
    pANTLR3_BASE_TREE ON_SYMBOL398_tree;
    pANTLR3_BASE_TREE SLAVE_SYMBOL399_tree;
    pANTLR3_BASE_TREE COMMENT_SYMBOL400_tree;
    pANTLR3_BASE_TREE DO_SYMBOL402_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    EVENT_SYMBOL386       = NULL;
    ON_SYMBOL389       = NULL;
    SCHEDULE_SYMBOL390       = NULL;
    ON_SYMBOL392       = NULL;
    COMPLETION_SYMBOL393       = NULL;
    NOT_SYMBOL394       = NULL;
    PRESERVE_SYMBOL395       = NULL;
    ENABLE_SYMBOL396       = NULL;
    DISABLE_SYMBOL397       = NULL;
    ON_SYMBOL398       = NULL;
    SLAVE_SYMBOL399       = NULL;
    COMMENT_SYMBOL400       = NULL;
    DO_SYMBOL402       = NULL;
    if_not_exists387.tree = NULL;

    event_name388.tree = NULL;

    schedule391.tree = NULL;

    string_literal401.tree = NULL;

    compound_statement403.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    EVENT_SYMBOL386_tree   = NULL;
    ON_SYMBOL389_tree   = NULL;
    SCHEDULE_SYMBOL390_tree   = NULL;
    ON_SYMBOL392_tree   = NULL;
    COMPLETION_SYMBOL393_tree   = NULL;
    NOT_SYMBOL394_tree   = NULL;
    PRESERVE_SYMBOL395_tree   = NULL;
    ENABLE_SYMBOL396_tree   = NULL;
    DISABLE_SYMBOL397_tree   = NULL;
    ON_SYMBOL398_tree   = NULL;
    SLAVE_SYMBOL399_tree   = NULL;
    COMMENT_SYMBOL400_tree   = NULL;
    DO_SYMBOL402_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:807: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:808: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_SYMBOL386 = (pANTLR3_COMMON_TOKEN) MATCHT(EVENT_SYMBOL, &FOLLOW_EVENT_SYMBOL_in_create_event_tail2307);
            if  (HASEXCEPTION())
            {
                goto rulecreate_event_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EVENT_SYMBOL386_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EVENT_SYMBOL386));
            ADAPTOR->addChild(ADAPTOR, root_0, EVENT_SYMBOL386_tree);
            }

            // MySQL.g:808:15: ( if_not_exists )?
            {
                int alt121=2;
                switch ( LA(1) )
                {
                    case IF_SYMBOL:
                    	{
                    		alt121=1;
                    	}
                        break;
                }

                switch (alt121)
                {
            	case 1:
            	    // MySQL.g:808:15: if_not_exists
            	    {
            	        FOLLOWPUSH(FOLLOW_if_not_exists_in_create_event_tail2309);
            	        if_not_exists387=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_exists387.tree);

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_event_name_in_create_event_tail2312);
            event_name388=event_name(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_event_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, event_name388.tree);

            ON_SYMBOL389 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_create_event_tail2314);
            if  (HASEXCEPTION())
            {
                goto rulecreate_event_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ON_SYMBOL389_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ON_SYMBOL389));
            ADAPTOR->addChild(ADAPTOR, root_0, ON_SYMBOL389_tree);
            }

            SCHEDULE_SYMBOL390 = (pANTLR3_COMMON_TOKEN) MATCHT(SCHEDULE_SYMBOL, &FOLLOW_SCHEDULE_SYMBOL_in_create_event_tail2316);
            if  (HASEXCEPTION())
            {
                goto rulecreate_event_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            SCHEDULE_SYMBOL390_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SCHEDULE_SYMBOL390));
            ADAPTOR->addChild(ADAPTOR, root_0, SCHEDULE_SYMBOL390_tree);
            }

            FOLLOWPUSH(FOLLOW_schedule_in_create_event_tail2318);
            schedule391=schedule(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_event_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, schedule391.tree);

            // MySQL.g:809:3: ( ON_SYMBOL COMPLETION_SYMBOL ( NOT_SYMBOL )? PRESERVE_SYMBOL )?
            {
                int alt123=2;
                switch ( LA(1) )
                {
                    case ON_SYMBOL:
                    	{
                    		alt123=1;
                    	}
                        break;
                }

                switch (alt123)
                {
            	case 1:
            	    // MySQL.g:809:4: ON_SYMBOL COMPLETION_SYMBOL ( NOT_SYMBOL )? PRESERVE_SYMBOL
            	    {
            	        ON_SYMBOL392 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_create_event_tail2323);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_event_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ON_SYMBOL392_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ON_SYMBOL392));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ON_SYMBOL392_tree);
            	        }

            	        COMPLETION_SYMBOL393 = (pANTLR3_COMMON_TOKEN) MATCHT(COMPLETION_SYMBOL, &FOLLOW_COMPLETION_SYMBOL_in_create_event_tail2325);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_event_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMPLETION_SYMBOL393_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMPLETION_SYMBOL393));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMPLETION_SYMBOL393_tree);
            	        }

            	        // MySQL.g:809:32: ( NOT_SYMBOL )?
            	        {
            	            int alt122=2;
            	            switch ( LA(1) )
            	            {
            	                case NOT_SYMBOL:
            	                	{
            	                		alt122=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt122)
            	            {
            	        	case 1:
            	        	    // MySQL.g:809:32: NOT_SYMBOL
            	        	    {
            	        	        NOT_SYMBOL394 = (pANTLR3_COMMON_TOKEN) MATCHT(NOT_SYMBOL, &FOLLOW_NOT_SYMBOL_in_create_event_tail2327);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecreate_event_tailEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        NOT_SYMBOL394_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NOT_SYMBOL394));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, NOT_SYMBOL394_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        PRESERVE_SYMBOL395 = (pANTLR3_COMMON_TOKEN) MATCHT(PRESERVE_SYMBOL, &FOLLOW_PRESERVE_SYMBOL_in_create_event_tail2330);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_event_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        PRESERVE_SYMBOL395_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PRESERVE_SYMBOL395));
            	        ADAPTOR->addChild(ADAPTOR, root_0, PRESERVE_SYMBOL395_tree);
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:810:3: ( ENABLE_SYMBOL | DISABLE_SYMBOL ( ON_SYMBOL SLAVE_SYMBOL )? )?
            {
                int alt125=3;
                switch ( LA(1) )
                {
                    case ENABLE_SYMBOL:
                    	{
                    		alt125=1;
                    	}
                        break;
                    case DISABLE_SYMBOL:
                    	{
                    		alt125=2;
                    	}
                        break;
                }

                switch (alt125)
                {
            	case 1:
            	    // MySQL.g:810:4: ENABLE_SYMBOL
            	    {
            	        ENABLE_SYMBOL396 = (pANTLR3_COMMON_TOKEN) MATCHT(ENABLE_SYMBOL, &FOLLOW_ENABLE_SYMBOL_in_create_event_tail2337);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_event_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ENABLE_SYMBOL396_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ENABLE_SYMBOL396));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ENABLE_SYMBOL396_tree);
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:810:20: DISABLE_SYMBOL ( ON_SYMBOL SLAVE_SYMBOL )?
            	    {
            	        DISABLE_SYMBOL397 = (pANTLR3_COMMON_TOKEN) MATCHT(DISABLE_SYMBOL, &FOLLOW_DISABLE_SYMBOL_in_create_event_tail2341);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_event_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DISABLE_SYMBOL397_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DISABLE_SYMBOL397));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DISABLE_SYMBOL397_tree);
            	        }

            	        // MySQL.g:810:35: ( ON_SYMBOL SLAVE_SYMBOL )?
            	        {
            	            int alt124=2;
            	            switch ( LA(1) )
            	            {
            	                case ON_SYMBOL:
            	                	{
            	                		alt124=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt124)
            	            {
            	        	case 1:
            	        	    // MySQL.g:810:36: ON_SYMBOL SLAVE_SYMBOL
            	        	    {
            	        	        ON_SYMBOL398 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_create_event_tail2344);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecreate_event_tailEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        ON_SYMBOL398_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ON_SYMBOL398));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, ON_SYMBOL398_tree);
            	        	        }

            	        	        SLAVE_SYMBOL399 = (pANTLR3_COMMON_TOKEN) MATCHT(SLAVE_SYMBOL, &FOLLOW_SLAVE_SYMBOL_in_create_event_tail2346);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecreate_event_tailEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        SLAVE_SYMBOL399_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SLAVE_SYMBOL399));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, SLAVE_SYMBOL399_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:811:3: ( COMMENT_SYMBOL string_literal )?
            {
                int alt126=2;
                switch ( LA(1) )
                {
                    case COMMENT_SYMBOL:
                    	{
                    		alt126=1;
                    	}
                        break;
                }

                switch (alt126)
                {
            	case 1:
            	    // MySQL.g:811:4: COMMENT_SYMBOL string_literal
            	    {
            	        COMMENT_SYMBOL400 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMENT_SYMBOL, &FOLLOW_COMMENT_SYMBOL_in_create_event_tail2355);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_event_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMENT_SYMBOL400_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMENT_SYMBOL400));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMENT_SYMBOL400_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_string_literal_in_create_event_tail2357);
            	        string_literal401=string_literal(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_event_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal401.tree);

            	    }
            	    break;

                }
            }

            DO_SYMBOL402 = (pANTLR3_COMMON_TOKEN) MATCHT(DO_SYMBOL, &FOLLOW_DO_SYMBOL_in_create_event_tail2363);
            if  (HASEXCEPTION())
            {
                goto rulecreate_event_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            DO_SYMBOL402_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DO_SYMBOL402));
            ADAPTOR->addChild(ADAPTOR, root_0, DO_SYMBOL402_tree);
            }

            FOLLOWPUSH(FOLLOW_compound_statement_in_create_event_tail2365);
            compound_statement403=compound_statement(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_event_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, compound_statement403.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:815: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_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_create_routine_or_udf_return create_routine_or_udf405;
    #undef	RETURN_TYPE_create_routine_or_udf405
    #define	RETURN_TYPE_create_routine_or_udf405 MySQLParser_create_routine_or_udf_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;

    create_routine_or_udf405.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SEMICOLON_SYMBOL406_tree   = NULL;
    EOF407_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:815:15: ( create_with_definer create_routine_or_udf ( SEMICOLON_SYMBOL )? EOF )
        // MySQL.g:816: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_routine2375);
            create_with_definer404=create_with_definer(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_routineEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_with_definer404.tree);

            FOLLOWPUSH(FOLLOW_create_routine_or_udf_in_create_routine2377);
            create_routine_or_udf405=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_udf405.tree);

            // MySQL.g:816:44: ( SEMICOLON_SYMBOL )?
            {
                int alt127=2;
                switch ( LA(1) )
                {
                    case SEMICOLON_SYMBOL:
                    	{
                    		alt127=1;
                    	}
                        break;
                }

                switch (alt127)
                {
            	case 1:
            	    // MySQL.g:816:44: SEMICOLON_SYMBOL
            	    {
            	        SEMICOLON_SYMBOL406 = (pANTLR3_COMMON_TOKEN) MATCHT(SEMICOLON_SYMBOL, &FOLLOW_SEMICOLON_SYMBOL_in_create_routine2379);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_routineEx;
            	        }
            	        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_routine2382);
            if  (HASEXCEPTION())
            {
                goto rulecreate_routineEx;
            }
            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_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:819: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_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_procedure_body_return procedure_body409;
    #undef	RETURN_TYPE_procedure_body409
    #define	RETURN_TYPE_procedure_body409 MySQLParser_procedure_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;

    procedure_body409.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SEMICOLON_SYMBOL410_tree   = NULL;
    EOF411_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:819:17: ( create_with_definer procedure_body ( SEMICOLON_SYMBOL )? EOF )
        // MySQL.g:820:2: create_with_definer procedure_body ( SEMICOLON_SYMBOL )? EOF
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_create_with_definer_in_create_procedure2392);
            create_with_definer408=create_with_definer(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_procedureEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_with_definer408.tree);

            FOLLOWPUSH(FOLLOW_procedure_body_in_create_procedure2394);
            procedure_body409=procedure_body(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_procedureEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, procedure_body409.tree);

            // MySQL.g:820:37: ( SEMICOLON_SYMBOL )?
            {
                int alt128=2;
                switch ( LA(1) )
                {
                    case SEMICOLON_SYMBOL:
                    	{
                    		alt128=1;
                    	}
                        break;
                }

                switch (alt128)
                {
            	case 1:
            	    // MySQL.g:820:37: SEMICOLON_SYMBOL
            	    {
            	        SEMICOLON_SYMBOL410 = (pANTLR3_COMMON_TOKEN) MATCHT(SEMICOLON_SYMBOL, &FOLLOW_SEMICOLON_SYMBOL_in_create_procedure2396);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_procedureEx;
            	        }
            	        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_procedure2399);
            if  (HASEXCEPTION())
            {
                goto rulecreate_procedureEx;
            }
            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_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:823: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_SYMBOL414;
    pANTLR3_COMMON_TOKEN    EOF415;
    MySQLParser_create_with_definer_return create_with_definer412;
    #undef	RETURN_TYPE_create_with_definer412
    #define	RETURN_TYPE_create_with_definer412 MySQLParser_create_with_definer_return

    MySQLParser_function_body_return function_body413;
    #undef	RETURN_TYPE_function_body413
    #define	RETURN_TYPE_function_body413 MySQLParser_function_body_return

    pANTLR3_BASE_TREE SEMICOLON_SYMBOL414_tree;
    pANTLR3_BASE_TREE EOF415_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SEMICOLON_SYMBOL414       = NULL;
    EOF415       = NULL;
    create_with_definer412.tree = NULL;

    function_body413.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SEMICOLON_SYMBOL414_tree   = NULL;
    EOF415_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:823:16: ( create_with_definer function_body ( SEMICOLON_SYMBOL )? EOF )
        // MySQL.g:824:2: create_with_definer function_body ( SEMICOLON_SYMBOL )? EOF
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_create_with_definer_in_create_function2409);
            create_with_definer412=create_with_definer(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_functionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_with_definer412.tree);

            FOLLOWPUSH(FOLLOW_function_body_in_create_function2411);
            function_body413=function_body(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_functionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, function_body413.tree);

            // MySQL.g:824:36: ( SEMICOLON_SYMBOL )?
            {
                int alt129=2;
                switch ( LA(1) )
                {
                    case SEMICOLON_SYMBOL:
                    	{
                    		alt129=1;
                    	}
                        break;
                }

                switch (alt129)
                {
            	case 1:
            	    // MySQL.g:824:36: SEMICOLON_SYMBOL
            	    {
            	        SEMICOLON_SYMBOL414 = (pANTLR3_COMMON_TOKEN) MATCHT(SEMICOLON_SYMBOL, &FOLLOW_SEMICOLON_SYMBOL_in_create_function2413);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SEMICOLON_SYMBOL414_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SEMICOLON_SYMBOL414));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SEMICOLON_SYMBOL414_tree);
            	        }

            	    }
            	    break;

                }
            }

            EOF415 = (pANTLR3_COMMON_TOKEN) MATCHT(EOF, &FOLLOW_EOF_in_create_function2416);
            if  (HASEXCEPTION())
            {
                goto rulecreate_functionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EOF415_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EOF415));
            ADAPTOR->addChild(ADAPTOR, root_0, EOF415_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:827: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_body416;
    #undef	RETURN_TYPE_procedure_body416
    #define	RETURN_TYPE_procedure_body416 MySQLParser_procedure_body_return

    MySQLParser_function_body_return function_body417;
    #undef	RETURN_TYPE_function_body417
    #define	RETURN_TYPE_function_body417 MySQLParser_function_body_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    procedure_body416.tree = NULL;

    function_body417.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:827:22: ( procedure_body | function_body )

            ANTLR3_UINT32 alt130;

            alt130=2;

            switch ( LA(1) )
            {
            case PROCEDURE_SYMBOL:
            	{
            		alt130=1;
            	}
                break;
            case AGGREGATE_SYMBOL:
            case FUNCTION_SYMBOL:
            	{
            		alt130=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 130;
                EXCEPTION->state        = 0;


                goto rulecreate_routine_or_udfEx;

            }

            switch (alt130)
            {
        	case 1:
        	    // MySQL.g:828:2: procedure_body
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_procedure_body_in_create_routine_or_udf2425);
        	        procedure_body416=procedure_body(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_routine_or_udfEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, procedure_body416.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:829:4: function_body
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_function_body_in_create_routine_or_udf2430);
        	        function_body417=function_body(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_routine_or_udfEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, function_body417.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:832: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_SYMBOL418;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL420;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL422;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL424;
    MySQLParser_procedure_name_return procedure_name419;
    #undef	RETURN_TYPE_procedure_name419
    #define	RETURN_TYPE_procedure_name419 MySQLParser_procedure_name_return

    MySQLParser_procedure_parameter_return procedure_parameter421;
    #undef	RETURN_TYPE_procedure_parameter421
    #define	RETURN_TYPE_procedure_parameter421 MySQLParser_procedure_parameter_return

    MySQLParser_procedure_parameter_return procedure_parameter423;
    #undef	RETURN_TYPE_procedure_parameter423
    #define	RETURN_TYPE_procedure_parameter423 MySQLParser_procedure_parameter_return

    MySQLParser_routine_create_options_return routine_create_options425;
    #undef	RETURN_TYPE_routine_create_options425
    #define	RETURN_TYPE_routine_create_options425 MySQLParser_routine_create_options_return

    MySQLParser_compound_statement_return compound_statement426;
    #undef	RETURN_TYPE_compound_statement426
    #define	RETURN_TYPE_compound_statement426 MySQLParser_compound_statement_return

    pANTLR3_BASE_TREE PROCEDURE_SYMBOL418_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL420_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL422_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL424_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    PROCEDURE_SYMBOL418       = NULL;
    OPEN_PAR_SYMBOL420       = NULL;
    COMMA_SYMBOL422       = NULL;
    CLOSE_PAR_SYMBOL424       = NULL;
    procedure_name419.tree = NULL;

    procedure_parameter421.tree = NULL;

    procedure_parameter423.tree = NULL;

    routine_create_options425.tree = NULL;

    compound_statement426.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    PROCEDURE_SYMBOL418_tree   = NULL;
    OPEN_PAR_SYMBOL420_tree   = NULL;
    COMMA_SYMBOL422_tree   = NULL;
    CLOSE_PAR_SYMBOL424_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:832:15: ( PROCEDURE_SYMBOL procedure_name OPEN_PAR_SYMBOL ( procedure_parameter ( COMMA_SYMBOL procedure_parameter )* )? CLOSE_PAR_SYMBOL ( routine_create_options )? compound_statement )
        // MySQL.g:833: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_SYMBOL418 = (pANTLR3_COMMON_TOKEN) MATCHT(PROCEDURE_SYMBOL, &FOLLOW_PROCEDURE_SYMBOL_in_procedure_body2439);
            if  (HASEXCEPTION())
            {
                goto ruleprocedure_bodyEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            PROCEDURE_SYMBOL418_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PROCEDURE_SYMBOL418));
            ADAPTOR->addChild(ADAPTOR, root_0, PROCEDURE_SYMBOL418_tree);
            }

            FOLLOWPUSH(FOLLOW_procedure_name_in_procedure_body2441);
            procedure_name419=procedure_name(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleprocedure_bodyEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, procedure_name419.tree);

            OPEN_PAR_SYMBOL420 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_procedure_body2443);
            if  (HASEXCEPTION())
            {
                goto ruleprocedure_bodyEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL420_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL420));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL420_tree);
            }

            // MySQL.g:833:50: ( procedure_parameter ( COMMA_SYMBOL procedure_parameter )* )?
            {
                int alt132=2;
                {
                    int LA132_0 = LA(1);
                    if ( (((LA132_0 >= ACCOUNT_SYMBOL) && (LA132_0 <= YEAR_SYMBOL)) || LA132_0 == INOUT_SYMBOL || LA132_0 == IN_SYMBOL || LA132_0 == OUT_SYMBOL || LA132_0 == BACK_TICK_QUOTED_ID || LA132_0 == DOUBLE_QUOTED_TEXT || LA132_0 == IDENTIFIER))
                    {
                        alt132=1;
                    }
                }
                switch (alt132)
                {
            	case 1:
            	    // MySQL.g:833:51: procedure_parameter ( COMMA_SYMBOL procedure_parameter )*
            	    {
            	        FOLLOWPUSH(FOLLOW_procedure_parameter_in_procedure_body2446);
            	        procedure_parameter421=procedure_parameter(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprocedure_bodyEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, procedure_parameter421.tree);

            	        // MySQL.g:833:71: ( COMMA_SYMBOL procedure_parameter )*

            	        for (;;)
            	        {
            	            int alt131=2;
            	            switch ( LA(1) )
            	            {
            	            case COMMA_SYMBOL:
            	            	{
            	            		alt131=1;
            	            	}
            	                break;

            	            }

            	            switch (alt131)
            	            {
            	        	case 1:
            	        	    // MySQL.g:833:72: COMMA_SYMBOL procedure_parameter
            	        	    {
            	        	        COMMA_SYMBOL422 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_procedure_body2449);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleprocedure_bodyEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        COMMA_SYMBOL422_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL422));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL422_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_procedure_parameter_in_procedure_body2451);
            	        	        procedure_parameter423=procedure_parameter(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleprocedure_bodyEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, procedure_parameter423.tree);

            	        	    }
            	        	    break;

            	        	default:
            	        	    goto loop131;	/* break out of the loop */
            	        	    break;
            	            }
            	        }
            	        loop131: ; /* Jump out to here if this rule does not match */


            	    }
            	    break;

                }
            }

            CLOSE_PAR_SYMBOL424 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_procedure_body2457);
            if  (HASEXCEPTION())
            {
                goto ruleprocedure_bodyEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL424_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL424));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL424_tree);
            }

            // MySQL.g:834:3: ( routine_create_options )?
            {
                int alt133=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:
                    	{
                    		alt133=1;
                    	}
                        break;
                }

                switch (alt133)
                {
            	case 1:
            	    // MySQL.g:834:3: routine_create_options
            	    {
            	        FOLLOWPUSH(FOLLOW_routine_create_options_in_procedure_body2461);
            	        routine_create_options425=routine_create_options(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprocedure_bodyEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, routine_create_options425.tree);

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_compound_statement_in_procedure_body2464);
            compound_statement426=compound_statement(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleprocedure_bodyEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, compound_statement426.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:837: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_SYMBOL427;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL429;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL431;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL433;
    pANTLR3_COMMON_TOKEN    RETURNS_SYMBOL434;
    pANTLR3_COMMON_TOKEN    AGGREGATE_SYMBOL439;
    pANTLR3_COMMON_TOKEN    FUNCTION_SYMBOL440;
    MySQLParser_function_name_return function_name428;
    #undef	RETURN_TYPE_function_name428
    #define	RETURN_TYPE_function_name428 MySQLParser_function_name_return

    MySQLParser_function_parameter_return function_parameter430;
    #undef	RETURN_TYPE_function_parameter430
    #define	RETURN_TYPE_function_parameter430 MySQLParser_function_parameter_return

    MySQLParser_function_parameter_return function_parameter432;
    #undef	RETURN_TYPE_function_parameter432
    #define	RETURN_TYPE_function_parameter432 MySQLParser_function_parameter_return

    MySQLParser_data_type_return data_type435;
    #undef	RETURN_TYPE_data_type435
    #define	RETURN_TYPE_data_type435 MySQLParser_data_type_return

    MySQLParser_routine_create_options_return routine_create_options436;
    #undef	RETURN_TYPE_routine_create_options436
    #define	RETURN_TYPE_routine_create_options436 MySQLParser_routine_create_options_return

    MySQLParser_compound_statement_return compound_statement437;
    #undef	RETURN_TYPE_compound_statement437
    #define	RETURN_TYPE_compound_statement437 MySQLParser_compound_statement_return

    MySQLParser_udf_tail_return udf_tail438;
    #undef	RETURN_TYPE_udf_tail438
    #define	RETURN_TYPE_udf_tail438 MySQLParser_udf_tail_return

    MySQLParser_udf_tail_return udf_tail441;
    #undef	RETURN_TYPE_udf_tail441
    #define	RETURN_TYPE_udf_tail441 MySQLParser_udf_tail_return

    pANTLR3_BASE_TREE FUNCTION_SYMBOL427_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL429_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL431_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL433_tree;
    pANTLR3_BASE_TREE RETURNS_SYMBOL434_tree;
    pANTLR3_BASE_TREE AGGREGATE_SYMBOL439_tree;
    pANTLR3_BASE_TREE FUNCTION_SYMBOL440_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    FUNCTION_SYMBOL427       = NULL;
    OPEN_PAR_SYMBOL429       = NULL;
    COMMA_SYMBOL431       = NULL;
    CLOSE_PAR_SYMBOL433       = NULL;
    RETURNS_SYMBOL434       = NULL;
    AGGREGATE_SYMBOL439       = NULL;
    FUNCTION_SYMBOL440       = NULL;
    function_name428.tree = NULL;

    function_parameter430.tree = NULL;

    function_parameter432.tree = NULL;

    data_type435.tree = NULL;

    routine_create_options436.tree = NULL;

    compound_statement437.tree = NULL;

    udf_tail438.tree = NULL;

    udf_tail441.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    FUNCTION_SYMBOL427_tree   = NULL;
    OPEN_PAR_SYMBOL429_tree   = NULL;
    COMMA_SYMBOL431_tree   = NULL;
    CLOSE_PAR_SYMBOL433_tree   = NULL;
    RETURNS_SYMBOL434_tree   = NULL;
    AGGREGATE_SYMBOL439_tree   = NULL;
    FUNCTION_SYMBOL440_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:837: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 alt138;

            alt138=2;

            switch ( LA(1) )
            {
            case FUNCTION_SYMBOL:
            	{
            		alt138=1;
            	}
                break;
            case AGGREGATE_SYMBOL:
            	{
            		alt138=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 138;
                EXCEPTION->state        = 0;


                goto rulefunction_bodyEx;

            }

            switch (alt138)
            {
        	case 1:
        	    // MySQL.g:838: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_SYMBOL427 = (pANTLR3_COMMON_TOKEN) MATCHT(FUNCTION_SYMBOL, &FOLLOW_FUNCTION_SYMBOL_in_function_body2474);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_bodyEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FUNCTION_SYMBOL427_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FUNCTION_SYMBOL427));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FUNCTION_SYMBOL427_tree);
        	        }

        	        // MySQL.g:839: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 alt137=2;
        	            {
        	                int LA137_0 = LA(1);
        	                if ( (LA137_0 == IDENTIFIER))
        	                {
        	                    switch ( LA(2) )
        	                    {
        	                    case OPEN_PAR_SYMBOL:
        	                    case DOT_SYMBOL:
        	                    	{
        	                    		alt137=1;
        	                    	}
        	                        break;
        	                    case RETURNS_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        = 1;


        	                        goto rulefunction_bodyEx;

        	                    }

        	                }
        	                else if ( (LA137_0 == BACK_TICK_QUOTED_ID))
        	                {
        	                    switch ( LA(2) )
        	                    {
        	                    case OPEN_PAR_SYMBOL:
        	                    case DOT_SYMBOL:
        	                    	{
        	                    		alt137=1;
        	                    	}
        	                        break;
        	                    case RETURNS_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        = 2;


        	                        goto rulefunction_bodyEx;

        	                    }

        	                }
        	                else if ( (LA137_0 == DOUBLE_QUOTED_TEXT))
        	                {
        	                    switch ( LA(2) )
        	                    {
        	                    case OPEN_PAR_SYMBOL:
        	                    case DOT_SYMBOL:
        	                    	{
        	                    		alt137=1;
        	                    	}
        	                        break;
        	                    case RETURNS_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        = 3;


        	                        goto rulefunction_bodyEx;

        	                    }

        	                }
        	                else if ( (((LA137_0 >= ACTION_SYMBOL) && (LA137_0 <= SHARE_SYMBOL)) || ((LA137_0 >= SLOW_SYMBOL) && (LA137_0 <= YEAR_SYMBOL))))
        	                {
        	                    switch ( LA(2) )
        	                    {
        	                    case OPEN_PAR_SYMBOL:
        	                    case DOT_SYMBOL:
        	                    	{
        	                    		alt137=1;
        	                    	}
        	                        break;
        	                    case RETURNS_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        = 4;


        	                        goto rulefunction_bodyEx;

        	                    }

        	                }
        	                else if ( (((LA137_0 >= ACCOUNT_SYMBOL) && (LA137_0 <= XA_SYMBOL)) || LA137_0 == SHUTDOWN_SYMBOL))
        	                {
        	                    switch ( LA(2) )
        	                    {
        	                    case OPEN_PAR_SYMBOL:
        	                    case DOT_SYMBOL:
        	                    	{
        	                    		alt137=1;
        	                    	}
        	                        break;
        	                    case RETURNS_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        = 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  = 137;
        	                    EXCEPTION->state        = 0;


        	                    goto rulefunction_bodyEx;

        	                }
        	            }
        	            switch (alt137)
        	            {
        	        	case 1:
        	        	    // MySQL.g:840: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_body2481);
        	        	        function_name428=function_name(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefunction_bodyEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, function_name428.tree);

        	        	        OPEN_PAR_SYMBOL429 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_function_body2483);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefunction_bodyEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        OPEN_PAR_SYMBOL429_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL429));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL429_tree);
        	        	        }

        	        	        // MySQL.g:840:33: ( function_parameter ( COMMA_SYMBOL function_parameter )* )?
        	        	        {
        	        	            int alt135=2;
        	        	            {
        	        	                int LA135_0 = LA(1);
        	        	                if ( (((LA135_0 >= ACCOUNT_SYMBOL) && (LA135_0 <= YEAR_SYMBOL)) || LA135_0 == BACK_TICK_QUOTED_ID || LA135_0 == DOUBLE_QUOTED_TEXT || LA135_0 == IDENTIFIER))
        	        	                {
        	        	                    alt135=1;
        	        	                }
        	        	            }
        	        	            switch (alt135)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:840:34: function_parameter ( COMMA_SYMBOL function_parameter )*
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_function_parameter_in_function_body2486);
        	        	        	        function_parameter430=function_parameter(ctx);

        	        	        	        FOLLOWPOP();
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulefunction_bodyEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, function_parameter430.tree);

        	        	        	        // MySQL.g:840:53: ( COMMA_SYMBOL function_parameter )*

        	        	        	        for (;;)
        	        	        	        {
        	        	        	            int alt134=2;
        	        	        	            switch ( LA(1) )
        	        	        	            {
        	        	        	            case COMMA_SYMBOL:
        	        	        	            	{
        	        	        	            		alt134=1;
        	        	        	            	}
        	        	        	                break;

        	        	        	            }

        	        	        	            switch (alt134)
        	        	        	            {
        	        	        	        	case 1:
        	        	        	        	    // MySQL.g:840:54: COMMA_SYMBOL function_parameter
        	        	        	        	    {
        	        	        	        	        COMMA_SYMBOL431 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_function_body2489);
        	        	        	        	        if  (HASEXCEPTION())
        	        	        	        	        {
        	        	        	        	            goto rulefunction_bodyEx;
        	        	        	        	        }
        	        	        	        	        if (HASFAILED())
        	        	        	        	        {
        	        	        	        	            return retval;
        	        	        	        	        }

        	        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        	        COMMA_SYMBOL431_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL431));
        	        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL431_tree);
        	        	        	        	        }

        	        	        	        	        FOLLOWPUSH(FOLLOW_function_parameter_in_function_body2491);
        	        	        	        	        function_parameter432=function_parameter(ctx);

        	        	        	        	        FOLLOWPOP();
        	        	        	        	        if  (HASEXCEPTION())
        	        	        	        	        {
        	        	        	        	            goto rulefunction_bodyEx;
        	        	        	        	        }
        	        	        	        	        if (HASFAILED())
        	        	        	        	        {
        	        	        	        	            return retval;
        	        	        	        	        }

        	        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, function_parameter432.tree);

        	        	        	        	    }
        	        	        	        	    break;

        	        	        	        	default:
        	        	        	        	    goto loop134;	/* break out of the loop */
        	        	        	        	    break;
        	        	        	            }
        	        	        	        }
        	        	        	        loop134: ; /* Jump out to here if this rule does not match */


        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        CLOSE_PAR_SYMBOL433 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_function_body2497);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefunction_bodyEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        CLOSE_PAR_SYMBOL433_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL433));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL433_tree);
        	        	        }

        	        	        RETURNS_SYMBOL434 = (pANTLR3_COMMON_TOKEN) MATCHT(RETURNS_SYMBOL, &FOLLOW_RETURNS_SYMBOL_in_function_body2499);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefunction_bodyEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        RETURNS_SYMBOL434_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RETURNS_SYMBOL434));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, RETURNS_SYMBOL434_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_data_type_in_function_body2504);
        	        	        data_type435=data_type(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefunction_bodyEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, data_type435.tree);

        	        	        // MySQL.g:841:14: ( routine_create_options )?
        	        	        {
        	        	            int alt136=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:
        	        	                	{
        	        	                		alt136=1;
        	        	                	}
        	        	                    break;
        	        	            }

        	        	            switch (alt136)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:841:14: routine_create_options
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_routine_create_options_in_function_body2506);
        	        	        	        routine_create_options436=routine_create_options(ctx);

        	        	        	        FOLLOWPOP();
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulefunction_bodyEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, routine_create_options436.tree);

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_compound_statement_in_function_body2509);
        	        	        compound_statement437=compound_statement(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefunction_bodyEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, compound_statement437.tree);

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:842:5: udf_tail
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_udf_tail_in_function_body2515);
        	        	        udf_tail438=udf_tail(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefunction_bodyEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, udf_tail438.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:844:4: AGGREGATE_SYMBOL FUNCTION_SYMBOL udf_tail
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        AGGREGATE_SYMBOL439 = (pANTLR3_COMMON_TOKEN) MATCHT(AGGREGATE_SYMBOL, &FOLLOW_AGGREGATE_SYMBOL_in_function_body2523);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_bodyEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        AGGREGATE_SYMBOL439_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AGGREGATE_SYMBOL439));
        	        ADAPTOR->addChild(ADAPTOR, root_0, AGGREGATE_SYMBOL439_tree);
        	        }

        	        FUNCTION_SYMBOL440 = (pANTLR3_COMMON_TOKEN) MATCHT(FUNCTION_SYMBOL, &FOLLOW_FUNCTION_SYMBOL_in_function_body2525);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_bodyEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FUNCTION_SYMBOL440_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FUNCTION_SYMBOL440));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FUNCTION_SYMBOL440_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_udf_tail_in_function_body2527);
        	        udf_tail441=udf_tail(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_bodyEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, udf_tail441.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:847: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_SYMBOL443;
    pANTLR3_COMMON_TOKEN    set444;
    pANTLR3_COMMON_TOKEN    SONAME_SYMBOL445;
    MySQLParser_udf_name_return udf_name442;
    #undef	RETURN_TYPE_udf_name442
    #define	RETURN_TYPE_udf_name442 MySQLParser_udf_name_return

    MySQLParser_string_literal_return string_literal446;
    #undef	RETURN_TYPE_string_literal446
    #define	RETURN_TYPE_string_literal446 MySQLParser_string_literal_return

    pANTLR3_BASE_TREE RETURNS_SYMBOL443_tree;
    pANTLR3_BASE_TREE set444_tree;
    pANTLR3_BASE_TREE SONAME_SYMBOL445_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    RETURNS_SYMBOL443       = NULL;
    set444       = NULL;
    SONAME_SYMBOL445       = NULL;
    udf_name442.tree = NULL;

    string_literal446.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    RETURNS_SYMBOL443_tree   = NULL;
    set444_tree   = NULL;
    SONAME_SYMBOL445_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:847:9: ( udf_name RETURNS_SYMBOL ( STRING_SYMBOL | INT_SYMBOL | REAL_SYMBOL | DECIMAL_SYMBOL ) SONAME_SYMBOL string_literal )
        // MySQL.g:848: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_tail2537);
            udf_name442=udf_name(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleudf_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, udf_name442.tree);

            RETURNS_SYMBOL443 = (pANTLR3_COMMON_TOKEN) MATCHT(RETURNS_SYMBOL, &FOLLOW_RETURNS_SYMBOL_in_udf_tail2539);
            if  (HASEXCEPTION())
            {
                goto ruleudf_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            RETURNS_SYMBOL443_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RETURNS_SYMBOL443));
            ADAPTOR->addChild(ADAPTOR, root_0, RETURNS_SYMBOL443_tree);
            }

            set444=(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, set444))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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_SYMBOL445 = (pANTLR3_COMMON_TOKEN) MATCHT(SONAME_SYMBOL, &FOLLOW_SONAME_SYMBOL_in_udf_tail2557);
            if  (HASEXCEPTION())
            {
                goto ruleudf_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            SONAME_SYMBOL445_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SONAME_SYMBOL445));
            ADAPTOR->addChild(ADAPTOR, root_0, SONAME_SYMBOL445_tree);
            }

            FOLLOWPUSH(FOLLOW_string_literal_in_udf_tail2559);
            string_literal446=string_literal(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleudf_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal446.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:851: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_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:851:23: ( ( routine_create_option )+ -> ^( ROUTINE_CREATE_OPTIONS ( routine_create_option )+ ) )
        // MySQL.g:852:2: ( routine_create_option )+
        {
            // MySQL.g:852:2: ( routine_create_option )+
            {
                int cnt139=0;

                for (;;)
                {
                    int alt139=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:
            		{
            			alt139=1;
            		}
            	    break;

            	}

            	switch (alt139)
            	{
            	    case 1:
            	        // MySQL.g:852:2: routine_create_option
            	        {
            	            FOLLOWPUSH(FOLLOW_routine_create_option_in_routine_create_options2568);
            	            routine_create_option447=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_option447.tree, NULL); }

            	        }
            	        break;

            	    default:

            		if ( cnt139 >= 1 )
            		{
            		    goto loop139;
            		}
            		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;
            	}
            	cnt139++;
                }
                loop139: ;	/* 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;
            	// 852:25: -> ^( ROUTINE_CREATE_OPTIONS ( routine_create_option )+ )
            	{
            	    // MySQL.g:852: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:855: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_SYMBOL449;
    pANTLR3_COMMON_TOKEN    DETERMINISTIC_SYMBOL450;
    MySQLParser_routine_option_return routine_option448;
    #undef	RETURN_TYPE_routine_option448
    #define	RETURN_TYPE_routine_option448 MySQLParser_routine_option_return

    pANTLR3_BASE_TREE NOT_SYMBOL449_tree;
    pANTLR3_BASE_TREE DETERMINISTIC_SYMBOL450_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    NOT_SYMBOL449       = NULL;
    DETERMINISTIC_SYMBOL450       = NULL;
    routine_option448.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    NOT_SYMBOL449_tree   = NULL;
    DETERMINISTIC_SYMBOL450_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:855:22: ( routine_option | ( NOT_SYMBOL )? DETERMINISTIC_SYMBOL )

            ANTLR3_UINT32 alt141;

            alt141=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:
            	{
            		alt141=1;
            	}
                break;
            case DETERMINISTIC_SYMBOL:
            case NOT_SYMBOL:
            	{
            		alt141=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 141;
                EXCEPTION->state        = 0;


                goto ruleroutine_create_optionEx;

            }

            switch (alt141)
            {
        	case 1:
        	    // MySQL.g:856:2: routine_option
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_routine_option_in_routine_create_option2588);
        	        routine_option448=routine_option(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleroutine_create_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, routine_option448.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:857:4: ( NOT_SYMBOL )? DETERMINISTIC_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:857:4: ( NOT_SYMBOL )?
        	        {
        	            int alt140=2;
        	            switch ( LA(1) )
        	            {
        	                case NOT_SYMBOL:
        	                	{
        	                		alt140=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt140)
        	            {
        	        	case 1:
        	        	    // MySQL.g:857:4: NOT_SYMBOL
        	        	    {
        	        	        NOT_SYMBOL449 = (pANTLR3_COMMON_TOKEN) MATCHT(NOT_SYMBOL, &FOLLOW_NOT_SYMBOL_in_routine_create_option2593);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleroutine_create_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        NOT_SYMBOL449_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NOT_SYMBOL449));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, NOT_SYMBOL449_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        DETERMINISTIC_SYMBOL450 = (pANTLR3_COMMON_TOKEN) MATCHT(DETERMINISTIC_SYMBOL, &FOLLOW_DETERMINISTIC_SYMBOL_in_routine_create_option2596);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleroutine_create_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DETERMINISTIC_SYMBOL450_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DETERMINISTIC_SYMBOL450));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DETERMINISTIC_SYMBOL450_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:860: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_option451;
    #undef	RETURN_TYPE_routine_create_option451
    #define	RETURN_TYPE_routine_create_option451 MySQLParser_routine_create_option_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_routine_create_option;
    /* Initialize rule variables
     */

    root_0 = NULL;

    routine_create_option451.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:860:22: ( ( routine_create_option )+ -> ^( ROUTINE_ALTER_OPTIONS ( routine_create_option )+ ) )
        // MySQL.g:861:2: ( routine_create_option )+
        {
            // MySQL.g:861:2: ( routine_create_option )+
            {
                int cnt142=0;

                for (;;)
                {
                    int alt142=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:
            		{
            			alt142=1;
            		}
            	    break;

            	}

            	switch (alt142)
            	{
            	    case 1:
            	        // MySQL.g:861:2: routine_create_option
            	        {
            	            FOLLOWPUSH(FOLLOW_routine_create_option_in_routine_alter_options2605);
            	            routine_create_option451=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_option451.tree, NULL); }

            	        }
            	        break;

            	    default:

            		if ( cnt142 >= 1 )
            		{
            		    goto loop142;
            		}
            		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;
            	}
            	cnt142++;
                }
                loop142: ;	/* 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;
            	// 861:25: -> ^( ROUTINE_ALTER_OPTIONS ( routine_create_option )+ )
            	{
            	    // MySQL.g:861: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:864: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_SYMBOL452;
    pANTLR3_COMMON_TOKEN    LANGUAGE_SYMBOL454;
    pANTLR3_COMMON_TOKEN    SQL_SYMBOL455;
    pANTLR3_COMMON_TOKEN    NO_SYMBOL456;
    pANTLR3_COMMON_TOKEN    SQL_SYMBOL457;
    pANTLR3_COMMON_TOKEN    CONTAINS_SYMBOL458;
    pANTLR3_COMMON_TOKEN    SQL_SYMBOL459;
    pANTLR3_COMMON_TOKEN    READS_SYMBOL460;
    pANTLR3_COMMON_TOKEN    SQL_SYMBOL461;
    pANTLR3_COMMON_TOKEN    DATA_SYMBOL462;
    pANTLR3_COMMON_TOKEN    MODIFIES_SYMBOL463;
    pANTLR3_COMMON_TOKEN    SQL_SYMBOL464;
    pANTLR3_COMMON_TOKEN    DATA_SYMBOL465;
    pANTLR3_COMMON_TOKEN    SQL_SYMBOL466;
    pANTLR3_COMMON_TOKEN    SECURITY_SYMBOL467;
    pANTLR3_COMMON_TOKEN    set468;
    MySQLParser_string_literal_return string_literal453;
    #undef	RETURN_TYPE_string_literal453
    #define	RETURN_TYPE_string_literal453 MySQLParser_string_literal_return

    pANTLR3_BASE_TREE COMMENT_SYMBOL452_tree;
    pANTLR3_BASE_TREE LANGUAGE_SYMBOL454_tree;
    pANTLR3_BASE_TREE SQL_SYMBOL455_tree;
    pANTLR3_BASE_TREE NO_SYMBOL456_tree;
    pANTLR3_BASE_TREE SQL_SYMBOL457_tree;
    pANTLR3_BASE_TREE CONTAINS_SYMBOL458_tree;
    pANTLR3_BASE_TREE SQL_SYMBOL459_tree;
    pANTLR3_BASE_TREE READS_SYMBOL460_tree;
    pANTLR3_BASE_TREE SQL_SYMBOL461_tree;
    pANTLR3_BASE_TREE DATA_SYMBOL462_tree;
    pANTLR3_BASE_TREE MODIFIES_SYMBOL463_tree;
    pANTLR3_BASE_TREE SQL_SYMBOL464_tree;
    pANTLR3_BASE_TREE DATA_SYMBOL465_tree;
    pANTLR3_BASE_TREE SQL_SYMBOL466_tree;
    pANTLR3_BASE_TREE SECURITY_SYMBOL467_tree;
    pANTLR3_BASE_TREE set468_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMENT_SYMBOL452       = NULL;
    LANGUAGE_SYMBOL454       = NULL;
    SQL_SYMBOL455       = NULL;
    NO_SYMBOL456       = NULL;
    SQL_SYMBOL457       = NULL;
    CONTAINS_SYMBOL458       = NULL;
    SQL_SYMBOL459       = NULL;
    READS_SYMBOL460       = NULL;
    SQL_SYMBOL461       = NULL;
    DATA_SYMBOL462       = NULL;
    MODIFIES_SYMBOL463       = NULL;
    SQL_SYMBOL464       = NULL;
    DATA_SYMBOL465       = NULL;
    SQL_SYMBOL466       = NULL;
    SECURITY_SYMBOL467       = NULL;
    set468       = NULL;
    string_literal453.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMENT_SYMBOL452_tree   = NULL;
    LANGUAGE_SYMBOL454_tree   = NULL;
    SQL_SYMBOL455_tree   = NULL;
    NO_SYMBOL456_tree   = NULL;
    SQL_SYMBOL457_tree   = NULL;
    CONTAINS_SYMBOL458_tree   = NULL;
    SQL_SYMBOL459_tree   = NULL;
    READS_SYMBOL460_tree   = NULL;
    SQL_SYMBOL461_tree   = NULL;
    DATA_SYMBOL462_tree   = NULL;
    MODIFIES_SYMBOL463_tree   = NULL;
    SQL_SYMBOL464_tree   = NULL;
    DATA_SYMBOL465_tree   = NULL;
    SQL_SYMBOL466_tree   = NULL;
    SECURITY_SYMBOL467_tree   = NULL;
    set468_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:864: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 alt143;

            alt143=7;

            switch ( LA(1) )
            {
            case COMMENT_SYMBOL:
            	{
            		alt143=1;
            	}
                break;
            case LANGUAGE_SYMBOL:
            	{
            		alt143=2;
            	}
                break;
            case NO_SYMBOL:
            	{
            		alt143=3;
            	}
                break;
            case CONTAINS_SYMBOL:
            	{
            		alt143=4;
            	}
                break;
            case READS_SYMBOL:
            	{
            		alt143=5;
            	}
                break;
            case MODIFIES_SYMBOL:
            	{
            		alt143=6;
            	}
                break;
            case SQL_SYMBOL:
            	{
            		alt143=7;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 143;
                EXCEPTION->state        = 0;


                goto ruleroutine_optionEx;

            }

            switch (alt143)
            {
        	case 1:
        	    // MySQL.g:865:2: COMMENT_SYMBOL string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        COMMENT_SYMBOL452 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMENT_SYMBOL, &FOLLOW_COMMENT_SYMBOL_in_routine_option2625);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleroutine_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMENT_SYMBOL452_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMENT_SYMBOL452));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMENT_SYMBOL452_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_routine_option2627);
        	        string_literal453=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleroutine_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal453.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:866:4: LANGUAGE_SYMBOL SQL_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        LANGUAGE_SYMBOL454 = (pANTLR3_COMMON_TOKEN) MATCHT(LANGUAGE_SYMBOL, &FOLLOW_LANGUAGE_SYMBOL_in_routine_option2632);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleroutine_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LANGUAGE_SYMBOL454_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LANGUAGE_SYMBOL454));
        	        ADAPTOR->addChild(ADAPTOR, root_0, LANGUAGE_SYMBOL454_tree);
        	        }

        	        SQL_SYMBOL455 = (pANTLR3_COMMON_TOKEN) MATCHT(SQL_SYMBOL, &FOLLOW_SQL_SYMBOL_in_routine_option2634);
        	        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 3:
        	    // MySQL.g:867:4: NO_SYMBOL SQL_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NO_SYMBOL456 = (pANTLR3_COMMON_TOKEN) MATCHT(NO_SYMBOL, &FOLLOW_NO_SYMBOL_in_routine_option2639);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleroutine_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NO_SYMBOL456_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NO_SYMBOL456));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NO_SYMBOL456_tree);
        	        }

        	        SQL_SYMBOL457 = (pANTLR3_COMMON_TOKEN) MATCHT(SQL_SYMBOL, &FOLLOW_SQL_SYMBOL_in_routine_option2641);
        	        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);
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:868:4: CONTAINS_SYMBOL SQL_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CONTAINS_SYMBOL458 = (pANTLR3_COMMON_TOKEN) MATCHT(CONTAINS_SYMBOL, &FOLLOW_CONTAINS_SYMBOL_in_routine_option2646);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleroutine_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CONTAINS_SYMBOL458_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CONTAINS_SYMBOL458));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CONTAINS_SYMBOL458_tree);
        	        }

        	        SQL_SYMBOL459 = (pANTLR3_COMMON_TOKEN) MATCHT(SQL_SYMBOL, &FOLLOW_SQL_SYMBOL_in_routine_option2648);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleroutine_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SQL_SYMBOL459_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SQL_SYMBOL459));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SQL_SYMBOL459_tree);
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:869:4: READS_SYMBOL SQL_SYMBOL DATA_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        READS_SYMBOL460 = (pANTLR3_COMMON_TOKEN) MATCHT(READS_SYMBOL, &FOLLOW_READS_SYMBOL_in_routine_option2653);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleroutine_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        READS_SYMBOL460_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, READS_SYMBOL460));
        	        ADAPTOR->addChild(ADAPTOR, root_0, READS_SYMBOL460_tree);
        	        }

        	        SQL_SYMBOL461 = (pANTLR3_COMMON_TOKEN) MATCHT(SQL_SYMBOL, &FOLLOW_SQL_SYMBOL_in_routine_option2655);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleroutine_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SQL_SYMBOL461_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SQL_SYMBOL461));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SQL_SYMBOL461_tree);
        	        }

        	        DATA_SYMBOL462 = (pANTLR3_COMMON_TOKEN) MATCHT(DATA_SYMBOL, &FOLLOW_DATA_SYMBOL_in_routine_option2657);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleroutine_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DATA_SYMBOL462_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATA_SYMBOL462));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DATA_SYMBOL462_tree);
        	        }

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:870:4: MODIFIES_SYMBOL SQL_SYMBOL DATA_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MODIFIES_SYMBOL463 = (pANTLR3_COMMON_TOKEN) MATCHT(MODIFIES_SYMBOL, &FOLLOW_MODIFIES_SYMBOL_in_routine_option2662);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleroutine_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MODIFIES_SYMBOL463_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MODIFIES_SYMBOL463));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MODIFIES_SYMBOL463_tree);
        	        }

        	        SQL_SYMBOL464 = (pANTLR3_COMMON_TOKEN) MATCHT(SQL_SYMBOL, &FOLLOW_SQL_SYMBOL_in_routine_option2664);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleroutine_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SQL_SYMBOL464_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SQL_SYMBOL464));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SQL_SYMBOL464_tree);
        	        }

        	        DATA_SYMBOL465 = (pANTLR3_COMMON_TOKEN) MATCHT(DATA_SYMBOL, &FOLLOW_DATA_SYMBOL_in_routine_option2666);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleroutine_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DATA_SYMBOL465_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATA_SYMBOL465));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DATA_SYMBOL465_tree);
        	        }

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:871:4: SQL_SYMBOL SECURITY_SYMBOL ( DEFINER_SYMBOL | INVOKER_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SQL_SYMBOL466 = (pANTLR3_COMMON_TOKEN) MATCHT(SQL_SYMBOL, &FOLLOW_SQL_SYMBOL_in_routine_option2671);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleroutine_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SQL_SYMBOL466_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SQL_SYMBOL466));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SQL_SYMBOL466_tree);
        	        }

        	        SECURITY_SYMBOL467 = (pANTLR3_COMMON_TOKEN) MATCHT(SECURITY_SYMBOL, &FOLLOW_SECURITY_SYMBOL_in_routine_option2673);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleroutine_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SECURITY_SYMBOL467_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SECURITY_SYMBOL467));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SECURITY_SYMBOL467_tree);
        	        }

        	        set468=(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, set468))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>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:874: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_SYMBOL469;
    pANTLR3_COMMON_TOKEN    SEMICOLON_SYMBOL471;
    pANTLR3_COMMON_TOKEN    EOF472;
    MySQLParser_create_index_tail_return create_index_tail470;
    #undef	RETURN_TYPE_create_index_tail470
    #define	RETURN_TYPE_create_index_tail470 MySQLParser_create_index_tail_return

    pANTLR3_BASE_TREE CREATE_SYMBOL469_tree;
    pANTLR3_BASE_TREE SEMICOLON_SYMBOL471_tree;
    pANTLR3_BASE_TREE EOF472_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CREATE_SYMBOL469       = NULL;
    SEMICOLON_SYMBOL471       = NULL;
    EOF472       = NULL;
    create_index_tail470.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CREATE_SYMBOL469_tree   = NULL;
    SEMICOLON_SYMBOL471_tree   = NULL;
    EOF472_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:874:13: ( CREATE_SYMBOL ^ create_index_tail ( SEMICOLON_SYMBOL )? EOF )
        // MySQL.g:875:2: CREATE_SYMBOL ^ create_index_tail ( SEMICOLON_SYMBOL )? EOF
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            CREATE_SYMBOL469 = (pANTLR3_COMMON_TOKEN) MATCHT(CREATE_SYMBOL, &FOLLOW_CREATE_SYMBOL_in_create_index2691);
            if  (HASEXCEPTION())
            {
                goto rulecreate_indexEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CREATE_SYMBOL469_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CREATE_SYMBOL469))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, CREATE_SYMBOL469_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_create_index_tail_in_create_index2694);
            create_index_tail470=create_index_tail(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_indexEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_index_tail470.tree);

            // MySQL.g:875:35: ( SEMICOLON_SYMBOL )?
            {
                int alt144=2;
                switch ( LA(1) )
                {
                    case SEMICOLON_SYMBOL:
                    	{
                    		alt144=1;
                    	}
                        break;
                }

                switch (alt144)
                {
            	case 1:
            	    // MySQL.g:875:35: SEMICOLON_SYMBOL
            	    {
            	        SEMICOLON_SYMBOL471 = (pANTLR3_COMMON_TOKEN) MATCHT(SEMICOLON_SYMBOL, &FOLLOW_SEMICOLON_SYMBOL_in_create_index2696);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_indexEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SEMICOLON_SYMBOL471_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SEMICOLON_SYMBOL471));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SEMICOLON_SYMBOL471_tree);
            	        }

            	    }
            	    break;

                }
            }

            EOF472 = (pANTLR3_COMMON_TOKEN) MATCHT(EOF, &FOLLOW_EOF_in_create_index2699);
            if  (HASEXCEPTION())
            {
                goto rulecreate_indexEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EOF472_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EOF472));
            ADAPTOR->addChild(ADAPTOR, root_0, EOF472_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:878: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_SYMBOL474;
    pANTLR3_COMMON_TOKEN    INDEX_SYMBOL475;
    pANTLR3_COMMON_TOKEN    FULLTEXT_SYMBOL481;
    pANTLR3_COMMON_TOKEN    INDEX_SYMBOL482;
    pANTLR3_COMMON_TOKEN    SPATIAL_SYMBOL487;
    pANTLR3_COMMON_TOKEN    INDEX_SYMBOL488;
    MySQLParser_online_option_return online_option473;
    #undef	RETURN_TYPE_online_option473
    #define	RETURN_TYPE_online_option473 MySQLParser_online_option_return

    MySQLParser_index_name_return index_name476;
    #undef	RETURN_TYPE_index_name476
    #define	RETURN_TYPE_index_name476 MySQLParser_index_name_return

    MySQLParser_index_type_return index_type477;
    #undef	RETURN_TYPE_index_type477
    #define	RETURN_TYPE_index_type477 MySQLParser_index_type_return

    MySQLParser_create_index_target_return create_index_target478;
    #undef	RETURN_TYPE_create_index_target478
    #define	RETURN_TYPE_create_index_target478 MySQLParser_create_index_target_return

    MySQLParser_normal_index_option_return normal_index_option479;
    #undef	RETURN_TYPE_normal_index_option479
    #define	RETURN_TYPE_normal_index_option479 MySQLParser_normal_index_option_return

    MySQLParser_index_lock_algorithm_return index_lock_algorithm480;
    #undef	RETURN_TYPE_index_lock_algorithm480
    #define	RETURN_TYPE_index_lock_algorithm480 MySQLParser_index_lock_algorithm_return

    MySQLParser_index_name_return index_name483;
    #undef	RETURN_TYPE_index_name483
    #define	RETURN_TYPE_index_name483 MySQLParser_index_name_return

    MySQLParser_create_index_target_return create_index_target484;
    #undef	RETURN_TYPE_create_index_target484
    #define	RETURN_TYPE_create_index_target484 MySQLParser_create_index_target_return

    MySQLParser_fulltext_index_option_return fulltext_index_option485;
    #undef	RETURN_TYPE_fulltext_index_option485
    #define	RETURN_TYPE_fulltext_index_option485 MySQLParser_fulltext_index_option_return

    MySQLParser_index_lock_algorithm_return index_lock_algorithm486;
    #undef	RETURN_TYPE_index_lock_algorithm486
    #define	RETURN_TYPE_index_lock_algorithm486 MySQLParser_index_lock_algorithm_return

    MySQLParser_index_name_return index_name489;
    #undef	RETURN_TYPE_index_name489
    #define	RETURN_TYPE_index_name489 MySQLParser_index_name_return

    MySQLParser_create_index_target_return create_index_target490;
    #undef	RETURN_TYPE_create_index_target490
    #define	RETURN_TYPE_create_index_target490 MySQLParser_create_index_target_return

    MySQLParser_spatial_index_option_return spatial_index_option491;
    #undef	RETURN_TYPE_spatial_index_option491
    #define	RETURN_TYPE_spatial_index_option491 MySQLParser_spatial_index_option_return

    MySQLParser_index_lock_algorithm_return index_lock_algorithm492;
    #undef	RETURN_TYPE_index_lock_algorithm492
    #define	RETURN_TYPE_index_lock_algorithm492 MySQLParser_index_lock_algorithm_return

    pANTLR3_BASE_TREE UNIQUE_SYMBOL474_tree;
    pANTLR3_BASE_TREE INDEX_SYMBOL475_tree;
    pANTLR3_BASE_TREE FULLTEXT_SYMBOL481_tree;
    pANTLR3_BASE_TREE INDEX_SYMBOL482_tree;
    pANTLR3_BASE_TREE SPATIAL_SYMBOL487_tree;
    pANTLR3_BASE_TREE INDEX_SYMBOL488_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    UNIQUE_SYMBOL474       = NULL;
    INDEX_SYMBOL475       = NULL;
    FULLTEXT_SYMBOL481       = NULL;
    INDEX_SYMBOL482       = NULL;
    SPATIAL_SYMBOL487       = NULL;
    INDEX_SYMBOL488       = NULL;
    online_option473.tree = NULL;

    index_name476.tree = NULL;

    index_type477.tree = NULL;

    create_index_target478.tree = NULL;

    normal_index_option479.tree = NULL;

    index_lock_algorithm480.tree = NULL;

    index_name483.tree = NULL;

    create_index_target484.tree = NULL;

    fulltext_index_option485.tree = NULL;

    index_lock_algorithm486.tree = NULL;

    index_name489.tree = NULL;

    create_index_target490.tree = NULL;

    spatial_index_option491.tree = NULL;

    index_lock_algorithm492.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    UNIQUE_SYMBOL474_tree   = NULL;
    INDEX_SYMBOL475_tree   = NULL;
    FULLTEXT_SYMBOL481_tree   = NULL;
    INDEX_SYMBOL482_tree   = NULL;
    SPATIAL_SYMBOL487_tree   = NULL;
    INDEX_SYMBOL488_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:878: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:879: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:879:2: ( online_option )?
            {
                int alt145=2;
                switch ( LA(1) )
                {
                    case OFFLINE_SYMBOL:
                    case ONLINE_SYMBOL:
                    	{
                    		alt145=1;
                    	}
                        break;
                }

                switch (alt145)
                {
            	case 1:
            	    // MySQL.g:879:2: online_option
            	    {
            	        FOLLOWPUSH(FOLLOW_online_option_in_create_index_tail2708);
            	        online_option473=online_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_index_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, online_option473.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:880: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 alt154=3;
                switch ( LA(1) )
                {
                case INDEX_SYMBOL:
                case UNIQUE_SYMBOL:
                	{
                		alt154=1;
                	}
                    break;
                case FULLTEXT_SYMBOL:
                	{
                		alt154=2;
                	}
                    break;
                case SPATIAL_SYMBOL:
                	{
                		alt154=3;
                	}
                    break;

                default:
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }

                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 154;
                    EXCEPTION->state        = 0;


                    goto rulecreate_index_tailEx;

                }

                switch (alt154)
                {
            	case 1:
            	    // MySQL.g:881:3: ( UNIQUE_SYMBOL )? INDEX_SYMBOL index_name ( index_type )? create_index_target ( normal_index_option )* ( index_lock_algorithm )?
            	    {
            	        // MySQL.g:881:3: ( UNIQUE_SYMBOL )?
            	        {
            	            int alt146=2;
            	            switch ( LA(1) )
            	            {
            	                case UNIQUE_SYMBOL:
            	                	{
            	                		alt146=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt146)
            	            {
            	        	case 1:
            	        	    // MySQL.g:881:3: UNIQUE_SYMBOL
            	        	    {
            	        	        UNIQUE_SYMBOL474 = (pANTLR3_COMMON_TOKEN) MATCHT(UNIQUE_SYMBOL, &FOLLOW_UNIQUE_SYMBOL_in_create_index_tail2716);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecreate_index_tailEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        UNIQUE_SYMBOL474_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNIQUE_SYMBOL474));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, UNIQUE_SYMBOL474_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        INDEX_SYMBOL475 = (pANTLR3_COMMON_TOKEN) MATCHT(INDEX_SYMBOL, &FOLLOW_INDEX_SYMBOL_in_create_index_tail2719);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_index_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        INDEX_SYMBOL475_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INDEX_SYMBOL475));
            	        ADAPTOR->addChild(ADAPTOR, root_0, INDEX_SYMBOL475_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_index_name_in_create_index_tail2721);
            	        index_name476=index_name(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_index_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_name476.tree);

            	        // MySQL.g:881:42: ( index_type )?
            	        {
            	            int alt147=2;
            	            switch ( LA(1) )
            	            {
            	                case TYPE_SYMBOL:
            	                case USING_SYMBOL:
            	                	{
            	                		alt147=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt147)
            	            {
            	        	case 1:
            	        	    // MySQL.g:881:42: index_type
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_index_type_in_create_index_tail2723);
            	        	        index_type477=index_type(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecreate_index_tailEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_type477.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_create_index_target_in_create_index_tail2726);
            	        create_index_target478=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_target478.tree);

            	        // MySQL.g:881:74: ( normal_index_option )*

            	        for (;;)
            	        {
            	            int alt148=2;
            	            switch ( LA(1) )
            	            {
            	            case COMMENT_SYMBOL:
            	            case KEY_BLOCK_SIZE_SYMBOL:
            	            case TYPE_SYMBOL:
            	            case USING_SYMBOL:
            	            	{
            	            		alt148=1;
            	            	}
            	                break;

            	            }

            	            switch (alt148)
            	            {
            	        	case 1:
            	        	    // MySQL.g:881:74: normal_index_option
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_normal_index_option_in_create_index_tail2728);
            	        	        normal_index_option479=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_option479.tree);

            	        	    }
            	        	    break;

            	        	default:
            	        	    goto loop148;	/* break out of the loop */
            	        	    break;
            	            }
            	        }
            	        loop148: ; /* Jump out to here if this rule does not match */


            	        // MySQL.g:881:95: ( index_lock_algorithm )?
            	        {
            	            int alt149=2;
            	            {
            	                int LA149_0 = LA(1);
            	                if ( ((SERVER_VERSION >= 50600)) && (LA149_0 == ALGORITHM_SYMBOL || LA149_0 == LOCK_SYMBOL))
            	                {
            	                    alt149=1;
            	                }
            	            }
            	            switch (alt149)
            	            {
            	        	case 1:
            	        	    // MySQL.g:881:95: index_lock_algorithm
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_index_lock_algorithm_in_create_index_tail2731);
            	        	        index_lock_algorithm480=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_algorithm480.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:882:5: FULLTEXT_SYMBOL INDEX_SYMBOL index_name create_index_target ( fulltext_index_option )* ( index_lock_algorithm )?
            	    {
            	        FULLTEXT_SYMBOL481 = (pANTLR3_COMMON_TOKEN) MATCHT(FULLTEXT_SYMBOL, &FOLLOW_FULLTEXT_SYMBOL_in_create_index_tail2738);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_index_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        FULLTEXT_SYMBOL481_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FULLTEXT_SYMBOL481));
            	        ADAPTOR->addChild(ADAPTOR, root_0, FULLTEXT_SYMBOL481_tree);
            	        }

            	        INDEX_SYMBOL482 = (pANTLR3_COMMON_TOKEN) MATCHT(INDEX_SYMBOL, &FOLLOW_INDEX_SYMBOL_in_create_index_tail2740);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_index_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        INDEX_SYMBOL482_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INDEX_SYMBOL482));
            	        ADAPTOR->addChild(ADAPTOR, root_0, INDEX_SYMBOL482_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_index_name_in_create_index_tail2742);
            	        index_name483=index_name(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_index_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_name483.tree);

            	        FOLLOWPUSH(FOLLOW_create_index_target_in_create_index_tail2744);
            	        create_index_target484=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_target484.tree);

            	        // MySQL.g:882:65: ( fulltext_index_option )*

            	        for (;;)
            	        {
            	            int alt150=2;
            	            switch ( LA(1) )
            	            {
            	            case COMMENT_SYMBOL:
            	            case KEY_BLOCK_SIZE_SYMBOL:
            	            case WITH_SYMBOL:
            	            	{
            	            		alt150=1;
            	            	}
            	                break;

            	            }

            	            switch (alt150)
            	            {
            	        	case 1:
            	        	    // MySQL.g:882:65: fulltext_index_option
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_fulltext_index_option_in_create_index_tail2746);
            	        	        fulltext_index_option485=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_option485.tree);

            	        	    }
            	        	    break;

            	        	default:
            	        	    goto loop150;	/* break out of the loop */
            	        	    break;
            	            }
            	        }
            	        loop150: ; /* Jump out to here if this rule does not match */


            	        // MySQL.g:882:88: ( index_lock_algorithm )?
            	        {
            	            int alt151=2;
            	            {
            	                int LA151_0 = LA(1);
            	                if ( ((SERVER_VERSION >= 50600)) && (LA151_0 == ALGORITHM_SYMBOL || LA151_0 == LOCK_SYMBOL))
            	                {
            	                    alt151=1;
            	                }
            	            }
            	            switch (alt151)
            	            {
            	        	case 1:
            	        	    // MySQL.g:882:88: index_lock_algorithm
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_index_lock_algorithm_in_create_index_tail2749);
            	        	        index_lock_algorithm486=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_algorithm486.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:883:5: SPATIAL_SYMBOL INDEX_SYMBOL index_name create_index_target ( spatial_index_option )* ( index_lock_algorithm )?
            	    {
            	        SPATIAL_SYMBOL487 = (pANTLR3_COMMON_TOKEN) MATCHT(SPATIAL_SYMBOL, &FOLLOW_SPATIAL_SYMBOL_in_create_index_tail2756);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_index_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SPATIAL_SYMBOL487_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SPATIAL_SYMBOL487));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SPATIAL_SYMBOL487_tree);
            	        }

            	        INDEX_SYMBOL488 = (pANTLR3_COMMON_TOKEN) MATCHT(INDEX_SYMBOL, &FOLLOW_INDEX_SYMBOL_in_create_index_tail2758);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_index_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        INDEX_SYMBOL488_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INDEX_SYMBOL488));
            	        ADAPTOR->addChild(ADAPTOR, root_0, INDEX_SYMBOL488_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_index_name_in_create_index_tail2760);
            	        index_name489=index_name(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_index_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_name489.tree);

            	        FOLLOWPUSH(FOLLOW_create_index_target_in_create_index_tail2762);
            	        create_index_target490=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_target490.tree);

            	        // MySQL.g:883:64: ( spatial_index_option )*

            	        for (;;)
            	        {
            	            int alt152=2;
            	            switch ( LA(1) )
            	            {
            	            case COMMENT_SYMBOL:
            	            case KEY_BLOCK_SIZE_SYMBOL:
            	            	{
            	            		alt152=1;
            	            	}
            	                break;

            	            }

            	            switch (alt152)
            	            {
            	        	case 1:
            	        	    // MySQL.g:883:64: spatial_index_option
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_spatial_index_option_in_create_index_tail2764);
            	        	        spatial_index_option491=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_option491.tree);

            	        	    }
            	        	    break;

            	        	default:
            	        	    goto loop152;	/* break out of the loop */
            	        	    break;
            	            }
            	        }
            	        loop152: ; /* Jump out to here if this rule does not match */


            	        // MySQL.g:883:86: ( index_lock_algorithm )?
            	        {
            	            int alt153=2;
            	            {
            	                int LA153_0 = LA(1);
            	                if ( ((SERVER_VERSION >= 50600)) && (LA153_0 == ALGORITHM_SYMBOL || LA153_0 == LOCK_SYMBOL))
            	                {
            	                    alt153=1;
            	                }
            	            }
            	            switch (alt153)
            	            {
            	        	case 1:
            	        	    // MySQL.g:883:86: index_lock_algorithm
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_index_lock_algorithm_in_create_index_tail2767);
            	        	        index_lock_algorithm492=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_algorithm492.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:887: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_SYMBOL493;
    MySQLParser_table_ref_return table_ref494;
    #undef	RETURN_TYPE_table_ref494
    #define	RETURN_TYPE_table_ref494 MySQLParser_table_ref_return

    MySQLParser_index_columns_return index_columns495;
    #undef	RETURN_TYPE_index_columns495
    #define	RETURN_TYPE_index_columns495 MySQLParser_index_columns_return

    pANTLR3_BASE_TREE ON_SYMBOL493_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ON_SYMBOL493       = NULL;
    table_ref494.tree = NULL;

    index_columns495.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ON_SYMBOL493_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:887:20: ( ON_SYMBOL ^ table_ref index_columns )
        // MySQL.g:888:2: ON_SYMBOL ^ table_ref index_columns
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            ON_SYMBOL493 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_create_index_target2780);
            if  (HASEXCEPTION())
            {
                goto rulecreate_index_targetEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ON_SYMBOL493_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ON_SYMBOL493))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, ON_SYMBOL493_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_table_ref_in_create_index_target2783);
            table_ref494=table_ref(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_index_targetEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref494.tree);

            FOLLOWPUSH(FOLLOW_index_columns_in_create_index_target2785);
            index_columns495=index_columns(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_index_targetEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_columns495.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:891: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_SYMBOL496;
    pANTLR3_COMMON_TOKEN    SEMICOLON_SYMBOL498;
    pANTLR3_COMMON_TOKEN    EOF499;
    MySQLParser_create_logfile_group_tail_return create_logfile_group_tail497;
    #undef	RETURN_TYPE_create_logfile_group_tail497
    #define	RETURN_TYPE_create_logfile_group_tail497 MySQLParser_create_logfile_group_tail_return

    pANTLR3_BASE_TREE CREATE_SYMBOL496_tree;
    pANTLR3_BASE_TREE SEMICOLON_SYMBOL498_tree;
    pANTLR3_BASE_TREE EOF499_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CREATE_SYMBOL496       = NULL;
    SEMICOLON_SYMBOL498       = NULL;
    EOF499       = NULL;
    create_logfile_group_tail497.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CREATE_SYMBOL496_tree   = NULL;
    SEMICOLON_SYMBOL498_tree   = NULL;
    EOF499_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:891:21: ( CREATE_SYMBOL ^ create_logfile_group_tail ( SEMICOLON_SYMBOL )? EOF )
        // MySQL.g:892:2: CREATE_SYMBOL ^ create_logfile_group_tail ( SEMICOLON_SYMBOL )? EOF
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            CREATE_SYMBOL496 = (pANTLR3_COMMON_TOKEN) MATCHT(CREATE_SYMBOL, &FOLLOW_CREATE_SYMBOL_in_create_logfile_group2795);
            if  (HASEXCEPTION())
            {
                goto rulecreate_logfile_groupEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CREATE_SYMBOL496_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CREATE_SYMBOL496))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, CREATE_SYMBOL496_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_create_logfile_group_tail_in_create_logfile_group2798);
            create_logfile_group_tail497=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_tail497.tree);

            // MySQL.g:892:43: ( SEMICOLON_SYMBOL )?
            {
                int alt155=2;
                switch ( LA(1) )
                {
                    case SEMICOLON_SYMBOL:
                    	{
                    		alt155=1;
                    	}
                        break;
                }

                switch (alt155)
                {
            	case 1:
            	    // MySQL.g:892:43: SEMICOLON_SYMBOL
            	    {
            	        SEMICOLON_SYMBOL498 = (pANTLR3_COMMON_TOKEN) MATCHT(SEMICOLON_SYMBOL, &FOLLOW_SEMICOLON_SYMBOL_in_create_logfile_group2800);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_logfile_groupEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SEMICOLON_SYMBOL498_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SEMICOLON_SYMBOL498));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SEMICOLON_SYMBOL498_tree);
            	        }

            	    }
            	    break;

                }
            }

            EOF499 = (pANTLR3_COMMON_TOKEN) MATCHT(EOF, &FOLLOW_EOF_in_create_logfile_group2803);
            if  (HASEXCEPTION())
            {
                goto rulecreate_logfile_groupEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EOF499_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EOF499));
            ADAPTOR->addChild(ADAPTOR, root_0, EOF499_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:895: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_SYMBOL500;
    pANTLR3_COMMON_TOKEN    GROUP_SYMBOL501;
    pANTLR3_COMMON_TOKEN    ADD_SYMBOL503;
    pANTLR3_COMMON_TOKEN    set504;
    MySQLParser_logfile_group_name_return logfile_group_name502;
    #undef	RETURN_TYPE_logfile_group_name502
    #define	RETURN_TYPE_logfile_group_name502 MySQLParser_logfile_group_name_return

    MySQLParser_string_literal_return string_literal505;
    #undef	RETURN_TYPE_string_literal505
    #define	RETURN_TYPE_string_literal505 MySQLParser_string_literal_return

    MySQLParser_logfile_group_options_return logfile_group_options506;
    #undef	RETURN_TYPE_logfile_group_options506
    #define	RETURN_TYPE_logfile_group_options506 MySQLParser_logfile_group_options_return

    pANTLR3_BASE_TREE LOGFILE_SYMBOL500_tree;
    pANTLR3_BASE_TREE GROUP_SYMBOL501_tree;
    pANTLR3_BASE_TREE ADD_SYMBOL503_tree;
    pANTLR3_BASE_TREE set504_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    LOGFILE_SYMBOL500       = NULL;
    GROUP_SYMBOL501       = NULL;
    ADD_SYMBOL503       = NULL;
    set504       = NULL;
    logfile_group_name502.tree = NULL;

    string_literal505.tree = NULL;

    logfile_group_options506.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    LOGFILE_SYMBOL500_tree   = NULL;
    GROUP_SYMBOL501_tree   = NULL;
    ADD_SYMBOL503_tree   = NULL;
    set504_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:895:26: ( LOGFILE_SYMBOL GROUP_SYMBOL logfile_group_name ADD_SYMBOL ( UNDOFILE_SYMBOL | REDOFILE_SYMBOL ) string_literal ( logfile_group_options )? )
        // MySQL.g:896: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_SYMBOL500 = (pANTLR3_COMMON_TOKEN) MATCHT(LOGFILE_SYMBOL, &FOLLOW_LOGFILE_SYMBOL_in_create_logfile_group_tail2812);
            if  (HASEXCEPTION())
            {
                goto rulecreate_logfile_group_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            LOGFILE_SYMBOL500_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOGFILE_SYMBOL500));
            ADAPTOR->addChild(ADAPTOR, root_0, LOGFILE_SYMBOL500_tree);
            }

            GROUP_SYMBOL501 = (pANTLR3_COMMON_TOKEN) MATCHT(GROUP_SYMBOL, &FOLLOW_GROUP_SYMBOL_in_create_logfile_group_tail2814);
            if  (HASEXCEPTION())
            {
                goto rulecreate_logfile_group_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            GROUP_SYMBOL501_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GROUP_SYMBOL501));
            ADAPTOR->addChild(ADAPTOR, root_0, GROUP_SYMBOL501_tree);
            }

            FOLLOWPUSH(FOLLOW_logfile_group_name_in_create_logfile_group_tail2816);
            logfile_group_name502=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_name502.tree);

            ADD_SYMBOL503 = (pANTLR3_COMMON_TOKEN) MATCHT(ADD_SYMBOL, &FOLLOW_ADD_SYMBOL_in_create_logfile_group_tail2818);
            if  (HASEXCEPTION())
            {
                goto rulecreate_logfile_group_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ADD_SYMBOL503_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ADD_SYMBOL503));
            ADAPTOR->addChild(ADAPTOR, root_0, ADD_SYMBOL503_tree);
            }

            set504=(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, set504))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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_tail2828);
            string_literal505=string_literal(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_logfile_group_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal505.tree);

            // MySQL.g:897:3: ( logfile_group_options )?
            {
                int alt156=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:
                    	{
                    		alt156=1;
                    	}
                        break;
                }

                switch (alt156)
                {
            	case 1:
            	    // MySQL.g:897:3: logfile_group_options
            	    {
            	        FOLLOWPUSH(FOLLOW_logfile_group_options_in_create_logfile_group_tail2832);
            	        logfile_group_options506=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_options506.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:900: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_SYMBOL508;
    MySQLParser_logfile_group_option_return logfile_group_option507;
    #undef	RETURN_TYPE_logfile_group_option507
    #define	RETURN_TYPE_logfile_group_option507 MySQLParser_logfile_group_option_return

    MySQLParser_logfile_group_option_return logfile_group_option509;
    #undef	RETURN_TYPE_logfile_group_option509
    #define	RETURN_TYPE_logfile_group_option509 MySQLParser_logfile_group_option_return

    pANTLR3_BASE_TREE COMMA_SYMBOL508_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_SYMBOL508       = NULL;
    logfile_group_option507.tree = NULL;

    logfile_group_option509.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL508_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:900:22: ( ( logfile_group_option ( ( COMMA_SYMBOL )? logfile_group_option )* ) -> ^( LOGFILE_GROUP_OPTIONS_TOKEN logfile_group_option ( ( COMMA_SYMBOL )? logfile_group_option )* ) )
        // MySQL.g:901:2: ( logfile_group_option ( ( COMMA_SYMBOL )? logfile_group_option )* )
        {
            // MySQL.g:901:2: ( logfile_group_option ( ( COMMA_SYMBOL )? logfile_group_option )* )
            // MySQL.g:901:3: logfile_group_option ( ( COMMA_SYMBOL )? logfile_group_option )*
            {
                FOLLOWPUSH(FOLLOW_logfile_group_option_in_logfile_group_options2843);
                logfile_group_option507=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_option507.tree, NULL); }

                // MySQL.g:901:24: ( ( COMMA_SYMBOL )? logfile_group_option )*

                for (;;)
                {
                    int alt158=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:
                    	{
                    		alt158=1;
                    	}
                        break;

                    }

                    switch (alt158)
                    {
                	case 1:
                	    // MySQL.g:901:25: ( COMMA_SYMBOL )? logfile_group_option
                	    {
                	        // MySQL.g:901:25: ( COMMA_SYMBOL )?
                	        {
                	            int alt157=2;
                	            switch ( LA(1) )
                	            {
                	                case COMMA_SYMBOL:
                	                	{
                	                		alt157=1;
                	                	}
                	                    break;
                	            }

                	            switch (alt157)
                	            {
                	        	case 1:
                	        	    // MySQL.g:901:25: COMMA_SYMBOL
                	        	    {
                	        	        COMMA_SYMBOL508 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_logfile_group_options2846);
                	        	        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_SYMBOL508, NULL); }


                	        	    }
                	        	    break;

                	            }
                	        }

                	        FOLLOWPUSH(FOLLOW_logfile_group_option_in_logfile_group_options2849);
                	        logfile_group_option509=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_option509.tree, NULL); }

                	    }
                	    break;

                	default:
                	    goto loop158;	/* break out of the loop */
                	    break;
                    }
                }
                loop158: ; /* 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;
            	// 902:3: -> ^( LOGFILE_GROUP_OPTIONS_TOKEN logfile_group_option ( ( COMMA_SYMBOL )? logfile_group_option )* )
            	{
            	    // MySQL.g:902: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:902:57: ( ( COMMA_SYMBOL )? logfile_group_option )*
            	        {
            	        	while ( (stream_logfile_group_option != NULL && stream_logfile_group_option->hasNext(stream_logfile_group_option))  )
            	        	{
            	        		// MySQL.g:902: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:905: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_SYMBOL510;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR511;
    pANTLR3_COMMON_TOKEN    set513;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR514;
    pANTLR3_COMMON_TOKEN    NODEGROUP_SYMBOL516;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR517;
    pANTLR3_COMMON_TOKEN    set519;
    pANTLR3_COMMON_TOKEN    COMMENT_SYMBOL520;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR521;
    pANTLR3_COMMON_TOKEN    STORAGE_SYMBOL523;
    pANTLR3_COMMON_TOKEN    ENGINE_SYMBOL524;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR525;
    MySQLParser_size_number_return size_number512;
    #undef	RETURN_TYPE_size_number512
    #define	RETURN_TYPE_size_number512 MySQLParser_size_number_return

    MySQLParser_size_number_return size_number515;
    #undef	RETURN_TYPE_size_number515
    #define	RETURN_TYPE_size_number515 MySQLParser_size_number_return

    MySQLParser_real_ulong_number_return real_ulong_number518;
    #undef	RETURN_TYPE_real_ulong_number518
    #define	RETURN_TYPE_real_ulong_number518 MySQLParser_real_ulong_number_return

    MySQLParser_string_literal_return string_literal522;
    #undef	RETURN_TYPE_string_literal522
    #define	RETURN_TYPE_string_literal522 MySQLParser_string_literal_return

    MySQLParser_engine_ref_return engine_ref526;
    #undef	RETURN_TYPE_engine_ref526
    #define	RETURN_TYPE_engine_ref526 MySQLParser_engine_ref_return

    pANTLR3_BASE_TREE INITIAL_SIZE_SYMBOL510_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR511_tree;
    pANTLR3_BASE_TREE set513_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR514_tree;
    pANTLR3_BASE_TREE NODEGROUP_SYMBOL516_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR517_tree;
    pANTLR3_BASE_TREE set519_tree;
    pANTLR3_BASE_TREE COMMENT_SYMBOL520_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR521_tree;
    pANTLR3_BASE_TREE STORAGE_SYMBOL523_tree;
    pANTLR3_BASE_TREE ENGINE_SYMBOL524_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR525_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    INITIAL_SIZE_SYMBOL510       = NULL;
    EQUAL_OPERATOR511       = NULL;
    set513       = NULL;
    EQUAL_OPERATOR514       = NULL;
    NODEGROUP_SYMBOL516       = NULL;
    EQUAL_OPERATOR517       = NULL;
    set519       = NULL;
    COMMENT_SYMBOL520       = NULL;
    EQUAL_OPERATOR521       = NULL;
    STORAGE_SYMBOL523       = NULL;
    ENGINE_SYMBOL524       = NULL;
    EQUAL_OPERATOR525       = NULL;
    size_number512.tree = NULL;

    size_number515.tree = NULL;

    real_ulong_number518.tree = NULL;

    string_literal522.tree = NULL;

    engine_ref526.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    INITIAL_SIZE_SYMBOL510_tree   = NULL;
    EQUAL_OPERATOR511_tree   = NULL;
    set513_tree   = NULL;
    EQUAL_OPERATOR514_tree   = NULL;
    NODEGROUP_SYMBOL516_tree   = NULL;
    EQUAL_OPERATOR517_tree   = NULL;
    set519_tree   = NULL;
    COMMENT_SYMBOL520_tree   = NULL;
    EQUAL_OPERATOR521_tree   = NULL;
    STORAGE_SYMBOL523_tree   = NULL;
    ENGINE_SYMBOL524_tree   = NULL;
    EQUAL_OPERATOR525_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:905: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 alt165;

            alt165=6;

            switch ( LA(1) )
            {
            case INITIAL_SIZE_SYMBOL:
            	{
            		alt165=1;
            	}
                break;
            case REDO_BUFFER_SIZE_SYMBOL:
            case UNDO_BUFFER_SIZE_SYMBOL:
            	{
            		alt165=2;
            	}
                break;
            case NODEGROUP_SYMBOL:
            	{
            		alt165=3;
            	}
                break;
            case NO_WAIT_SYMBOL:
            case WAIT_SYMBOL:
            	{
            		alt165=4;
            	}
                break;
            case COMMENT_SYMBOL:
            	{
            		alt165=5;
            	}
                break;
            case ENGINE_SYMBOL:
            case STORAGE_SYMBOL:
            	{
            		alt165=6;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 165;
                EXCEPTION->state        = 0;


                goto rulelogfile_group_optionEx;

            }

            switch (alt165)
            {
        	case 1:
        	    // MySQL.g:906:2: INITIAL_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        INITIAL_SIZE_SYMBOL510 = (pANTLR3_COMMON_TOKEN) MATCHT(INITIAL_SIZE_SYMBOL, &FOLLOW_INITIAL_SIZE_SYMBOL_in_logfile_group_option2879);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelogfile_group_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INITIAL_SIZE_SYMBOL510_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INITIAL_SIZE_SYMBOL510));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INITIAL_SIZE_SYMBOL510_tree);
        	        }

        	        // MySQL.g:906:22: ( EQUAL_OPERATOR )?
        	        {
        	            int alt159=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt159=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt159)
        	            {
        	        	case 1:
        	        	    // MySQL.g:906:22: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR511 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_logfile_group_option2881);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulelogfile_group_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR511_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR511));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR511_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_size_number_in_logfile_group_option2884);
        	        size_number512=size_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelogfile_group_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, size_number512.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:907:4: ( UNDO_BUFFER_SIZE_SYMBOL | REDO_BUFFER_SIZE_SYMBOL ) ( EQUAL_OPERATOR )? size_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        set513=(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, set513))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>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:907:56: ( EQUAL_OPERATOR )?
        	        {
        	            int alt160=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt160=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt160)
        	            {
        	        	case 1:
        	        	    // MySQL.g:907:56: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR514 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_logfile_group_option2897);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulelogfile_group_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR514_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR514));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR514_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_size_number_in_logfile_group_option2900);
        	        size_number515=size_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelogfile_group_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, size_number515.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:908:4: NODEGROUP_SYMBOL ( EQUAL_OPERATOR )? real_ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NODEGROUP_SYMBOL516 = (pANTLR3_COMMON_TOKEN) MATCHT(NODEGROUP_SYMBOL, &FOLLOW_NODEGROUP_SYMBOL_in_logfile_group_option2905);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelogfile_group_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NODEGROUP_SYMBOL516_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NODEGROUP_SYMBOL516));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NODEGROUP_SYMBOL516_tree);
        	        }

        	        // MySQL.g:908:21: ( EQUAL_OPERATOR )?
        	        {
        	            int alt161=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt161=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt161)
        	            {
        	        	case 1:
        	        	    // MySQL.g:908:21: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR517 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_logfile_group_option2907);
        	        	        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_real_ulong_number_in_logfile_group_option2910);
        	        real_ulong_number518=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_number518.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:909:4: ( WAIT_SYMBOL | NO_WAIT_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        set519=(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, set519))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>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:910:4: COMMENT_SYMBOL ( EQUAL_OPERATOR )? string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        COMMENT_SYMBOL520 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMENT_SYMBOL, &FOLLOW_COMMENT_SYMBOL_in_logfile_group_option2926);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelogfile_group_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMENT_SYMBOL520_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMENT_SYMBOL520));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMENT_SYMBOL520_tree);
        	        }

        	        // MySQL.g:910:19: ( EQUAL_OPERATOR )?
        	        {
        	            int alt162=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt162=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt162)
        	            {
        	        	case 1:
        	        	    // MySQL.g:910:19: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR521 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_logfile_group_option2928);
        	        	        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_string_literal_in_logfile_group_option2931);
        	        string_literal522=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelogfile_group_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal522.tree);

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:911:4: ( STORAGE_SYMBOL )? ENGINE_SYMBOL ( EQUAL_OPERATOR )? engine_ref
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:911:4: ( STORAGE_SYMBOL )?
        	        {
        	            int alt163=2;
        	            switch ( LA(1) )
        	            {
        	                case STORAGE_SYMBOL:
        	                	{
        	                		alt163=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt163)
        	            {
        	        	case 1:
        	        	    // MySQL.g:911:4: STORAGE_SYMBOL
        	        	    {
        	        	        STORAGE_SYMBOL523 = (pANTLR3_COMMON_TOKEN) MATCHT(STORAGE_SYMBOL, &FOLLOW_STORAGE_SYMBOL_in_logfile_group_option2936);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulelogfile_group_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        STORAGE_SYMBOL523_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STORAGE_SYMBOL523));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, STORAGE_SYMBOL523_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        ENGINE_SYMBOL524 = (pANTLR3_COMMON_TOKEN) MATCHT(ENGINE_SYMBOL, &FOLLOW_ENGINE_SYMBOL_in_logfile_group_option2939);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelogfile_group_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ENGINE_SYMBOL524_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ENGINE_SYMBOL524));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ENGINE_SYMBOL524_tree);
        	        }

        	        // MySQL.g:911:34: ( EQUAL_OPERATOR )?
        	        {
        	            int alt164=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt164=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt164)
        	            {
        	        	case 1:
        	        	    // MySQL.g:911:34: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR525 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_logfile_group_option2941);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulelogfile_group_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR525_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR525));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR525_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_engine_ref_in_logfile_group_option2944);
        	        engine_ref526=engine_ref(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelogfile_group_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, engine_ref526.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:914: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_SYMBOL527;
    pANTLR3_COMMON_TOKEN    SEMICOLON_SYMBOL529;
    pANTLR3_COMMON_TOKEN    EOF530;
    MySQLParser_create_server_tail_return create_server_tail528;
    #undef	RETURN_TYPE_create_server_tail528
    #define	RETURN_TYPE_create_server_tail528 MySQLParser_create_server_tail_return

    pANTLR3_BASE_TREE CREATE_SYMBOL527_tree;
    pANTLR3_BASE_TREE SEMICOLON_SYMBOL529_tree;
    pANTLR3_BASE_TREE EOF530_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CREATE_SYMBOL527       = NULL;
    SEMICOLON_SYMBOL529       = NULL;
    EOF530       = NULL;
    create_server_tail528.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CREATE_SYMBOL527_tree   = NULL;
    SEMICOLON_SYMBOL529_tree   = NULL;
    EOF530_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:914:14: ( CREATE_SYMBOL ^ create_server_tail ( SEMICOLON_SYMBOL )? EOF )
        // MySQL.g:915:2: CREATE_SYMBOL ^ create_server_tail ( SEMICOLON_SYMBOL )? EOF
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            CREATE_SYMBOL527 = (pANTLR3_COMMON_TOKEN) MATCHT(CREATE_SYMBOL, &FOLLOW_CREATE_SYMBOL_in_create_server2955);
            if  (HASEXCEPTION())
            {
                goto rulecreate_serverEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CREATE_SYMBOL527_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CREATE_SYMBOL527))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, CREATE_SYMBOL527_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_create_server_tail_in_create_server2958);
            create_server_tail528=create_server_tail(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_serverEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_server_tail528.tree);

            // MySQL.g:915:36: ( SEMICOLON_SYMBOL )?
            {
                int alt166=2;
                switch ( LA(1) )
                {
                    case SEMICOLON_SYMBOL:
                    	{
                    		alt166=1;
                    	}
                        break;
                }

                switch (alt166)
                {
            	case 1:
            	    // MySQL.g:915:36: SEMICOLON_SYMBOL
            	    {
            	        SEMICOLON_SYMBOL529 = (pANTLR3_COMMON_TOKEN) MATCHT(SEMICOLON_SYMBOL, &FOLLOW_SEMICOLON_SYMBOL_in_create_server2960);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_serverEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SEMICOLON_SYMBOL529_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SEMICOLON_SYMBOL529));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SEMICOLON_SYMBOL529_tree);
            	        }

            	    }
            	    break;

                }
            }

            EOF530 = (pANTLR3_COMMON_TOKEN) MATCHT(EOF, &FOLLOW_EOF_in_create_server2963);
            if  (HASEXCEPTION())
            {
                goto rulecreate_serverEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EOF530_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EOF530));
            ADAPTOR->addChild(ADAPTOR, root_0, EOF530_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:918: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_SYMBOL531;
    pANTLR3_COMMON_TOKEN    FOREIGN_SYMBOL533;
    pANTLR3_COMMON_TOKEN    DATA_SYMBOL534;
    pANTLR3_COMMON_TOKEN    WRAPPER_SYMBOL535;
    MySQLParser_server_name_return server_name532;
    #undef	RETURN_TYPE_server_name532
    #define	RETURN_TYPE_server_name532 MySQLParser_server_name_return

    MySQLParser_text_or_identifier_return text_or_identifier536;
    #undef	RETURN_TYPE_text_or_identifier536
    #define	RETURN_TYPE_text_or_identifier536 MySQLParser_text_or_identifier_return

    MySQLParser_server_options_return server_options537;
    #undef	RETURN_TYPE_server_options537
    #define	RETURN_TYPE_server_options537 MySQLParser_server_options_return

    pANTLR3_BASE_TREE SERVER_SYMBOL531_tree;
    pANTLR3_BASE_TREE FOREIGN_SYMBOL533_tree;
    pANTLR3_BASE_TREE DATA_SYMBOL534_tree;
    pANTLR3_BASE_TREE WRAPPER_SYMBOL535_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SERVER_SYMBOL531       = NULL;
    FOREIGN_SYMBOL533       = NULL;
    DATA_SYMBOL534       = NULL;
    WRAPPER_SYMBOL535       = NULL;
    server_name532.tree = NULL;

    text_or_identifier536.tree = NULL;

    server_options537.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SERVER_SYMBOL531_tree   = NULL;
    FOREIGN_SYMBOL533_tree   = NULL;
    DATA_SYMBOL534_tree   = NULL;
    WRAPPER_SYMBOL535_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:918:19: ( SERVER_SYMBOL server_name FOREIGN_SYMBOL DATA_SYMBOL WRAPPER_SYMBOL text_or_identifier server_options )
        // MySQL.g:919: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_SYMBOL531 = (pANTLR3_COMMON_TOKEN) MATCHT(SERVER_SYMBOL, &FOLLOW_SERVER_SYMBOL_in_create_server_tail2972);
            if  (HASEXCEPTION())
            {
                goto rulecreate_server_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            SERVER_SYMBOL531_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SERVER_SYMBOL531));
            ADAPTOR->addChild(ADAPTOR, root_0, SERVER_SYMBOL531_tree);
            }

            FOLLOWPUSH(FOLLOW_server_name_in_create_server_tail2974);
            server_name532=server_name(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_server_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, server_name532.tree);

            FOREIGN_SYMBOL533 = (pANTLR3_COMMON_TOKEN) MATCHT(FOREIGN_SYMBOL, &FOLLOW_FOREIGN_SYMBOL_in_create_server_tail2978);
            if  (HASEXCEPTION())
            {
                goto rulecreate_server_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            FOREIGN_SYMBOL533_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOREIGN_SYMBOL533));
            ADAPTOR->addChild(ADAPTOR, root_0, FOREIGN_SYMBOL533_tree);
            }

            DATA_SYMBOL534 = (pANTLR3_COMMON_TOKEN) MATCHT(DATA_SYMBOL, &FOLLOW_DATA_SYMBOL_in_create_server_tail2980);
            if  (HASEXCEPTION())
            {
                goto rulecreate_server_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            DATA_SYMBOL534_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATA_SYMBOL534));
            ADAPTOR->addChild(ADAPTOR, root_0, DATA_SYMBOL534_tree);
            }

            WRAPPER_SYMBOL535 = (pANTLR3_COMMON_TOKEN) MATCHT(WRAPPER_SYMBOL, &FOLLOW_WRAPPER_SYMBOL_in_create_server_tail2982);
            if  (HASEXCEPTION())
            {
                goto rulecreate_server_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            WRAPPER_SYMBOL535_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WRAPPER_SYMBOL535));
            ADAPTOR->addChild(ADAPTOR, root_0, WRAPPER_SYMBOL535_tree);
            }

            FOLLOWPUSH(FOLLOW_text_or_identifier_in_create_server_tail2984);
            text_or_identifier536=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_identifier536.tree);

            FOLLOWPUSH(FOLLOW_server_options_in_create_server_tail2986);
            server_options537=server_options(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_server_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, server_options537.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:923: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_SYMBOL538;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL539;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL541;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL543;
    MySQLParser_server_option_return server_option540;
    #undef	RETURN_TYPE_server_option540
    #define	RETURN_TYPE_server_option540 MySQLParser_server_option_return

    MySQLParser_server_option_return server_option542;
    #undef	RETURN_TYPE_server_option542
    #define	RETURN_TYPE_server_option542 MySQLParser_server_option_return

    pANTLR3_BASE_TREE OPTIONS_SYMBOL538_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL539_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL541_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL543_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPTIONS_SYMBOL538       = NULL;
    OPEN_PAR_SYMBOL539       = NULL;
    COMMA_SYMBOL541       = NULL;
    CLOSE_PAR_SYMBOL543       = NULL;
    server_option540.tree = NULL;

    server_option542.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPTIONS_SYMBOL538_tree   = NULL;
    OPEN_PAR_SYMBOL539_tree   = NULL;
    COMMA_SYMBOL541_tree   = NULL;
    CLOSE_PAR_SYMBOL543_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:923:15: ( OPTIONS_SYMBOL ^ OPEN_PAR_SYMBOL server_option ( COMMA_SYMBOL server_option )* CLOSE_PAR_SYMBOL )
        // MySQL.g:924:2: OPTIONS_SYMBOL ^ OPEN_PAR_SYMBOL server_option ( COMMA_SYMBOL server_option )* CLOSE_PAR_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            OPTIONS_SYMBOL538 = (pANTLR3_COMMON_TOKEN) MATCHT(OPTIONS_SYMBOL, &FOLLOW_OPTIONS_SYMBOL_in_server_options2995);
            if  (HASEXCEPTION())
            {
                goto ruleserver_optionsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPTIONS_SYMBOL538_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPTIONS_SYMBOL538))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, OPTIONS_SYMBOL538_tree, root_0));
            }

            OPEN_PAR_SYMBOL539 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_server_options2998);
            if  (HASEXCEPTION())
            {
                goto ruleserver_optionsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL539_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL539));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL539_tree);
            }

            FOLLOWPUSH(FOLLOW_server_option_in_server_options3000);
            server_option540=server_option(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleserver_optionsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, server_option540.tree);

            // MySQL.g:924:48: ( COMMA_SYMBOL server_option )*

            for (;;)
            {
                int alt167=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt167=1;
                	}
                    break;

                }

                switch (alt167)
                {
            	case 1:
            	    // MySQL.g:924:49: COMMA_SYMBOL server_option
            	    {
            	        COMMA_SYMBOL541 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_server_options3003);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleserver_optionsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL541_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL541));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL541_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_server_option_in_server_options3005);
            	        server_option542=server_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleserver_optionsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, server_option542.tree);

            	    }
            	    break;

            	default:
            	    goto loop167;	/* break out of the loop */
            	    break;
                }
            }
            loop167: ; /* Jump out to here if this rule does not match */


            CLOSE_PAR_SYMBOL543 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_server_options3009);
            if  (HASEXCEPTION())
            {
                goto ruleserver_optionsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL543_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL543));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL543_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:928: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_SYMBOL544;
    pANTLR3_COMMON_TOKEN    DATABASE_SYMBOL546;
    pANTLR3_COMMON_TOKEN    USER_SYMBOL548;
    pANTLR3_COMMON_TOKEN    PASSWORD_SYMBOL550;
    pANTLR3_COMMON_TOKEN    SOCKET_SYMBOL552;
    pANTLR3_COMMON_TOKEN    OWNER_SYMBOL554;
    pANTLR3_COMMON_TOKEN    PORT_SYMBOL556;
    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_string_literal_return string_literal553;
    #undef	RETURN_TYPE_string_literal553
    #define	RETURN_TYPE_string_literal553 MySQLParser_string_literal_return

    MySQLParser_string_literal_return string_literal555;
    #undef	RETURN_TYPE_string_literal555
    #define	RETURN_TYPE_string_literal555 MySQLParser_string_literal_return

    MySQLParser_ulong_number_return ulong_number557;
    #undef	RETURN_TYPE_ulong_number557
    #define	RETURN_TYPE_ulong_number557 MySQLParser_ulong_number_return

    pANTLR3_BASE_TREE HOST_SYMBOL544_tree;
    pANTLR3_BASE_TREE DATABASE_SYMBOL546_tree;
    pANTLR3_BASE_TREE USER_SYMBOL548_tree;
    pANTLR3_BASE_TREE PASSWORD_SYMBOL550_tree;
    pANTLR3_BASE_TREE SOCKET_SYMBOL552_tree;
    pANTLR3_BASE_TREE OWNER_SYMBOL554_tree;
    pANTLR3_BASE_TREE PORT_SYMBOL556_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    HOST_SYMBOL544       = NULL;
    DATABASE_SYMBOL546       = NULL;
    USER_SYMBOL548       = NULL;
    PASSWORD_SYMBOL550       = NULL;
    SOCKET_SYMBOL552       = NULL;
    OWNER_SYMBOL554       = NULL;
    PORT_SYMBOL556       = NULL;
    string_literal545.tree = NULL;

    string_literal547.tree = NULL;

    string_literal549.tree = NULL;

    string_literal551.tree = NULL;

    string_literal553.tree = NULL;

    string_literal555.tree = NULL;

    ulong_number557.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    HOST_SYMBOL544_tree   = NULL;
    DATABASE_SYMBOL546_tree   = NULL;
    USER_SYMBOL548_tree   = NULL;
    PASSWORD_SYMBOL550_tree   = NULL;
    SOCKET_SYMBOL552_tree   = NULL;
    OWNER_SYMBOL554_tree   = NULL;
    PORT_SYMBOL556_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:928: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 alt168;

            alt168=7;

            switch ( LA(1) )
            {
            case HOST_SYMBOL:
            	{
            		alt168=1;
            	}
                break;
            case DATABASE_SYMBOL:
            	{
            		alt168=2;
            	}
                break;
            case USER_SYMBOL:
            	{
            		alt168=3;
            	}
                break;
            case PASSWORD_SYMBOL:
            	{
            		alt168=4;
            	}
                break;
            case SOCKET_SYMBOL:
            	{
            		alt168=5;
            	}
                break;
            case OWNER_SYMBOL:
            	{
            		alt168=6;
            	}
                break;
            case PORT_SYMBOL:
            	{
            		alt168=7;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 168;
                EXCEPTION->state        = 0;


                goto ruleserver_optionEx;

            }

            switch (alt168)
            {
        	case 1:
        	    // MySQL.g:929:2: HOST_SYMBOL string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        HOST_SYMBOL544 = (pANTLR3_COMMON_TOKEN) MATCHT(HOST_SYMBOL, &FOLLOW_HOST_SYMBOL_in_server_option3019);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleserver_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        HOST_SYMBOL544_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, HOST_SYMBOL544));
        	        ADAPTOR->addChild(ADAPTOR, root_0, HOST_SYMBOL544_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_server_option3021);
        	        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 2:
        	    // MySQL.g:930:4: DATABASE_SYMBOL string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DATABASE_SYMBOL546 = (pANTLR3_COMMON_TOKEN) MATCHT(DATABASE_SYMBOL, &FOLLOW_DATABASE_SYMBOL_in_server_option3026);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleserver_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DATABASE_SYMBOL546_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATABASE_SYMBOL546));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DATABASE_SYMBOL546_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_server_option3028);
        	        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 3:
        	    // MySQL.g:931:4: USER_SYMBOL string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        USER_SYMBOL548 = (pANTLR3_COMMON_TOKEN) MATCHT(USER_SYMBOL, &FOLLOW_USER_SYMBOL_in_server_option3033);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleserver_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        USER_SYMBOL548_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USER_SYMBOL548));
        	        ADAPTOR->addChild(ADAPTOR, root_0, USER_SYMBOL548_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_server_option3035);
        	        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 4:
        	    // MySQL.g:932:4: PASSWORD_SYMBOL string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        PASSWORD_SYMBOL550 = (pANTLR3_COMMON_TOKEN) MATCHT(PASSWORD_SYMBOL, &FOLLOW_PASSWORD_SYMBOL_in_server_option3040);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleserver_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PASSWORD_SYMBOL550_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PASSWORD_SYMBOL550));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PASSWORD_SYMBOL550_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_server_option3042);
        	        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 5:
        	    // MySQL.g:933:4: SOCKET_SYMBOL string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SOCKET_SYMBOL552 = (pANTLR3_COMMON_TOKEN) MATCHT(SOCKET_SYMBOL, &FOLLOW_SOCKET_SYMBOL_in_server_option3047);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleserver_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SOCKET_SYMBOL552_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SOCKET_SYMBOL552));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SOCKET_SYMBOL552_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_server_option3049);
        	        string_literal553=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleserver_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal553.tree);

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:934:4: OWNER_SYMBOL string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        OWNER_SYMBOL554 = (pANTLR3_COMMON_TOKEN) MATCHT(OWNER_SYMBOL, &FOLLOW_OWNER_SYMBOL_in_server_option3054);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleserver_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OWNER_SYMBOL554_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OWNER_SYMBOL554));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OWNER_SYMBOL554_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_server_option3056);
        	        string_literal555=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleserver_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal555.tree);

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:935:4: PORT_SYMBOL ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        PORT_SYMBOL556 = (pANTLR3_COMMON_TOKEN) MATCHT(PORT_SYMBOL, &FOLLOW_PORT_SYMBOL_in_server_option3061);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleserver_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PORT_SYMBOL556_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PORT_SYMBOL556));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PORT_SYMBOL556_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_ulong_number_in_server_option3063);
        	        ulong_number557=ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleserver_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number557.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:938: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_SYMBOL558;
    pANTLR3_COMMON_TOKEN    SEMICOLON_SYMBOL560;
    pANTLR3_COMMON_TOKEN    EOF561;
    MySQLParser_create_table_tail_return create_table_tail559;
    #undef	RETURN_TYPE_create_table_tail559
    #define	RETURN_TYPE_create_table_tail559 MySQLParser_create_table_tail_return

    pANTLR3_BASE_TREE CREATE_SYMBOL558_tree;
    pANTLR3_BASE_TREE SEMICOLON_SYMBOL560_tree;
    pANTLR3_BASE_TREE EOF561_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CREATE_SYMBOL558       = NULL;
    SEMICOLON_SYMBOL560       = NULL;
    EOF561       = NULL;
    create_table_tail559.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CREATE_SYMBOL558_tree   = NULL;
    SEMICOLON_SYMBOL560_tree   = NULL;
    EOF561_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:938:13: ( CREATE_SYMBOL ^ create_table_tail ( SEMICOLON_SYMBOL )? EOF )
        // MySQL.g:939:2: CREATE_SYMBOL ^ create_table_tail ( SEMICOLON_SYMBOL )? EOF
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            CREATE_SYMBOL558 = (pANTLR3_COMMON_TOKEN) MATCHT(CREATE_SYMBOL, &FOLLOW_CREATE_SYMBOL_in_create_table3073);
            if  (HASEXCEPTION())
            {
                goto rulecreate_tableEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CREATE_SYMBOL558_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CREATE_SYMBOL558))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, CREATE_SYMBOL558_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_create_table_tail_in_create_table3076);
            create_table_tail559=create_table_tail(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_tableEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_table_tail559.tree);

            // MySQL.g:939:35: ( SEMICOLON_SYMBOL )?
            {
                int alt169=2;
                switch ( LA(1) )
                {
                    case SEMICOLON_SYMBOL:
                    	{
                    		alt169=1;
                    	}
                        break;
                }

                switch (alt169)
                {
            	case 1:
            	    // MySQL.g:939:35: SEMICOLON_SYMBOL
            	    {
            	        SEMICOLON_SYMBOL560 = (pANTLR3_COMMON_TOKEN) MATCHT(SEMICOLON_SYMBOL, &FOLLOW_SEMICOLON_SYMBOL_in_create_table3078);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_tableEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SEMICOLON_SYMBOL560_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SEMICOLON_SYMBOL560));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SEMICOLON_SYMBOL560_tree);
            	        }

            	    }
            	    break;

                }
            }

            EOF561 = (pANTLR3_COMMON_TOKEN) MATCHT(EOF, &FOLLOW_EOF_in_create_table3081);
            if  (HASEXCEPTION())
            {
                goto rulecreate_tableEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EOF561_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EOF561));
            ADAPTOR->addChild(ADAPTOR, root_0, EOF561_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:942: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_SYMBOL562;
    pANTLR3_COMMON_TOKEN    TABLE_SYMBOL563;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL566;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL568;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL574;
    pANTLR3_COMMON_TOKEN    LIKE_SYMBOL579;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL581;
    pANTLR3_COMMON_TOKEN    LIKE_SYMBOL582;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL584;
    MySQLParser_if_not_exists_return if_not_exists564;
    #undef	RETURN_TYPE_if_not_exists564
    #define	RETURN_TYPE_if_not_exists564 MySQLParser_if_not_exists_return

    MySQLParser_table_name_return table_name565;
    #undef	RETURN_TYPE_table_name565
    #define	RETURN_TYPE_table_name565 MySQLParser_table_name_return

    MySQLParser_create_field_list_return create_field_list567;
    #undef	RETURN_TYPE_create_field_list567
    #define	RETURN_TYPE_create_field_list567 MySQLParser_create_field_list_return

    MySQLParser_create_table_options_return create_table_options569;
    #undef	RETURN_TYPE_create_table_options569
    #define	RETURN_TYPE_create_table_options569 MySQLParser_create_table_options_return

    MySQLParser_partitioning_return partitioning570;
    #undef	RETURN_TYPE_partitioning570
    #define	RETURN_TYPE_partitioning570 MySQLParser_partitioning_return

    MySQLParser_table_creation_source_return table_creation_source571;
    #undef	RETURN_TYPE_table_creation_source571
    #define	RETURN_TYPE_table_creation_source571 MySQLParser_table_creation_source_return

    MySQLParser_partitioning_return partitioning572;
    #undef	RETURN_TYPE_partitioning572
    #define	RETURN_TYPE_partitioning572 MySQLParser_partitioning_return

    MySQLParser_create_select_return create_select573;
    #undef	RETURN_TYPE_create_select573
    #define	RETURN_TYPE_create_select573 MySQLParser_create_select_return

    MySQLParser_union_clause_return union_clause575;
    #undef	RETURN_TYPE_union_clause575
    #define	RETURN_TYPE_union_clause575 MySQLParser_union_clause_return

    MySQLParser_create_table_options_return create_table_options576;
    #undef	RETURN_TYPE_create_table_options576
    #define	RETURN_TYPE_create_table_options576 MySQLParser_create_table_options_return

    MySQLParser_partitioning_return partitioning577;
    #undef	RETURN_TYPE_partitioning577
    #define	RETURN_TYPE_partitioning577 MySQLParser_partitioning_return

    MySQLParser_table_creation_source_return table_creation_source578;
    #undef	RETURN_TYPE_table_creation_source578
    #define	RETURN_TYPE_table_creation_source578 MySQLParser_table_creation_source_return

    MySQLParser_table_ref_return table_ref580;
    #undef	RETURN_TYPE_table_ref580
    #define	RETURN_TYPE_table_ref580 MySQLParser_table_ref_return

    MySQLParser_table_ref_return table_ref583;
    #undef	RETURN_TYPE_table_ref583
    #define	RETURN_TYPE_table_ref583 MySQLParser_table_ref_return

    pANTLR3_BASE_TREE TEMPORARY_SYMBOL562_tree;
    pANTLR3_BASE_TREE TABLE_SYMBOL563_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL566_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL568_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL574_tree;
    pANTLR3_BASE_TREE LIKE_SYMBOL579_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL581_tree;
    pANTLR3_BASE_TREE LIKE_SYMBOL582_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL584_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    TEMPORARY_SYMBOL562       = NULL;
    TABLE_SYMBOL563       = NULL;
    OPEN_PAR_SYMBOL566       = NULL;
    CLOSE_PAR_SYMBOL568       = NULL;
    CLOSE_PAR_SYMBOL574       = NULL;
    LIKE_SYMBOL579       = NULL;
    OPEN_PAR_SYMBOL581       = NULL;
    LIKE_SYMBOL582       = NULL;
    CLOSE_PAR_SYMBOL584       = NULL;
    if_not_exists564.tree = NULL;

    table_name565.tree = NULL;

    create_field_list567.tree = NULL;

    create_table_options569.tree = NULL;

    partitioning570.tree = NULL;

    table_creation_source571.tree = NULL;

    partitioning572.tree = NULL;

    create_select573.tree = NULL;

    union_clause575.tree = NULL;

    create_table_options576.tree = NULL;

    partitioning577.tree = NULL;

    table_creation_source578.tree = NULL;

    table_ref580.tree = NULL;

    table_ref583.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    TEMPORARY_SYMBOL562_tree   = NULL;
    TABLE_SYMBOL563_tree   = NULL;
    OPEN_PAR_SYMBOL566_tree   = NULL;
    CLOSE_PAR_SYMBOL568_tree   = NULL;
    CLOSE_PAR_SYMBOL574_tree   = NULL;
    LIKE_SYMBOL579_tree   = NULL;
    OPEN_PAR_SYMBOL581_tree   = NULL;
    LIKE_SYMBOL582_tree   = NULL;
    CLOSE_PAR_SYMBOL584_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:942: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:943: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:943:2: ( TEMPORARY_SYMBOL )?
            {
                int alt170=2;
                switch ( LA(1) )
                {
                    case TEMPORARY_SYMBOL:
                    	{
                    		alt170=1;
                    	}
                        break;
                }

                switch (alt170)
                {
            	case 1:
            	    // MySQL.g:943:2: TEMPORARY_SYMBOL
            	    {
            	        TEMPORARY_SYMBOL562 = (pANTLR3_COMMON_TOKEN) MATCHT(TEMPORARY_SYMBOL, &FOLLOW_TEMPORARY_SYMBOL_in_create_table_tail3090);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_table_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        TEMPORARY_SYMBOL562_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TEMPORARY_SYMBOL562));
            	        ADAPTOR->addChild(ADAPTOR, root_0, TEMPORARY_SYMBOL562_tree);
            	        }

            	    }
            	    break;

                }
            }

            TABLE_SYMBOL563 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLE_SYMBOL, &FOLLOW_TABLE_SYMBOL_in_create_table_tail3093);
            if  (HASEXCEPTION())
            {
                goto rulecreate_table_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            TABLE_SYMBOL563_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLE_SYMBOL563));
            ADAPTOR->addChild(ADAPTOR, root_0, TABLE_SYMBOL563_tree);
            }

            // MySQL.g:943:33: ( if_not_exists )?
            {
                int alt171=2;
                switch ( LA(1) )
                {
                    case IF_SYMBOL:
                    	{
                    		alt171=1;
                    	}
                        break;
                }

                switch (alt171)
                {
            	case 1:
            	    // MySQL.g:943:33: if_not_exists
            	    {
            	        FOLLOWPUSH(FOLLOW_if_not_exists_in_create_table_tail3095);
            	        if_not_exists564=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_exists564.tree);

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_table_name_in_create_table_tail3098);
            table_name565=table_name(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_table_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_name565.tree);

            // MySQL.g:944: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 alt179=4;
                {
                    int LA179_0 = LA(1);
                    if ( (LA179_0 == OPEN_PAR_SYMBOL))
                    {
                        {
                            int LA179_1 = LA(2);
                            if ( (LA179_1 == LIKE_SYMBOL))
                            {
                                alt179=4;
                            }
                            else if ( (((LA179_1 >= ACCOUNT_SYMBOL) && (LA179_1 <= YEAR_SYMBOL)) || LA179_1 == CHECK_SYMBOL || LA179_1 == CONSTRAINT_SYMBOL || LA179_1 == FOREIGN_SYMBOL || LA179_1 == FULLTEXT_SYMBOL || LA179_1 == INDEX_SYMBOL || LA179_1 == KEY_SYMBOL || LA179_1 == PRIMARY_SYMBOL || LA179_1 == SPATIAL_SYMBOL || LA179_1 == UNIQUE_SYMBOL || LA179_1 == BACK_TICK_QUOTED_ID || LA179_1 == DOUBLE_QUOTED_TEXT || LA179_1 == IDENTIFIER))
                            {
                                alt179=1;
                            }
                            else if ( (LA179_1 == SELECT_SYMBOL))
                            {
                                alt179=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 179;
                                EXCEPTION->state        = 1;


                                goto rulecreate_table_tailEx;

                            }
                        }
                    }
                    else if ( (((LA179_0 >= CHARSET_SYMBOL) && (LA179_0 <= CHECKSUM_SYMBOL)) || LA179_0 == COMMENT_SYMBOL || LA179_0 == PARTITION_SYMBOL || LA179_0 == AUTO_INCREMENT_SYMBOL || LA179_0 == AVG_ROW_LENGTH_SYMBOL || LA179_0 == COMPRESSION_SYMBOL || LA179_0 == CONNECTION_SYMBOL || LA179_0 == DATA_SYMBOL || LA179_0 == DELAY_KEY_WRITE_SYMBOL || LA179_0 == ENGINE_SYMBOL || LA179_0 == INSERT_METHOD_SYMBOL || LA179_0 == KEY_BLOCK_SIZE_SYMBOL || LA179_0 == MAX_ROWS_SYMBOL || LA179_0 == MIN_ROWS_SYMBOL || LA179_0 == PACK_KEYS_SYMBOL || LA179_0 == PASSWORD_SYMBOL || LA179_0 == ROW_FORMAT_SYMBOL || ((LA179_0 >= STATS_AUTO_RECALC_SYMBOL) && (LA179_0 <= STATS_SAMPLE_PAGES_SYMBOL)) || LA179_0 == STORAGE_SYMBOL || ((LA179_0 >= TABLE_CHECKSUM_SYMBOL) && (LA179_0 <= TABLESPACE_SYMBOL)) || LA179_0 == TYPE_SYMBOL || LA179_0 == CHAR_SYMBOL || LA179_0 == COLLATE_SYMBOL || LA179_0 == DEFAULT_SYMBOL || ((LA179_0 >= IGNORE_SYMBOL) && (LA179_0 <= INDEX_SYMBOL)) || LA179_0 == REPLACE_SYMBOL || LA179_0 == SELECT_SYMBOL || LA179_0 == UNION_SYMBOL || LA179_0 == AS_SYMBOL))
                    {
                        alt179=2;
                    }
                    else if ( (LA179_0 == LIKE_SYMBOL))
                    {
                        alt179=3;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 179;
                        EXCEPTION->state        = 0;


                        goto rulecreate_table_tailEx;

                    }
                }
                switch (alt179)
                {
            	case 1:
            	    // MySQL.g:945: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_SYMBOL566 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_create_table_tail3107);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_table_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OPEN_PAR_SYMBOL566_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL566));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL566_tree);
            	        }

            	        // MySQL.g:946:5: ( create_field_list CLOSE_PAR_SYMBOL ( create_table_options )? ( partitioning )? ( table_creation_source )? | partitioning create_select CLOSE_PAR_SYMBOL ( union_clause )? )
            	        {
            	            int alt176=2;
            	            {
            	                int LA176_0 = LA(1);
            	                if ( (((LA176_0 >= ACCOUNT_SYMBOL) && (LA176_0 <= PARSER_SYMBOL)) || ((LA176_0 >= PORT_SYMBOL) && (LA176_0 <= YEAR_SYMBOL)) || LA176_0 == CHECK_SYMBOL || LA176_0 == CONSTRAINT_SYMBOL || LA176_0 == FOREIGN_SYMBOL || LA176_0 == FULLTEXT_SYMBOL || LA176_0 == INDEX_SYMBOL || LA176_0 == KEY_SYMBOL || LA176_0 == PRIMARY_SYMBOL || LA176_0 == SPATIAL_SYMBOL || LA176_0 == UNIQUE_SYMBOL || LA176_0 == BACK_TICK_QUOTED_ID || LA176_0 == DOUBLE_QUOTED_TEXT || LA176_0 == IDENTIFIER))
            	                {
            	                    alt176=1;
            	                }
            	                else if ( (LA176_0 == PARTITION_SYMBOL))
            	                {
            	                    {
            	                        int LA176_5 = LA(2);
            	                        if ( (LA176_5 == BY_SYMBOL))
            	                        {
            	                            alt176=2;
            	                        }
            	                        else if ( (LA176_5 == BIT_SYMBOL || ((LA176_5 >= BOOL_SYMBOL) && (LA176_5 <= BOOLEAN_SYMBOL)) || ((LA176_5 >= DATETIME_SYMBOL) && (LA176_5 <= DATE_SYMBOL)) || LA176_5 == ENUM_SYMBOL || LA176_5 == FIXED_SYMBOL || ((LA176_5 >= GEOMETRY_SYMBOL) && (LA176_5 <= GEOMETRYCOLLECTION_SYMBOL)) || LA176_5 == JSON_SYMBOL || LA176_5 == LINESTRING_SYMBOL || ((LA176_5 >= MULTILINESTRING_SYMBOL) && (LA176_5 <= MULTIPOLYGON_SYMBOL)) || ((LA176_5 >= NATIONAL_SYMBOL) && (LA176_5 <= NCHAR_SYMBOL)) || LA176_5 == NVARCHAR_SYMBOL || ((LA176_5 >= POINT_SYMBOL) && (LA176_5 <= POLYGON_SYMBOL)) || LA176_5 == SERIAL_SYMBOL || LA176_5 == TEXT_SYMBOL || LA176_5 == TIMESTAMP_SYMBOL || LA176_5 == TIME_SYMBOL || LA176_5 == YEAR_SYMBOL || ((LA176_5 >= BIGINT_SYMBOL) && (LA176_5 <= BINARY_SYMBOL)) || LA176_5 == BLOB_SYMBOL || LA176_5 == CHAR_SYMBOL || LA176_5 == DECIMAL_SYMBOL || LA176_5 == FLOAT_SYMBOL || LA176_5 == INT_SYMBOL || ((LA176_5 >= LONGBLOB_SYMBOL) && (LA176_5 <= LONGTEXT_SYMBOL)) || LA176_5 == LONG_SYMBOL || ((LA176_5 >= MEDIUMBLOB_SYMBOL) && (LA176_5 <= MEDIUMTEXT_SYMBOL)) || LA176_5 == NUMERIC_SYMBOL || LA176_5 == REAL_SYMBOL || LA176_5 == SET_SYMBOL || LA176_5 == SMALLINT_SYMBOL || ((LA176_5 >= TINYBLOB_SYMBOL) && (LA176_5 <= TINYTEXT_SYMBOL)) || LA176_5 == VARBINARY_SYMBOL || LA176_5 == VARCHAR_SYMBOL || LA176_5 == DOUBLE_SYMBOL))
            	                        {
            	                            alt176=1;
            	                        }
            	                        else
            	                        {
            	                            if (BACKTRACKING>0)
            	                            {
            	                                FAILEDFLAG = ANTLR3_TRUE;
            	                                return retval;
            	                            }


            	                            CONSTRUCTEX();
            	                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                            EXCEPTION->message      = (void *)"";
            	                            EXCEPTION->decisionNum  = 176;
            	                            EXCEPTION->state        = 5;


            	                            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  = 176;
            	                    EXCEPTION->state        = 0;


            	                    goto rulecreate_table_tailEx;

            	                }
            	            }
            	            switch (alt176)
            	            {
            	        	case 1:
            	        	    // MySQL.g:947:6: create_field_list CLOSE_PAR_SYMBOL ( create_table_options )? ( partitioning )? ( table_creation_source )?
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_create_field_list_in_create_table_tail3120);
            	        	        create_field_list567=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_list567.tree);

            	        	        CLOSE_PAR_SYMBOL568 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_create_table_tail3122);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecreate_table_tailEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        CLOSE_PAR_SYMBOL568_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL568));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL568_tree);
            	        	        }

            	        	        // MySQL.g:947:41: ( create_table_options )?
            	        	        {
            	        	            int alt172=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:
            	        	                	{
            	        	                		alt172=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt172)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:947:41: create_table_options
            	        	        	    {
            	        	        	        FOLLOWPUSH(FOLLOW_create_table_options_in_create_table_tail3124);
            	        	        	        create_table_options569=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_options569.tree);

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	        // MySQL.g:947:63: ( partitioning )?
            	        	        {
            	        	            int alt173=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case PARTITION_SYMBOL:
            	        	                	{
            	        	                		alt173=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt173)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:947:63: partitioning
            	        	        	    {
            	        	        	        FOLLOWPUSH(FOLLOW_partitioning_in_create_table_tail3127);
            	        	        	        partitioning570=partitioning(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulecreate_table_tailEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, partitioning570.tree);

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	        // MySQL.g:947:77: ( table_creation_source )?
            	        	        {
            	        	            int alt174=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case IGNORE_SYMBOL:
            	        	                case OPEN_PAR_SYMBOL:
            	        	                case REPLACE_SYMBOL:
            	        	                case SELECT_SYMBOL:
            	        	                case AS_SYMBOL:
            	        	                	{
            	        	                		alt174=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt174)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:947:77: table_creation_source
            	        	        	    {
            	        	        	        FOLLOWPUSH(FOLLOW_table_creation_source_in_create_table_tail3130);
            	        	        	        table_creation_source571=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_source571.tree);

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:948:8: partitioning create_select CLOSE_PAR_SYMBOL ( union_clause )?
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_partitioning_in_create_table_tail3140);
            	        	        partitioning572=partitioning(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecreate_table_tailEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, partitioning572.tree);

            	        	        FOLLOWPUSH(FOLLOW_create_select_in_create_table_tail3142);
            	        	        create_select573=create_select(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecreate_table_tailEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_select573.tree);

            	        	        CLOSE_PAR_SYMBOL574 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_create_table_tail3144);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecreate_table_tailEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        CLOSE_PAR_SYMBOL574_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL574));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL574_tree);
            	        	        }

            	        	        // MySQL.g:948:52: ( union_clause )?
            	        	        {
            	        	            int alt175=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case UNION_SYMBOL:
            	        	                	{
            	        	                		alt175=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt175)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:948:52: union_clause
            	        	        	    {
            	        	        	        FOLLOWPUSH(FOLLOW_union_clause_in_create_table_tail3146);
            	        	        	        union_clause575=union_clause(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulecreate_table_tailEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, union_clause575.tree);

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:950:6: ( create_table_options )? ( partitioning )? table_creation_source
            	    {
            	        // MySQL.g:950:6: ( create_table_options )?
            	        {
            	            int alt177=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:
            	                	{
            	                		alt177=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt177)
            	            {
            	        	case 1:
            	        	    // MySQL.g:950:6: create_table_options
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_create_table_options_in_create_table_tail3160);
            	        	        create_table_options576=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_options576.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:950:28: ( partitioning )?
            	        {
            	            int alt178=2;
            	            switch ( LA(1) )
            	            {
            	                case PARTITION_SYMBOL:
            	                	{
            	                		alt178=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt178)
            	            {
            	        	case 1:
            	        	    // MySQL.g:950:28: partitioning
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_partitioning_in_create_table_tail3163);
            	        	        partitioning577=partitioning(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecreate_table_tailEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, partitioning577.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_table_creation_source_in_create_table_tail3166);
            	        table_creation_source578=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_source578.tree);

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:951:6: LIKE_SYMBOL table_ref
            	    {
            	        LIKE_SYMBOL579 = (pANTLR3_COMMON_TOKEN) MATCHT(LIKE_SYMBOL, &FOLLOW_LIKE_SYMBOL_in_create_table_tail3173);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_table_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        LIKE_SYMBOL579_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LIKE_SYMBOL579));
            	        ADAPTOR->addChild(ADAPTOR, root_0, LIKE_SYMBOL579_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_table_ref_in_create_table_tail3175);
            	        table_ref580=table_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_table_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref580.tree);

            	    }
            	    break;
            	case 4:
            	    // MySQL.g:952:6: OPEN_PAR_SYMBOL LIKE_SYMBOL table_ref CLOSE_PAR_SYMBOL
            	    {
            	        OPEN_PAR_SYMBOL581 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_create_table_tail3182);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_table_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OPEN_PAR_SYMBOL581_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL581));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL581_tree);
            	        }

            	        LIKE_SYMBOL582 = (pANTLR3_COMMON_TOKEN) MATCHT(LIKE_SYMBOL, &FOLLOW_LIKE_SYMBOL_in_create_table_tail3184);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_table_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        LIKE_SYMBOL582_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LIKE_SYMBOL582));
            	        ADAPTOR->addChild(ADAPTOR, root_0, LIKE_SYMBOL582_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_table_ref_in_create_table_tail3186);
            	        table_ref583=table_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_table_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref583.tree);

            	        CLOSE_PAR_SYMBOL584 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_create_table_tail3188);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_table_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CLOSE_PAR_SYMBOL584_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL584));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL584_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:956: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_SYMBOL586;
    MySQLParser_create_item_return create_item585;
    #undef	RETURN_TYPE_create_item585
    #define	RETURN_TYPE_create_item585 MySQLParser_create_item_return

    MySQLParser_create_item_return create_item587;
    #undef	RETURN_TYPE_create_item587
    #define	RETURN_TYPE_create_item587 MySQLParser_create_item_return

    pANTLR3_BASE_TREE COMMA_SYMBOL586_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL586       = NULL;
    create_item585.tree = NULL;

    create_item587.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL586_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:956:18: ( create_item ( COMMA_SYMBOL create_item )* )
        // MySQL.g:957:2: create_item ( COMMA_SYMBOL create_item )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_create_item_in_create_field_list3201);
            create_item585=create_item(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_field_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_item585.tree);

            // MySQL.g:957:14: ( COMMA_SYMBOL create_item )*

            for (;;)
            {
                int alt180=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt180=1;
                	}
                    break;

                }

                switch (alt180)
                {
            	case 1:
            	    // MySQL.g:957:15: COMMA_SYMBOL create_item
            	    {
            	        COMMA_SYMBOL586 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_create_field_list3204);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_field_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL586_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL586));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL586_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_create_item_in_create_field_list3206);
            	        create_item587=create_item(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_field_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_item587.tree);

            	    }
            	    break;

            	default:
            	    goto loop180;	/* break out of the loop */
            	    break;
                }
            }
            loop180: ; /* 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:960: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_item588;
    #undef	RETURN_TYPE_create_field_list_item588
    #define	RETURN_TYPE_create_field_list_item588 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_item588.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:960:12: ( create_field_list_item -> ^( CREATE_ITEM_TOKEN create_field_list_item ) )
        // MySQL.g:961:2: create_field_list_item
        {
            FOLLOWPUSH(FOLLOW_create_field_list_item_in_create_item3217);
            create_field_list_item588=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_item588.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;
            	// 961:25: -> ^( CREATE_ITEM_TOKEN create_field_list_item )
            	{
            	    // MySQL.g:961: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:964: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_definition589;
    #undef	RETURN_TYPE_column_definition589
    #define	RETURN_TYPE_column_definition589 MySQLParser_column_definition_return

    MySQLParser_key_def_return key_def590;
    #undef	RETURN_TYPE_key_def590
    #define	RETURN_TYPE_key_def590 MySQLParser_key_def_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    column_definition589.tree = NULL;

    key_def590.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:964:23: ( column_definition | key_def )

            ANTLR3_UINT32 alt181;

            alt181=2;

            {
                int LA181_0 = LA(1);
                if ( (((LA181_0 >= ACCOUNT_SYMBOL) && (LA181_0 <= YEAR_SYMBOL)) || LA181_0 == BACK_TICK_QUOTED_ID || LA181_0 == DOUBLE_QUOTED_TEXT || LA181_0 == IDENTIFIER))
                {
                    alt181=1;
                }
                else if ( (LA181_0 == CHECK_SYMBOL || LA181_0 == CONSTRAINT_SYMBOL || LA181_0 == FOREIGN_SYMBOL || LA181_0 == FULLTEXT_SYMBOL || LA181_0 == INDEX_SYMBOL || LA181_0 == KEY_SYMBOL || LA181_0 == PRIMARY_SYMBOL || LA181_0 == SPATIAL_SYMBOL || LA181_0 == UNIQUE_SYMBOL))
                {
                    alt181=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 181;
                    EXCEPTION->state        = 0;


                    goto rulecreate_field_list_itemEx;

                }
            }
            switch (alt181)
            {
        	case 1:
        	    // MySQL.g:965:2: column_definition
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_column_definition_in_create_field_list_item3234);
        	        column_definition589=column_definition(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_field_list_itemEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, column_definition589.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:966:4: key_def
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_key_def_in_create_field_list_item3239);
        	        key_def590=key_def(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_field_list_itemEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, key_def590.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:969: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    set591;
    pANTLR3_COMMON_TOKEN    AS_SYMBOL592;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL595;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL597;
    MySQLParser_create_select_return create_select593;
    #undef	RETURN_TYPE_create_select593
    #define	RETURN_TYPE_create_select593 MySQLParser_create_select_return

    MySQLParser_union_clause_return union_clause594;
    #undef	RETURN_TYPE_union_clause594
    #define	RETURN_TYPE_union_clause594 MySQLParser_union_clause_return

    MySQLParser_create_select_return create_select596;
    #undef	RETURN_TYPE_create_select596
    #define	RETURN_TYPE_create_select596 MySQLParser_create_select_return

    MySQLParser_union_or_order_by_or_limit_return union_or_order_by_or_limit598;
    #undef	RETURN_TYPE_union_or_order_by_or_limit598
    #define	RETURN_TYPE_union_or_order_by_or_limit598 MySQLParser_union_or_order_by_or_limit_return

    pANTLR3_BASE_TREE set591_tree;
    pANTLR3_BASE_TREE AS_SYMBOL592_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL595_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL597_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set591       = NULL;
    AS_SYMBOL592       = NULL;
    OPEN_PAR_SYMBOL595       = NULL;
    CLOSE_PAR_SYMBOL597       = NULL;
    create_select593.tree = NULL;

    union_clause594.tree = NULL;

    create_select596.tree = NULL;

    union_or_order_by_or_limit598.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set591_tree   = NULL;
    AS_SYMBOL592_tree   = NULL;
    OPEN_PAR_SYMBOL595_tree   = NULL;
    CLOSE_PAR_SYMBOL597_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:969: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:970: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:970:2: ( REPLACE_SYMBOL | IGNORE_SYMBOL )?
            {
                int alt182=2;
                switch ( LA(1) )
                {
                    case IGNORE_SYMBOL:
                    case REPLACE_SYMBOL:
                    	{
                    		alt182=1;
                    	}
                        break;
                }

                switch (alt182)
                {
            	case 1:
            	    // MySQL.g:
            	    {
            	        set591=(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, set591))
            	            );
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

            	        }
            	        else
            	        {
            	            if (BACKTRACKING>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:970:36: ( AS_SYMBOL )?
            {
                int alt183=2;
                switch ( LA(1) )
                {
                    case AS_SYMBOL:
                    	{
                    		alt183=1;
                    	}
                        break;
                }

                switch (alt183)
                {
            	case 1:
            	    // MySQL.g:970:36: AS_SYMBOL
            	    {
            	        AS_SYMBOL592 = (pANTLR3_COMMON_TOKEN) MATCHT(AS_SYMBOL, &FOLLOW_AS_SYMBOL_in_table_creation_source3258);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_creation_sourceEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        AS_SYMBOL592_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AS_SYMBOL592));
            	        ADAPTOR->addChild(ADAPTOR, root_0, AS_SYMBOL592_tree);
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:971:2: ( create_select ( union_clause )? | OPEN_PAR_SYMBOL create_select CLOSE_PAR_SYMBOL ( union_or_order_by_or_limit )? )
            {
                int alt186=2;
                switch ( LA(1) )
                {
                case SELECT_SYMBOL:
                	{
                		alt186=1;
                	}
                    break;
                case OPEN_PAR_SYMBOL:
                	{
                		alt186=2;
                	}
                    break;

                default:
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }

                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 186;
                    EXCEPTION->state        = 0;


                    goto ruletable_creation_sourceEx;

                }

                switch (alt186)
                {
            	case 1:
            	    // MySQL.g:972:3: create_select ( union_clause )?
            	    {
            	        FOLLOWPUSH(FOLLOW_create_select_in_table_creation_source3266);
            	        create_select593=create_select(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_creation_sourceEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_select593.tree);

            	        // MySQL.g:972:17: ( union_clause )?
            	        {
            	            int alt184=2;
            	            switch ( LA(1) )
            	            {
            	                case UNION_SYMBOL:
            	                	{
            	                		alt184=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt184)
            	            {
            	        	case 1:
            	        	    // MySQL.g:972:17: union_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_union_clause_in_table_creation_source3268);
            	        	        union_clause594=union_clause(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruletable_creation_sourceEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, union_clause594.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:973:5: OPEN_PAR_SYMBOL create_select CLOSE_PAR_SYMBOL ( union_or_order_by_or_limit )?
            	    {
            	        OPEN_PAR_SYMBOL595 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_table_creation_source3275);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_creation_sourceEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OPEN_PAR_SYMBOL595_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL595));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL595_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_create_select_in_table_creation_source3277);
            	        create_select596=create_select(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_creation_sourceEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_select596.tree);

            	        CLOSE_PAR_SYMBOL597 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_table_creation_source3279);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_creation_sourceEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CLOSE_PAR_SYMBOL597_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL597));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL597_tree);
            	        }

            	        // MySQL.g:973:52: ( union_or_order_by_or_limit )?
            	        {
            	            int alt185=2;
            	            switch ( LA(1) )
            	            {
            	                case LIMIT_SYMBOL:
            	                case ORDER_SYMBOL:
            	                case UNION_SYMBOL:
            	                	{
            	                		alt185=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt185)
            	            {
            	        	case 1:
            	        	    // MySQL.g:973:52: union_or_order_by_or_limit
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_union_or_order_by_or_limit_in_table_creation_source3281);
            	        	        union_or_order_by_or_limit598=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_limit598.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:978: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_SYMBOL599;
    MySQLParser_select_option_return select_option600;
    #undef	RETURN_TYPE_select_option600
    #define	RETURN_TYPE_select_option600 MySQLParser_select_option_return

    MySQLParser_select_item_list_return select_item_list601;
    #undef	RETURN_TYPE_select_item_list601
    #define	RETURN_TYPE_select_item_list601 MySQLParser_select_item_list_return

    MySQLParser_table_expression_return table_expression602;
    #undef	RETURN_TYPE_table_expression602
    #define	RETURN_TYPE_table_expression602 MySQLParser_table_expression_return

    pANTLR3_BASE_TREE SELECT_SYMBOL599_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SELECT_SYMBOL599       = NULL;
    select_option600.tree = NULL;

    select_item_list601.tree = NULL;

    table_expression602.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SELECT_SYMBOL599_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:978:14: ( SELECT_SYMBOL ( options {greedy=true; } : select_option )* select_item_list table_expression )
        // MySQL.g:979:2: SELECT_SYMBOL ( options {greedy=true; } : select_option )* select_item_list table_expression
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            SELECT_SYMBOL599 = (pANTLR3_COMMON_TOKEN) MATCHT(SELECT_SYMBOL, &FOLLOW_SELECT_SYMBOL_in_create_select3295);
            if  (HASEXCEPTION())
            {
                goto rulecreate_selectEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            SELECT_SYMBOL599_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SELECT_SYMBOL599));
            ADAPTOR->addChild(ADAPTOR, root_0, SELECT_SYMBOL599_tree);
            }

            // MySQL.g:979:16: ( options {greedy=true; } : select_option )*

            for (;;)
            {
                int alt187=2;
                switch ( LA(1) )
                {
                case SQL_BUFFER_RESULT_SYMBOL:
                	{
                		{
                		   /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		    */
                		    int LA187_96 = LA(2);
                		    if ( (LA187_96 == DOT_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == MOD_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == MINUS_OPERATOR || LA187_96 == PLUS_OPERATOR))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == NOT_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == SOUNDS_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == IDENTIFIER))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == BACK_TICK_QUOTED_ID))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == DOUBLE_QUOTED_TEXT))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == DATE_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == ASCII_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == INTERVAL_SYMBOL || LA187_96 == NCHAR_TEXT || LA187_96 == NOT2_SYMBOL || LA187_96 == SINGLE_QUOTED_TEXT || LA187_96 == BITWISE_NOT_OPERATOR || LA187_96 == LOGICAL_NOT_OPERATOR || LA187_96 == UNDERSCORE_CHARSET))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == DECIMAL_NUMBER || LA187_96 == FLOAT_NUMBER || LA187_96 == HEX_NUMBER || LA187_96 == INT_NUMBER || LA187_96 == LONG_NUMBER || LA187_96 == ULONGLONG_NUMBER))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == TIME_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == TIMESTAMP_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == DAY_SYMBOL || LA187_96 == FALSE_SYMBOL || ((LA187_96 >= NULL2_SYMBOL) && (LA187_96 <= NULL_SYMBOL)) || LA187_96 == TRUE_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == CHAR_SYMBOL || LA187_96 == CURRENT_USER_SYMBOL || LA187_96 == BIN_NUMBER))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == HOUR_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == MINUTE_SYMBOL || LA187_96 == INSERT_SYMBOL || LA187_96 == LEFT_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == MONTH_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == SECOND_SYMBOL || LA187_96 == RIGHT_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == USER_SYMBOL || LA187_96 == TRIM_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == YEAR_SYMBOL || LA187_96 == VALUES_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == ADDDATE_SYMBOL || LA187_96 == SUBDATE_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == GET_FORMAT_SYMBOL || LA187_96 == CURDATE_SYMBOL || LA187_96 == CURTIME_SYMBOL || LA187_96 == DATE_ADD_SYMBOL || LA187_96 == DATE_SUB_SYMBOL || LA187_96 == EXTRACT_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (((LA187_96 >= TIMESTAMP_ADD_SYMBOL) && (LA187_96 <= TIMESTAMP_DIFF_SYMBOL)) || LA187_96 == NOW_SYMBOL || LA187_96 == POSITION_SYMBOL || LA187_96 == SUBSTRING_SYMBOL || LA187_96 == SYSDATE_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == COALESCE_SYMBOL || ((LA187_96 >= UTC_DATE_SYMBOL) && (LA187_96 <= UTC_TIME_SYMBOL))))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == CHARSET_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == FORMAT_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == COLLATION_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == MICROSECOND_SYMBOL || LA187_96 == DATABASE_SYMBOL || LA187_96 == IF_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == TRUNCATE_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == OLD_PASSWORD_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == MULT_OPERATOR))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == PASSWORD_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == QUARTER_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == REVERSE_SYMBOL || ((LA187_96 >= REPEAT_SYMBOL) && (LA187_96 <= REPLACE_SYMBOL))))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == ROW_COUNT_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == WEEK_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == CONTAINS_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == WEIGHT_STRING_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == GEOMETRYCOLLECTION_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == LINESTRING_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == MULTILINESTRING_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == MULTIPOINT_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == MULTIPOLYGON_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == POINT_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == POLYGON_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == AVG_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == ACCOUNT_SYMBOL || ((LA187_96 >= ALWAYS_SYMBOL) && (LA187_96 <= CACHE_SYMBOL)) || ((LA187_96 >= CHECKSUM_SYMBOL) && (LA187_96 <= COMMIT_SYMBOL)) || ((LA187_96 >= DEALLOCATE_SYMBOL) && (LA187_96 <= FOLLOWS_SYMBOL)) || ((LA187_96 >= GROUP_REPLICATION_SYMBOL) && (LA187_96 <= STOP_SYMBOL)) || ((LA187_96 >= UNICODE_SYMBOL) && (LA187_96 <= XA_SYMBOL)) || LA187_96 == SHUTDOWN_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == ROW_SYMBOL || LA187_96 == COUNT_SYMBOL || LA187_96 == EXISTS_SYMBOL || LA187_96 == GROUP_CONCAT_SYMBOL || LA187_96 == MAX_SYMBOL || LA187_96 == MIN_SYMBOL || LA187_96 == OPEN_PAR_SYMBOL || LA187_96 == PARAM_MARKER || LA187_96 == STDDEV_SAMP_SYMBOL || LA187_96 == STD_SYMBOL || LA187_96 == SUM_SYMBOL || LA187_96 == VARIANCE_SYMBOL || LA187_96 == VAR_SAMP_SYMBOL || ((LA187_96 >= AT_AT_SIGN_SYMBOL) && (LA187_96 <= AT_TEXT_SUFFIX)) || ((LA187_96 >= BIT_AND_SYMBOL) && (LA187_96 <= BIT_XOR_SYMBOL))))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == SQL_BUFFER_RESULT_SYMBOL || LA187_96 == BINARY_SYMBOL || ((LA187_96 >= CASE_SYMBOL) && (LA187_96 <= CAST_SYMBOL)) || LA187_96 == CONVERT_SYMBOL || LA187_96 == MATCH_SYMBOL || LA187_96 == OPEN_CURLY_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == SQL_NO_CACHE_SYMBOL || LA187_96 == ALL_SYMBOL || LA187_96 == DISTINCT_SYMBOL || LA187_96 == HIGH_PRIORITY_SYMBOL || ((LA187_96 >= SQL_BIG_RESULT_SYMBOL) && (LA187_96 <= SQL_SMALL_RESULT_SYMBOL)) || LA187_96 == STRAIGHT_JOIN_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == SQL_CACHE_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == MAX_STATEMENT_TIME_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_96 == ACTION_SYMBOL || ((LA187_96 >= AFTER_SYMBOL) && (LA187_96 <= AVG_ROW_LENGTH_SYMBOL)) || ((LA187_96 >= BINLOG_SYMBOL) && (LA187_96 <= CLASS_ORIGIN_SYMBOL)) || LA187_96 == CODE_SYMBOL || ((LA187_96 >= COLUMN_NAME_SYMBOL) && (LA187_96 <= DATETIME_SYMBOL)) || ((LA187_96 >= DEFAULT_AUTH_SYMBOL) && (LA187_96 <= GEOMETRY_SYMBOL)) || ((LA187_96 >= GRANTS_SYMBOL) && (LA187_96 <= HOSTS_SYMBOL)) || ((LA187_96 >= IDENTIFIED_SYMBOL) && (LA187_96 <= LEVEL_SYMBOL)) || ((LA187_96 >= LIST_SYMBOL) && (LA187_96 <= MAX_QUERIES_PER_HOUR_SYMBOL)) || ((LA187_96 >= MAX_SIZE_SYMBOL) && (LA187_96 <= MESSAGE_TEXT_SYMBOL)) || LA187_96 == MIGRATE_SYMBOL || ((LA187_96 >= MIN_ROWS_SYMBOL) && (LA187_96 <= MODE_SYMBOL)) || ((LA187_96 >= MUTEX_SYMBOL) && (LA187_96 <= OFFSET_SYMBOL)) || ((LA187_96 >= ONE_SHOT_SYMBOL) && (LA187_96 <= PARTITIONS_SYMBOL)) || ((LA187_96 >= PHASE_SYMBOL) && (LA187_96 <= PLUGINS_SYMBOL)) || ((LA187_96 >= PRESERVE_SYMBOL) && (LA187_96 <= PROXY_SYMBOL)) || ((LA187_96 >= QUERY_SYMBOL) && (LA187_96 <= RETURNS_SYMBOL)) || ((LA187_96 >= ROLLUP_SYMBOL) && (LA187_96 <= ROWS_SYMBOL)) || LA187_96 == ROW_FORMAT_SYMBOL || ((LA187_96 >= RTREE_SYMBOL) && (LA187_96 <= SCHEMA_NAME_SYMBOL)) || ((LA187_96 >= SERIAL_SYMBOL) && (LA187_96 <= SHARE_SYMBOL)) || ((LA187_96 >= SLOW_SYMBOL) && (LA187_96 <= SNAPSHOT_SYMBOL)) || ((LA187_96 >= SOURCE_SYMBOL) && (LA187_96 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA187_96 >= SQL_THREAD_SYMBOL) && (LA187_96 <= SUBCLASS_ORIGIN_SYMBOL)) || ((LA187_96 >= SUBJECT_SYMBOL) && (LA187_96 <= TRIGGERS_SYMBOL)) || ((LA187_96 >= TYPES_SYMBOL) && (LA187_96 <= USER_RESOURCES_SYMBOL)) || ((LA187_96 >= USE_FRM_SYMBOL) && (LA187_96 <= WAIT_SYMBOL)) || LA187_96 == WORK_SYMBOL || ((LA187_96 >= X509_SYMBOL) && (LA187_96 <= XML_SYMBOL))))
                		    {
                		        alt187=1;
                		    }

                		}
                	}
                    break;
                case SQL_NO_CACHE_SYMBOL:
                	{
                		{
                		   /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		    */
                		    int LA187_104 = LA(2);
                		    if ( (LA187_104 == DOT_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == MOD_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == MINUS_OPERATOR || LA187_104 == PLUS_OPERATOR))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == NOT_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == SOUNDS_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == IDENTIFIER))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == BACK_TICK_QUOTED_ID))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == DOUBLE_QUOTED_TEXT))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == DATE_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == ASCII_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == INTERVAL_SYMBOL || LA187_104 == NCHAR_TEXT || LA187_104 == NOT2_SYMBOL || LA187_104 == SINGLE_QUOTED_TEXT || LA187_104 == BITWISE_NOT_OPERATOR || LA187_104 == LOGICAL_NOT_OPERATOR || LA187_104 == UNDERSCORE_CHARSET))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == DECIMAL_NUMBER || LA187_104 == FLOAT_NUMBER || LA187_104 == HEX_NUMBER || LA187_104 == INT_NUMBER || LA187_104 == LONG_NUMBER || LA187_104 == ULONGLONG_NUMBER))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == TIME_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == TIMESTAMP_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == DAY_SYMBOL || LA187_104 == FALSE_SYMBOL || ((LA187_104 >= NULL2_SYMBOL) && (LA187_104 <= NULL_SYMBOL)) || LA187_104 == TRUE_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == CHAR_SYMBOL || LA187_104 == CURRENT_USER_SYMBOL || LA187_104 == BIN_NUMBER))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == HOUR_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == MINUTE_SYMBOL || LA187_104 == INSERT_SYMBOL || LA187_104 == LEFT_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == MONTH_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == SECOND_SYMBOL || LA187_104 == RIGHT_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == USER_SYMBOL || LA187_104 == TRIM_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == YEAR_SYMBOL || LA187_104 == VALUES_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == ADDDATE_SYMBOL || LA187_104 == SUBDATE_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == GET_FORMAT_SYMBOL || LA187_104 == CURDATE_SYMBOL || LA187_104 == CURTIME_SYMBOL || LA187_104 == DATE_ADD_SYMBOL || LA187_104 == DATE_SUB_SYMBOL || LA187_104 == EXTRACT_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (((LA187_104 >= TIMESTAMP_ADD_SYMBOL) && (LA187_104 <= TIMESTAMP_DIFF_SYMBOL)) || LA187_104 == NOW_SYMBOL || LA187_104 == POSITION_SYMBOL || LA187_104 == SUBSTRING_SYMBOL || LA187_104 == SYSDATE_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == COALESCE_SYMBOL || ((LA187_104 >= UTC_DATE_SYMBOL) && (LA187_104 <= UTC_TIME_SYMBOL))))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == CHARSET_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == FORMAT_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == COLLATION_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == MICROSECOND_SYMBOL || LA187_104 == DATABASE_SYMBOL || LA187_104 == IF_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == TRUNCATE_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == OLD_PASSWORD_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == MULT_OPERATOR))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == PASSWORD_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == QUARTER_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == REVERSE_SYMBOL || ((LA187_104 >= REPEAT_SYMBOL) && (LA187_104 <= REPLACE_SYMBOL))))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == ROW_COUNT_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == WEEK_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == CONTAINS_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == WEIGHT_STRING_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == GEOMETRYCOLLECTION_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == LINESTRING_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == MULTILINESTRING_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == MULTIPOINT_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == MULTIPOLYGON_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == POINT_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == POLYGON_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == AVG_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == ACCOUNT_SYMBOL || ((LA187_104 >= ALWAYS_SYMBOL) && (LA187_104 <= CACHE_SYMBOL)) || ((LA187_104 >= CHECKSUM_SYMBOL) && (LA187_104 <= COMMIT_SYMBOL)) || ((LA187_104 >= DEALLOCATE_SYMBOL) && (LA187_104 <= FOLLOWS_SYMBOL)) || ((LA187_104 >= GROUP_REPLICATION_SYMBOL) && (LA187_104 <= STOP_SYMBOL)) || ((LA187_104 >= UNICODE_SYMBOL) && (LA187_104 <= XA_SYMBOL)) || LA187_104 == SHUTDOWN_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == ROW_SYMBOL || LA187_104 == COUNT_SYMBOL || LA187_104 == EXISTS_SYMBOL || LA187_104 == GROUP_CONCAT_SYMBOL || LA187_104 == MAX_SYMBOL || LA187_104 == MIN_SYMBOL || LA187_104 == OPEN_PAR_SYMBOL || LA187_104 == PARAM_MARKER || LA187_104 == STDDEV_SAMP_SYMBOL || LA187_104 == STD_SYMBOL || LA187_104 == SUM_SYMBOL || LA187_104 == VARIANCE_SYMBOL || LA187_104 == VAR_SAMP_SYMBOL || ((LA187_104 >= AT_AT_SIGN_SYMBOL) && (LA187_104 <= AT_TEXT_SUFFIX)) || ((LA187_104 >= BIT_AND_SYMBOL) && (LA187_104 <= BIT_XOR_SYMBOL))))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == SQL_BUFFER_RESULT_SYMBOL || LA187_104 == BINARY_SYMBOL || ((LA187_104 >= CASE_SYMBOL) && (LA187_104 <= CAST_SYMBOL)) || LA187_104 == CONVERT_SYMBOL || LA187_104 == MATCH_SYMBOL || LA187_104 == OPEN_CURLY_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == SQL_NO_CACHE_SYMBOL || LA187_104 == ALL_SYMBOL || LA187_104 == DISTINCT_SYMBOL || LA187_104 == HIGH_PRIORITY_SYMBOL || ((LA187_104 >= SQL_BIG_RESULT_SYMBOL) && (LA187_104 <= SQL_SMALL_RESULT_SYMBOL)) || LA187_104 == STRAIGHT_JOIN_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == SQL_CACHE_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == MAX_STATEMENT_TIME_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_104 == ACTION_SYMBOL || ((LA187_104 >= AFTER_SYMBOL) && (LA187_104 <= AVG_ROW_LENGTH_SYMBOL)) || ((LA187_104 >= BINLOG_SYMBOL) && (LA187_104 <= CLASS_ORIGIN_SYMBOL)) || LA187_104 == CODE_SYMBOL || ((LA187_104 >= COLUMN_NAME_SYMBOL) && (LA187_104 <= DATETIME_SYMBOL)) || ((LA187_104 >= DEFAULT_AUTH_SYMBOL) && (LA187_104 <= GEOMETRY_SYMBOL)) || ((LA187_104 >= GRANTS_SYMBOL) && (LA187_104 <= HOSTS_SYMBOL)) || ((LA187_104 >= IDENTIFIED_SYMBOL) && (LA187_104 <= LEVEL_SYMBOL)) || ((LA187_104 >= LIST_SYMBOL) && (LA187_104 <= MAX_QUERIES_PER_HOUR_SYMBOL)) || ((LA187_104 >= MAX_SIZE_SYMBOL) && (LA187_104 <= MESSAGE_TEXT_SYMBOL)) || LA187_104 == MIGRATE_SYMBOL || ((LA187_104 >= MIN_ROWS_SYMBOL) && (LA187_104 <= MODE_SYMBOL)) || ((LA187_104 >= MUTEX_SYMBOL) && (LA187_104 <= OFFSET_SYMBOL)) || ((LA187_104 >= ONE_SHOT_SYMBOL) && (LA187_104 <= PARTITIONS_SYMBOL)) || ((LA187_104 >= PHASE_SYMBOL) && (LA187_104 <= PLUGINS_SYMBOL)) || ((LA187_104 >= PRESERVE_SYMBOL) && (LA187_104 <= PROXY_SYMBOL)) || ((LA187_104 >= QUERY_SYMBOL) && (LA187_104 <= RETURNS_SYMBOL)) || ((LA187_104 >= ROLLUP_SYMBOL) && (LA187_104 <= ROWS_SYMBOL)) || LA187_104 == ROW_FORMAT_SYMBOL || ((LA187_104 >= RTREE_SYMBOL) && (LA187_104 <= SCHEMA_NAME_SYMBOL)) || ((LA187_104 >= SERIAL_SYMBOL) && (LA187_104 <= SHARE_SYMBOL)) || ((LA187_104 >= SLOW_SYMBOL) && (LA187_104 <= SNAPSHOT_SYMBOL)) || ((LA187_104 >= SOURCE_SYMBOL) && (LA187_104 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA187_104 >= SQL_THREAD_SYMBOL) && (LA187_104 <= SUBCLASS_ORIGIN_SYMBOL)) || ((LA187_104 >= SUBJECT_SYMBOL) && (LA187_104 <= TRIGGERS_SYMBOL)) || ((LA187_104 >= TYPES_SYMBOL) && (LA187_104 <= USER_RESOURCES_SYMBOL)) || ((LA187_104 >= USE_FRM_SYMBOL) && (LA187_104 <= WAIT_SYMBOL)) || LA187_104 == WORK_SYMBOL || ((LA187_104 >= X509_SYMBOL) && (LA187_104 <= XML_SYMBOL))))
                		    {
                		        alt187=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:
                	{
                		alt187=1;
                	}
                    break;
                case SQL_CACHE_SYMBOL:
                	{
                		{
                		   /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		    */
                		    int LA187_106 = LA(2);
                		    if ( (LA187_106 == DOT_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == MOD_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == MINUS_OPERATOR || LA187_106 == PLUS_OPERATOR))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == NOT_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == SOUNDS_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == IDENTIFIER))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == BACK_TICK_QUOTED_ID))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == DOUBLE_QUOTED_TEXT))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == DATE_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == ASCII_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == INTERVAL_SYMBOL || LA187_106 == NCHAR_TEXT || LA187_106 == NOT2_SYMBOL || LA187_106 == SINGLE_QUOTED_TEXT || LA187_106 == BITWISE_NOT_OPERATOR || LA187_106 == LOGICAL_NOT_OPERATOR || LA187_106 == UNDERSCORE_CHARSET))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == DECIMAL_NUMBER || LA187_106 == FLOAT_NUMBER || LA187_106 == HEX_NUMBER || LA187_106 == INT_NUMBER || LA187_106 == LONG_NUMBER || LA187_106 == ULONGLONG_NUMBER))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == TIME_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == TIMESTAMP_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == DAY_SYMBOL || LA187_106 == FALSE_SYMBOL || ((LA187_106 >= NULL2_SYMBOL) && (LA187_106 <= NULL_SYMBOL)) || LA187_106 == TRUE_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == CHAR_SYMBOL || LA187_106 == CURRENT_USER_SYMBOL || LA187_106 == BIN_NUMBER))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == HOUR_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == MINUTE_SYMBOL || LA187_106 == INSERT_SYMBOL || LA187_106 == LEFT_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == MONTH_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == SECOND_SYMBOL || LA187_106 == RIGHT_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == USER_SYMBOL || LA187_106 == TRIM_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == YEAR_SYMBOL || LA187_106 == VALUES_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == ADDDATE_SYMBOL || LA187_106 == SUBDATE_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == GET_FORMAT_SYMBOL || LA187_106 == CURDATE_SYMBOL || LA187_106 == CURTIME_SYMBOL || LA187_106 == DATE_ADD_SYMBOL || LA187_106 == DATE_SUB_SYMBOL || LA187_106 == EXTRACT_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (((LA187_106 >= TIMESTAMP_ADD_SYMBOL) && (LA187_106 <= TIMESTAMP_DIFF_SYMBOL)) || LA187_106 == NOW_SYMBOL || LA187_106 == POSITION_SYMBOL || LA187_106 == SUBSTRING_SYMBOL || LA187_106 == SYSDATE_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == COALESCE_SYMBOL || ((LA187_106 >= UTC_DATE_SYMBOL) && (LA187_106 <= UTC_TIME_SYMBOL))))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == CHARSET_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == FORMAT_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == COLLATION_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == MICROSECOND_SYMBOL || LA187_106 == DATABASE_SYMBOL || LA187_106 == IF_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == TRUNCATE_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == OLD_PASSWORD_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == MULT_OPERATOR))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == PASSWORD_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == QUARTER_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == REVERSE_SYMBOL || ((LA187_106 >= REPEAT_SYMBOL) && (LA187_106 <= REPLACE_SYMBOL))))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == ROW_COUNT_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == WEEK_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == CONTAINS_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == WEIGHT_STRING_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == GEOMETRYCOLLECTION_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == LINESTRING_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == MULTILINESTRING_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == MULTIPOINT_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == MULTIPOLYGON_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == POINT_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == POLYGON_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == AVG_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == ACCOUNT_SYMBOL || ((LA187_106 >= ALWAYS_SYMBOL) && (LA187_106 <= CACHE_SYMBOL)) || ((LA187_106 >= CHECKSUM_SYMBOL) && (LA187_106 <= COMMIT_SYMBOL)) || ((LA187_106 >= DEALLOCATE_SYMBOL) && (LA187_106 <= FOLLOWS_SYMBOL)) || ((LA187_106 >= GROUP_REPLICATION_SYMBOL) && (LA187_106 <= STOP_SYMBOL)) || ((LA187_106 >= UNICODE_SYMBOL) && (LA187_106 <= XA_SYMBOL)) || LA187_106 == SHUTDOWN_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == ROW_SYMBOL || LA187_106 == COUNT_SYMBOL || LA187_106 == EXISTS_SYMBOL || LA187_106 == GROUP_CONCAT_SYMBOL || LA187_106 == MAX_SYMBOL || LA187_106 == MIN_SYMBOL || LA187_106 == OPEN_PAR_SYMBOL || LA187_106 == PARAM_MARKER || LA187_106 == STDDEV_SAMP_SYMBOL || LA187_106 == STD_SYMBOL || LA187_106 == SUM_SYMBOL || LA187_106 == VARIANCE_SYMBOL || LA187_106 == VAR_SAMP_SYMBOL || ((LA187_106 >= AT_AT_SIGN_SYMBOL) && (LA187_106 <= AT_TEXT_SUFFIX)) || ((LA187_106 >= BIT_AND_SYMBOL) && (LA187_106 <= BIT_XOR_SYMBOL))))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == SQL_BUFFER_RESULT_SYMBOL || LA187_106 == BINARY_SYMBOL || ((LA187_106 >= CASE_SYMBOL) && (LA187_106 <= CAST_SYMBOL)) || LA187_106 == CONVERT_SYMBOL || LA187_106 == MATCH_SYMBOL || LA187_106 == OPEN_CURLY_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == SQL_NO_CACHE_SYMBOL || LA187_106 == ALL_SYMBOL || LA187_106 == DISTINCT_SYMBOL || LA187_106 == HIGH_PRIORITY_SYMBOL || ((LA187_106 >= SQL_BIG_RESULT_SYMBOL) && (LA187_106 <= SQL_SMALL_RESULT_SYMBOL)) || LA187_106 == STRAIGHT_JOIN_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == SQL_CACHE_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == MAX_STATEMENT_TIME_SYMBOL))
                		    {
                		        alt187=1;
                		    }
                		    else if ( (LA187_106 == ACTION_SYMBOL || ((LA187_106 >= AFTER_SYMBOL) && (LA187_106 <= AVG_ROW_LENGTH_SYMBOL)) || ((LA187_106 >= BINLOG_SYMBOL) && (LA187_106 <= CLASS_ORIGIN_SYMBOL)) || LA187_106 == CODE_SYMBOL || ((LA187_106 >= COLUMN_NAME_SYMBOL) && (LA187_106 <= DATETIME_SYMBOL)) || ((LA187_106 >= DEFAULT_AUTH_SYMBOL) && (LA187_106 <= GEOMETRY_SYMBOL)) || ((LA187_106 >= GRANTS_SYMBOL) && (LA187_106 <= HOSTS_SYMBOL)) || ((LA187_106 >= IDENTIFIED_SYMBOL) && (LA187_106 <= LEVEL_SYMBOL)) || ((LA187_106 >= LIST_SYMBOL) && (LA187_106 <= MAX_QUERIES_PER_HOUR_SYMBOL)) || ((LA187_106 >= MAX_SIZE_SYMBOL) && (LA187_106 <= MESSAGE_TEXT_SYMBOL)) || LA187_106 == MIGRATE_SYMBOL || ((LA187_106 >= MIN_ROWS_SYMBOL) && (LA187_106 <= MODE_SYMBOL)) || ((LA187_106 >= MUTEX_SYMBOL) && (LA187_106 <= OFFSET_SYMBOL)) || ((LA187_106 >= ONE_SHOT_SYMBOL) && (LA187_106 <= PARTITIONS_SYMBOL)) || ((LA187_106 >= PHASE_SYMBOL) && (LA187_106 <= PLUGINS_SYMBOL)) || ((LA187_106 >= PRESERVE_SYMBOL) && (LA187_106 <= PROXY_SYMBOL)) || ((LA187_106 >= QUERY_SYMBOL) && (LA187_106 <= RETURNS_SYMBOL)) || ((LA187_106 >= ROLLUP_SYMBOL) && (LA187_106 <= ROWS_SYMBOL)) || LA187_106 == ROW_FORMAT_SYMBOL || ((LA187_106 >= RTREE_SYMBOL) && (LA187_106 <= SCHEMA_NAME_SYMBOL)) || ((LA187_106 >= SERIAL_SYMBOL) && (LA187_106 <= SHARE_SYMBOL)) || ((LA187_106 >= SLOW_SYMBOL) && (LA187_106 <= SNAPSHOT_SYMBOL)) || ((LA187_106 >= SOURCE_SYMBOL) && (LA187_106 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA187_106 >= SQL_THREAD_SYMBOL) && (LA187_106 <= SUBCLASS_ORIGIN_SYMBOL)) || ((LA187_106 >= SUBJECT_SYMBOL) && (LA187_106 <= TRIGGERS_SYMBOL)) || ((LA187_106 >= TYPES_SYMBOL) && (LA187_106 <= USER_RESOURCES_SYMBOL)) || ((LA187_106 >= USE_FRM_SYMBOL) && (LA187_106 <= WAIT_SYMBOL)) || LA187_106 == WORK_SYMBOL || ((LA187_106 >= X509_SYMBOL) && (LA187_106 <= XML_SYMBOL))))
                		    {
                		        alt187=1;
                		    }

                		}
                	}
                    break;
                case MAX_STATEMENT_TIME_SYMBOL:
                	{
                		switch ( LA(2) )
                		{
                		case EQUAL_OPERATOR:
                			{
                				{
                				   /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                				    */
                				    int LA187_541 = LA(3);
                				    if ( ((SERVER_VERSION >= 50704 && SERVER_VERSION < 50708)))
                				    {
                				        alt187=1;
                				    }

                				}
                			}
                		    break;

                		}

                	}
                    break;

                }

                switch (alt187)
                {
            	case 1:
            	    // MySQL.g:979:46: select_option
            	    {
            	        FOLLOWPUSH(FOLLOW_select_option_in_create_select3311);
            	        select_option600=select_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_selectEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_option600.tree);

            	    }
            	    break;

            	default:
            	    goto loop187;	/* break out of the loop */
            	    break;
                }
            }
            loop187: ; /* Jump out to here if this rule does not match */


            FOLLOWPUSH(FOLLOW_select_item_list_in_create_select3315);
            select_item_list601=select_item_list(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_selectEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_item_list601.tree);

            FOLLOWPUSH(FOLLOW_table_expression_in_create_select3317);
            table_expression602=table_expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_selectEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_expression602.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:982: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_SYMBOL603;
    pANTLR3_COMMON_TOKEN    SEMICOLON_SYMBOL605;
    pANTLR3_COMMON_TOKEN    EOF606;
    MySQLParser_create_tablespace_tail_return create_tablespace_tail604;
    #undef	RETURN_TYPE_create_tablespace_tail604
    #define	RETURN_TYPE_create_tablespace_tail604 MySQLParser_create_tablespace_tail_return

    pANTLR3_BASE_TREE CREATE_SYMBOL603_tree;
    pANTLR3_BASE_TREE SEMICOLON_SYMBOL605_tree;
    pANTLR3_BASE_TREE EOF606_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CREATE_SYMBOL603       = NULL;
    SEMICOLON_SYMBOL605       = NULL;
    EOF606       = NULL;
    create_tablespace_tail604.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CREATE_SYMBOL603_tree   = NULL;
    SEMICOLON_SYMBOL605_tree   = NULL;
    EOF606_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:982:18: ( CREATE_SYMBOL ^ create_tablespace_tail ( SEMICOLON_SYMBOL )? EOF )
        // MySQL.g:983:2: CREATE_SYMBOL ^ create_tablespace_tail ( SEMICOLON_SYMBOL )? EOF
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            CREATE_SYMBOL603 = (pANTLR3_COMMON_TOKEN) MATCHT(CREATE_SYMBOL, &FOLLOW_CREATE_SYMBOL_in_create_tablespace3327);
            if  (HASEXCEPTION())
            {
                goto rulecreate_tablespaceEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CREATE_SYMBOL603_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CREATE_SYMBOL603))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, CREATE_SYMBOL603_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_create_tablespace_tail_in_create_tablespace3330);
            create_tablespace_tail604=create_tablespace_tail(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_tablespaceEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_tablespace_tail604.tree);

            // MySQL.g:983:40: ( SEMICOLON_SYMBOL )?
            {
                int alt188=2;
                switch ( LA(1) )
                {
                    case SEMICOLON_SYMBOL:
                    	{
                    		alt188=1;
                    	}
                        break;
                }

                switch (alt188)
                {
            	case 1:
            	    // MySQL.g:983:40: SEMICOLON_SYMBOL
            	    {
            	        SEMICOLON_SYMBOL605 = (pANTLR3_COMMON_TOKEN) MATCHT(SEMICOLON_SYMBOL, &FOLLOW_SEMICOLON_SYMBOL_in_create_tablespace3332);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_tablespaceEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SEMICOLON_SYMBOL605_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SEMICOLON_SYMBOL605));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SEMICOLON_SYMBOL605_tree);
            	        }

            	    }
            	    break;

                }
            }

            EOF606 = (pANTLR3_COMMON_TOKEN) MATCHT(EOF, &FOLLOW_EOF_in_create_tablespace3335);
            if  (HASEXCEPTION())
            {
                goto rulecreate_tablespaceEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EOF606_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EOF606));
            ADAPTOR->addChild(ADAPTOR, root_0, EOF606_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:986: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_SYMBOL607;
    pANTLR3_COMMON_TOKEN    ADD_SYMBOL609;
    pANTLR3_COMMON_TOKEN    DATAFILE_SYMBOL610;
    pANTLR3_COMMON_TOKEN    USE_SYMBOL612;
    pANTLR3_COMMON_TOKEN    LOGFILE_SYMBOL613;
    pANTLR3_COMMON_TOKEN    GROUP_SYMBOL614;
    MySQLParser_tablespace_name_return tablespace_name608;
    #undef	RETURN_TYPE_tablespace_name608
    #define	RETURN_TYPE_tablespace_name608 MySQLParser_tablespace_name_return

    MySQLParser_string_literal_return string_literal611;
    #undef	RETURN_TYPE_string_literal611
    #define	RETURN_TYPE_string_literal611 MySQLParser_string_literal_return

    MySQLParser_logfile_group_ref_return logfile_group_ref615;
    #undef	RETURN_TYPE_logfile_group_ref615
    #define	RETURN_TYPE_logfile_group_ref615 MySQLParser_logfile_group_ref_return

    MySQLParser_tablespace_options_return tablespace_options616;
    #undef	RETURN_TYPE_tablespace_options616
    #define	RETURN_TYPE_tablespace_options616 MySQLParser_tablespace_options_return

    pANTLR3_BASE_TREE TABLESPACE_SYMBOL607_tree;
    pANTLR3_BASE_TREE ADD_SYMBOL609_tree;
    pANTLR3_BASE_TREE DATAFILE_SYMBOL610_tree;
    pANTLR3_BASE_TREE USE_SYMBOL612_tree;
    pANTLR3_BASE_TREE LOGFILE_SYMBOL613_tree;
    pANTLR3_BASE_TREE GROUP_SYMBOL614_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    TABLESPACE_SYMBOL607       = NULL;
    ADD_SYMBOL609       = NULL;
    DATAFILE_SYMBOL610       = NULL;
    USE_SYMBOL612       = NULL;
    LOGFILE_SYMBOL613       = NULL;
    GROUP_SYMBOL614       = NULL;
    tablespace_name608.tree = NULL;

    string_literal611.tree = NULL;

    logfile_group_ref615.tree = NULL;

    tablespace_options616.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    TABLESPACE_SYMBOL607_tree   = NULL;
    ADD_SYMBOL609_tree   = NULL;
    DATAFILE_SYMBOL610_tree   = NULL;
    USE_SYMBOL612_tree   = NULL;
    LOGFILE_SYMBOL613_tree   = NULL;
    GROUP_SYMBOL614_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:986:23: ( TABLESPACE_SYMBOL tablespace_name ADD_SYMBOL DATAFILE_SYMBOL string_literal ( USE_SYMBOL LOGFILE_SYMBOL GROUP_SYMBOL logfile_group_ref )? ( tablespace_options )? )
        // MySQL.g:987: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_SYMBOL607 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLESPACE_SYMBOL, &FOLLOW_TABLESPACE_SYMBOL_in_create_tablespace_tail3344);
            if  (HASEXCEPTION())
            {
                goto rulecreate_tablespace_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            TABLESPACE_SYMBOL607_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLESPACE_SYMBOL607));
            ADAPTOR->addChild(ADAPTOR, root_0, TABLESPACE_SYMBOL607_tree);
            }

            FOLLOWPUSH(FOLLOW_tablespace_name_in_create_tablespace_tail3346);
            tablespace_name608=tablespace_name(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_tablespace_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, tablespace_name608.tree);

            ADD_SYMBOL609 = (pANTLR3_COMMON_TOKEN) MATCHT(ADD_SYMBOL, &FOLLOW_ADD_SYMBOL_in_create_tablespace_tail3348);
            if  (HASEXCEPTION())
            {
                goto rulecreate_tablespace_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ADD_SYMBOL609_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ADD_SYMBOL609));
            ADAPTOR->addChild(ADAPTOR, root_0, ADD_SYMBOL609_tree);
            }

            DATAFILE_SYMBOL610 = (pANTLR3_COMMON_TOKEN) MATCHT(DATAFILE_SYMBOL, &FOLLOW_DATAFILE_SYMBOL_in_create_tablespace_tail3350);
            if  (HASEXCEPTION())
            {
                goto rulecreate_tablespace_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            DATAFILE_SYMBOL610_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATAFILE_SYMBOL610));
            ADAPTOR->addChild(ADAPTOR, root_0, DATAFILE_SYMBOL610_tree);
            }

            FOLLOWPUSH(FOLLOW_string_literal_in_create_tablespace_tail3352);
            string_literal611=string_literal(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_tablespace_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal611.tree);

            // MySQL.g:988:3: ( USE_SYMBOL LOGFILE_SYMBOL GROUP_SYMBOL logfile_group_ref )?
            {
                int alt189=2;
                switch ( LA(1) )
                {
                    case USE_SYMBOL:
                    	{
                    		alt189=1;
                    	}
                        break;
                }

                switch (alt189)
                {
            	case 1:
            	    // MySQL.g:988:4: USE_SYMBOL LOGFILE_SYMBOL GROUP_SYMBOL logfile_group_ref
            	    {
            	        USE_SYMBOL612 = (pANTLR3_COMMON_TOKEN) MATCHT(USE_SYMBOL, &FOLLOW_USE_SYMBOL_in_create_tablespace_tail3357);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_tablespace_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        USE_SYMBOL612_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USE_SYMBOL612));
            	        ADAPTOR->addChild(ADAPTOR, root_0, USE_SYMBOL612_tree);
            	        }

            	        LOGFILE_SYMBOL613 = (pANTLR3_COMMON_TOKEN) MATCHT(LOGFILE_SYMBOL, &FOLLOW_LOGFILE_SYMBOL_in_create_tablespace_tail3359);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_tablespace_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        LOGFILE_SYMBOL613_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOGFILE_SYMBOL613));
            	        ADAPTOR->addChild(ADAPTOR, root_0, LOGFILE_SYMBOL613_tree);
            	        }

            	        GROUP_SYMBOL614 = (pANTLR3_COMMON_TOKEN) MATCHT(GROUP_SYMBOL, &FOLLOW_GROUP_SYMBOL_in_create_tablespace_tail3361);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_tablespace_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        GROUP_SYMBOL614_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GROUP_SYMBOL614));
            	        ADAPTOR->addChild(ADAPTOR, root_0, GROUP_SYMBOL614_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_logfile_group_ref_in_create_tablespace_tail3363);
            	        logfile_group_ref615=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_ref615.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:988:63: ( tablespace_options )?
            {
                int alt190=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:
                    	{
                    		alt190=1;
                    	}
                        break;
                }

                switch (alt190)
                {
            	case 1:
            	    // MySQL.g:988:63: tablespace_options
            	    {
            	        FOLLOWPUSH(FOLLOW_tablespace_options_in_create_tablespace_tail3367);
            	        tablespace_options616=tablespace_options(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_tablespace_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, tablespace_options616.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:991: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_SYMBOL618;
    MySQLParser_tablespace_option_return tablespace_option617;
    #undef	RETURN_TYPE_tablespace_option617
    #define	RETURN_TYPE_tablespace_option617 MySQLParser_tablespace_option_return

    MySQLParser_tablespace_option_return tablespace_option619;
    #undef	RETURN_TYPE_tablespace_option619
    #define	RETURN_TYPE_tablespace_option619 MySQLParser_tablespace_option_return

    pANTLR3_BASE_TREE COMMA_SYMBOL618_tree;
    pANTLR3_REWRITE_RULE_TOKEN_STREAM stream_COMMA_SYMBOL;
    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_tablespace_option;
    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL618       = NULL;
    tablespace_option617.tree = NULL;

    tablespace_option619.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL618_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:991:19: ( ( tablespace_option ( ( COMMA_SYMBOL )? tablespace_option )* ) -> ^( TABLESPACE_OPTIONS_TOKEN tablespace_option ( ( COMMA_SYMBOL )? tablespace_option )* ) )
        // MySQL.g:992:2: ( tablespace_option ( ( COMMA_SYMBOL )? tablespace_option )* )
        {
            // MySQL.g:992:2: ( tablespace_option ( ( COMMA_SYMBOL )? tablespace_option )* )
            // MySQL.g:992:3: tablespace_option ( ( COMMA_SYMBOL )? tablespace_option )*
            {
                FOLLOWPUSH(FOLLOW_tablespace_option_in_tablespace_options3378);
                tablespace_option617=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_option617.tree, NULL); }

                // MySQL.g:992:21: ( ( COMMA_SYMBOL )? tablespace_option )*

                for (;;)
                {
                    int alt192=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:
                    	{
                    		alt192=1;
                    	}
                        break;

                    }

                    switch (alt192)
                    {
                	case 1:
                	    // MySQL.g:992:22: ( COMMA_SYMBOL )? tablespace_option
                	    {
                	        // MySQL.g:992:22: ( COMMA_SYMBOL )?
                	        {
                	            int alt191=2;
                	            switch ( LA(1) )
                	            {
                	                case COMMA_SYMBOL:
                	                	{
                	                		alt191=1;
                	                	}
                	                    break;
                	            }

                	            switch (alt191)
                	            {
                	        	case 1:
                	        	    // MySQL.g:992:22: COMMA_SYMBOL
                	        	    {
                	        	        COMMA_SYMBOL618 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_tablespace_options3381);
                	        	        if  (HASEXCEPTION())
                	        	        {
                	        	            goto ruletablespace_optionsEx;
                	        	        }
                	        	        if (HASFAILED())
                	        	        {
                	        	            return retval;
                	        	        }
                	        	         
                	        	        if ( BACKTRACKING==0 ) { CREATE_stream_COMMA_SYMBOL; stream_COMMA_SYMBOL->add(stream_COMMA_SYMBOL, COMMA_SYMBOL618, NULL); }


                	        	    }
                	        	    break;

                	            }
                	        }

                	        FOLLOWPUSH(FOLLOW_tablespace_option_in_tablespace_options3384);
                	        tablespace_option619=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_option619.tree, NULL); }

                	    }
                	    break;

                	default:
                	    goto loop192;	/* break out of the loop */
                	    break;
                    }
                }
                loop192: ; /* Jump out to here if this rule does not match */


            }


            /* AST REWRITE
             * elements          : tablespace_option, COMMA_SYMBOL, tablespace_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;
            	// 993:3: -> ^( TABLESPACE_OPTIONS_TOKEN tablespace_option ( ( COMMA_SYMBOL )? tablespace_option )* )
            	{
            	    // MySQL.g:993: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:993:51: ( ( COMMA_SYMBOL )? tablespace_option )*
            	        {
            	        	while ( (stream_tablespace_option != NULL && stream_tablespace_option->hasNext(stream_tablespace_option))  )
            	        	{
            	        		// MySQL.g:993: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:996: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_SYMBOL620;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR621;
    pANTLR3_COMMON_TOKEN    AUTOEXTEND_SIZE_SYMBOL623;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR624;
    pANTLR3_COMMON_TOKEN    MAX_SIZE_SYMBOL626;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR627;
    pANTLR3_COMMON_TOKEN    EXTENT_SIZE_SYMBOL629;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR630;
    pANTLR3_COMMON_TOKEN    NODEGROUP_SYMBOL632;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR633;
    pANTLR3_COMMON_TOKEN    STORAGE_SYMBOL635;
    pANTLR3_COMMON_TOKEN    ENGINE_SYMBOL636;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR637;
    pANTLR3_COMMON_TOKEN    set639;
    pANTLR3_COMMON_TOKEN    COMMENT_SYMBOL640;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR641;
    pANTLR3_COMMON_TOKEN    FILE_BLOCK_SIZE_SYMBOL643;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR644;
    MySQLParser_size_number_return size_number622;
    #undef	RETURN_TYPE_size_number622
    #define	RETURN_TYPE_size_number622 MySQLParser_size_number_return

    MySQLParser_size_number_return size_number625;
    #undef	RETURN_TYPE_size_number625
    #define	RETURN_TYPE_size_number625 MySQLParser_size_number_return

    MySQLParser_size_number_return size_number628;
    #undef	RETURN_TYPE_size_number628
    #define	RETURN_TYPE_size_number628 MySQLParser_size_number_return

    MySQLParser_size_number_return size_number631;
    #undef	RETURN_TYPE_size_number631
    #define	RETURN_TYPE_size_number631 MySQLParser_size_number_return

    MySQLParser_real_ulong_number_return real_ulong_number634;
    #undef	RETURN_TYPE_real_ulong_number634
    #define	RETURN_TYPE_real_ulong_number634 MySQLParser_real_ulong_number_return

    MySQLParser_engine_ref_return engine_ref638;
    #undef	RETURN_TYPE_engine_ref638
    #define	RETURN_TYPE_engine_ref638 MySQLParser_engine_ref_return

    MySQLParser_string_literal_return string_literal642;
    #undef	RETURN_TYPE_string_literal642
    #define	RETURN_TYPE_string_literal642 MySQLParser_string_literal_return

    MySQLParser_size_number_return size_number645;
    #undef	RETURN_TYPE_size_number645
    #define	RETURN_TYPE_size_number645 MySQLParser_size_number_return

    pANTLR3_BASE_TREE INITIAL_SIZE_SYMBOL620_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR621_tree;
    pANTLR3_BASE_TREE AUTOEXTEND_SIZE_SYMBOL623_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR624_tree;
    pANTLR3_BASE_TREE MAX_SIZE_SYMBOL626_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR627_tree;
    pANTLR3_BASE_TREE EXTENT_SIZE_SYMBOL629_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR630_tree;
    pANTLR3_BASE_TREE NODEGROUP_SYMBOL632_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR633_tree;
    pANTLR3_BASE_TREE STORAGE_SYMBOL635_tree;
    pANTLR3_BASE_TREE ENGINE_SYMBOL636_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR637_tree;
    pANTLR3_BASE_TREE set639_tree;
    pANTLR3_BASE_TREE COMMENT_SYMBOL640_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR641_tree;
    pANTLR3_BASE_TREE FILE_BLOCK_SIZE_SYMBOL643_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR644_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    INITIAL_SIZE_SYMBOL620       = NULL;
    EQUAL_OPERATOR621       = NULL;
    AUTOEXTEND_SIZE_SYMBOL623       = NULL;
    EQUAL_OPERATOR624       = NULL;
    MAX_SIZE_SYMBOL626       = NULL;
    EQUAL_OPERATOR627       = NULL;
    EXTENT_SIZE_SYMBOL629       = NULL;
    EQUAL_OPERATOR630       = NULL;
    NODEGROUP_SYMBOL632       = NULL;
    EQUAL_OPERATOR633       = NULL;
    STORAGE_SYMBOL635       = NULL;
    ENGINE_SYMBOL636       = NULL;
    EQUAL_OPERATOR637       = NULL;
    set639       = NULL;
    COMMENT_SYMBOL640       = NULL;
    EQUAL_OPERATOR641       = NULL;
    FILE_BLOCK_SIZE_SYMBOL643       = NULL;
    EQUAL_OPERATOR644       = NULL;
    size_number622.tree = NULL;

    size_number625.tree = NULL;

    size_number628.tree = NULL;

    size_number631.tree = NULL;

    real_ulong_number634.tree = NULL;

    engine_ref638.tree = NULL;

    string_literal642.tree = NULL;

    size_number645.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    INITIAL_SIZE_SYMBOL620_tree   = NULL;
    EQUAL_OPERATOR621_tree   = NULL;
    AUTOEXTEND_SIZE_SYMBOL623_tree   = NULL;
    EQUAL_OPERATOR624_tree   = NULL;
    MAX_SIZE_SYMBOL626_tree   = NULL;
    EQUAL_OPERATOR627_tree   = NULL;
    EXTENT_SIZE_SYMBOL629_tree   = NULL;
    EQUAL_OPERATOR630_tree   = NULL;
    NODEGROUP_SYMBOL632_tree   = NULL;
    EQUAL_OPERATOR633_tree   = NULL;
    STORAGE_SYMBOL635_tree   = NULL;
    ENGINE_SYMBOL636_tree   = NULL;
    EQUAL_OPERATOR637_tree   = NULL;
    set639_tree   = NULL;
    COMMENT_SYMBOL640_tree   = NULL;
    EQUAL_OPERATOR641_tree   = NULL;
    FILE_BLOCK_SIZE_SYMBOL643_tree   = NULL;
    EQUAL_OPERATOR644_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:996: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 alt202;

            alt202=9;

            switch ( LA(1) )
            {
            case INITIAL_SIZE_SYMBOL:
            	{
            		alt202=1;
            	}
                break;
            case AUTOEXTEND_SIZE_SYMBOL:
            	{
            		alt202=2;
            	}
                break;
            case MAX_SIZE_SYMBOL:
            	{
            		alt202=3;
            	}
                break;
            case EXTENT_SIZE_SYMBOL:
            	{
            		alt202=4;
            	}
                break;
            case NODEGROUP_SYMBOL:
            	{
            		alt202=5;
            	}
                break;
            case ENGINE_SYMBOL:
            case STORAGE_SYMBOL:
            	{
            		alt202=6;
            	}
                break;
            case NO_WAIT_SYMBOL:
            case WAIT_SYMBOL:
            	{
            		alt202=7;
            	}
                break;
            case COMMENT_SYMBOL:
            	{
            		alt202=8;
            	}
                break;
            case FILE_BLOCK_SIZE_SYMBOL:
            	{
            		alt202=9;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 202;
                EXCEPTION->state        = 0;


                goto ruletablespace_optionEx;

            }

            switch (alt202)
            {
        	case 1:
        	    // MySQL.g:997:2: INITIAL_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        INITIAL_SIZE_SYMBOL620 = (pANTLR3_COMMON_TOKEN) MATCHT(INITIAL_SIZE_SYMBOL, &FOLLOW_INITIAL_SIZE_SYMBOL_in_tablespace_option3414);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INITIAL_SIZE_SYMBOL620_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INITIAL_SIZE_SYMBOL620));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INITIAL_SIZE_SYMBOL620_tree);
        	        }

        	        // MySQL.g:997:22: ( EQUAL_OPERATOR )?
        	        {
        	            int alt193=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt193=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt193)
        	            {
        	        	case 1:
        	        	    // MySQL.g:997:22: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR621 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_tablespace_option3416);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletablespace_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR621_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR621));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR621_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_size_number_in_tablespace_option3419);
        	        size_number622=size_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, size_number622.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:998:4: AUTOEXTEND_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        AUTOEXTEND_SIZE_SYMBOL623 = (pANTLR3_COMMON_TOKEN) MATCHT(AUTOEXTEND_SIZE_SYMBOL, &FOLLOW_AUTOEXTEND_SIZE_SYMBOL_in_tablespace_option3424);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        AUTOEXTEND_SIZE_SYMBOL623_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AUTOEXTEND_SIZE_SYMBOL623));
        	        ADAPTOR->addChild(ADAPTOR, root_0, AUTOEXTEND_SIZE_SYMBOL623_tree);
        	        }

        	        // MySQL.g:998:27: ( EQUAL_OPERATOR )?
        	        {
        	            int alt194=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt194=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt194)
        	            {
        	        	case 1:
        	        	    // MySQL.g:998:27: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR624 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_tablespace_option3426);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletablespace_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR624_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR624));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR624_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_size_number_in_tablespace_option3429);
        	        size_number625=size_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, size_number625.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:999:4: MAX_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MAX_SIZE_SYMBOL626 = (pANTLR3_COMMON_TOKEN) MATCHT(MAX_SIZE_SYMBOL, &FOLLOW_MAX_SIZE_SYMBOL_in_tablespace_option3434);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MAX_SIZE_SYMBOL626_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MAX_SIZE_SYMBOL626));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MAX_SIZE_SYMBOL626_tree);
        	        }

        	        // MySQL.g:999:20: ( EQUAL_OPERATOR )?
        	        {
        	            int alt195=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt195=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt195)
        	            {
        	        	case 1:
        	        	    // MySQL.g:999:20: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR627 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_tablespace_option3436);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletablespace_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR627_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR627));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR627_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_size_number_in_tablespace_option3439);
        	        size_number628=size_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, size_number628.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1000:4: EXTENT_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        EXTENT_SIZE_SYMBOL629 = (pANTLR3_COMMON_TOKEN) MATCHT(EXTENT_SIZE_SYMBOL, &FOLLOW_EXTENT_SIZE_SYMBOL_in_tablespace_option3444);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EXTENT_SIZE_SYMBOL629_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EXTENT_SIZE_SYMBOL629));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EXTENT_SIZE_SYMBOL629_tree);
        	        }

        	        // MySQL.g:1000:23: ( EQUAL_OPERATOR )?
        	        {
        	            int alt196=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt196=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt196)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1000:23: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR630 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_tablespace_option3446);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletablespace_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR630_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR630));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR630_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_size_number_in_tablespace_option3449);
        	        size_number631=size_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, size_number631.tree);

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:1001:4: NODEGROUP_SYMBOL ( EQUAL_OPERATOR )? real_ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NODEGROUP_SYMBOL632 = (pANTLR3_COMMON_TOKEN) MATCHT(NODEGROUP_SYMBOL, &FOLLOW_NODEGROUP_SYMBOL_in_tablespace_option3454);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NODEGROUP_SYMBOL632_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NODEGROUP_SYMBOL632));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NODEGROUP_SYMBOL632_tree);
        	        }

        	        // MySQL.g:1001:21: ( EQUAL_OPERATOR )?
        	        {
        	            int alt197=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt197=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt197)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1001:21: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR633 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_tablespace_option3456);
        	        	        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_real_ulong_number_in_tablespace_option3459);
        	        real_ulong_number634=real_ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, real_ulong_number634.tree);

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:1002:4: ( STORAGE_SYMBOL )? ENGINE_SYMBOL ( EQUAL_OPERATOR )? engine_ref
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:1002:4: ( STORAGE_SYMBOL )?
        	        {
        	            int alt198=2;
        	            switch ( LA(1) )
        	            {
        	                case STORAGE_SYMBOL:
        	                	{
        	                		alt198=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt198)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1002:4: STORAGE_SYMBOL
        	        	    {
        	        	        STORAGE_SYMBOL635 = (pANTLR3_COMMON_TOKEN) MATCHT(STORAGE_SYMBOL, &FOLLOW_STORAGE_SYMBOL_in_tablespace_option3464);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletablespace_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        STORAGE_SYMBOL635_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STORAGE_SYMBOL635));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, STORAGE_SYMBOL635_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        ENGINE_SYMBOL636 = (pANTLR3_COMMON_TOKEN) MATCHT(ENGINE_SYMBOL, &FOLLOW_ENGINE_SYMBOL_in_tablespace_option3467);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ENGINE_SYMBOL636_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ENGINE_SYMBOL636));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ENGINE_SYMBOL636_tree);
        	        }

        	        // MySQL.g:1002:34: ( EQUAL_OPERATOR )?
        	        {
        	            int alt199=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt199=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt199)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1002:34: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR637 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_tablespace_option3469);
        	        	        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_engine_ref_in_tablespace_option3472);
        	        engine_ref638=engine_ref(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, engine_ref638.tree);

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:1003:4: ( WAIT_SYMBOL | NO_WAIT_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        set639=(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, set639))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>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:1004:4: COMMENT_SYMBOL ( EQUAL_OPERATOR )? string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        COMMENT_SYMBOL640 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMENT_SYMBOL, &FOLLOW_COMMENT_SYMBOL_in_tablespace_option3488);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMENT_SYMBOL640_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMENT_SYMBOL640));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMENT_SYMBOL640_tree);
        	        }

        	        // MySQL.g:1004:19: ( EQUAL_OPERATOR )?
        	        {
        	            int alt200=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt200=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt200)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1004:19: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR641 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_tablespace_option3490);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletablespace_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR641_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR641));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR641_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_tablespace_option3493);
        	        string_literal642=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal642.tree);

        	    }
        	    break;
        	case 9:
        	    // MySQL.g:1005: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_SYMBOL643 = (pANTLR3_COMMON_TOKEN) MATCHT(FILE_BLOCK_SIZE_SYMBOL, &FOLLOW_FILE_BLOCK_SIZE_SYMBOL_in_tablespace_option3500);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FILE_BLOCK_SIZE_SYMBOL643_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FILE_BLOCK_SIZE_SYMBOL643));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FILE_BLOCK_SIZE_SYMBOL643_tree);
        	        }

        	        // MySQL.g:1005:54: ( EQUAL_OPERATOR )?
        	        {
        	            int alt201=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt201=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt201)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1005:54: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR644 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_tablespace_option3502);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletablespace_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR644_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR644));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR644_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_size_number_in_tablespace_option3505);
        	        size_number645=size_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, size_number645.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:1008: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_SYMBOL648;
    pANTLR3_COMMON_TOKEN    EOF649;
    MySQLParser_create_with_definer_return create_with_definer646;
    #undef	RETURN_TYPE_create_with_definer646
    #define	RETURN_TYPE_create_with_definer646 MySQLParser_create_with_definer_return

    MySQLParser_create_trigger_tail_return create_trigger_tail647;
    #undef	RETURN_TYPE_create_trigger_tail647
    #define	RETURN_TYPE_create_trigger_tail647 MySQLParser_create_trigger_tail_return

    pANTLR3_BASE_TREE SEMICOLON_SYMBOL648_tree;
    pANTLR3_BASE_TREE EOF649_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SEMICOLON_SYMBOL648       = NULL;
    EOF649       = NULL;
    create_with_definer646.tree = NULL;

    create_trigger_tail647.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SEMICOLON_SYMBOL648_tree   = NULL;
    EOF649_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1008:15: ( create_with_definer create_trigger_tail ( SEMICOLON_SYMBOL )? EOF )
        // MySQL.g:1009: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_trigger3515);
            create_with_definer646=create_with_definer(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_triggerEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_with_definer646.tree);

            FOLLOWPUSH(FOLLOW_create_trigger_tail_in_create_trigger3517);
            create_trigger_tail647=create_trigger_tail(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_triggerEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_trigger_tail647.tree);

            // MySQL.g:1009:42: ( SEMICOLON_SYMBOL )?
            {
                int alt203=2;
                switch ( LA(1) )
                {
                    case SEMICOLON_SYMBOL:
                    	{
                    		alt203=1;
                    	}
                        break;
                }

                switch (alt203)
                {
            	case 1:
            	    // MySQL.g:1009:42: SEMICOLON_SYMBOL
            	    {
            	        SEMICOLON_SYMBOL648 = (pANTLR3_COMMON_TOKEN) MATCHT(SEMICOLON_SYMBOL, &FOLLOW_SEMICOLON_SYMBOL_in_create_trigger3519);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_triggerEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SEMICOLON_SYMBOL648_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SEMICOLON_SYMBOL648));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SEMICOLON_SYMBOL648_tree);
            	        }

            	    }
            	    break;

                }
            }

            EOF649 = (pANTLR3_COMMON_TOKEN) MATCHT(EOF, &FOLLOW_EOF_in_create_trigger3522);
            if  (HASEXCEPTION())
            {
                goto rulecreate_triggerEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EOF649_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EOF649));
            ADAPTOR->addChild(ADAPTOR, root_0, EOF649_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:1012: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_SYMBOL650;
    pANTLR3_COMMON_TOKEN    set652;
    pANTLR3_COMMON_TOKEN    set653;
    pANTLR3_COMMON_TOKEN    ON_SYMBOL654;
    pANTLR3_COMMON_TOKEN    FOR_SYMBOL656;
    pANTLR3_COMMON_TOKEN    EACH_SYMBOL657;
    pANTLR3_COMMON_TOKEN    ROW_SYMBOL658;
    MySQLParser_trigger_name_return trigger_name651;
    #undef	RETURN_TYPE_trigger_name651
    #define	RETURN_TYPE_trigger_name651 MySQLParser_trigger_name_return

    MySQLParser_table_ref_return table_ref655;
    #undef	RETURN_TYPE_table_ref655
    #define	RETURN_TYPE_table_ref655 MySQLParser_table_ref_return

    MySQLParser_trigger_follows_precedes_clause_return trigger_follows_precedes_clause659;
    #undef	RETURN_TYPE_trigger_follows_precedes_clause659
    #define	RETURN_TYPE_trigger_follows_precedes_clause659 MySQLParser_trigger_follows_precedes_clause_return

    MySQLParser_compound_statement_return compound_statement660;
    #undef	RETURN_TYPE_compound_statement660
    #define	RETURN_TYPE_compound_statement660 MySQLParser_compound_statement_return

    pANTLR3_BASE_TREE TRIGGER_SYMBOL650_tree;
    pANTLR3_BASE_TREE set652_tree;
    pANTLR3_BASE_TREE set653_tree;
    pANTLR3_BASE_TREE ON_SYMBOL654_tree;
    pANTLR3_BASE_TREE FOR_SYMBOL656_tree;
    pANTLR3_BASE_TREE EACH_SYMBOL657_tree;
    pANTLR3_BASE_TREE ROW_SYMBOL658_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    TRIGGER_SYMBOL650       = NULL;
    set652       = NULL;
    set653       = NULL;
    ON_SYMBOL654       = NULL;
    FOR_SYMBOL656       = NULL;
    EACH_SYMBOL657       = NULL;
    ROW_SYMBOL658       = NULL;
    trigger_name651.tree = NULL;

    table_ref655.tree = NULL;

    trigger_follows_precedes_clause659.tree = NULL;

    compound_statement660.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    TRIGGER_SYMBOL650_tree   = NULL;
    set652_tree   = NULL;
    set653_tree   = NULL;
    ON_SYMBOL654_tree   = NULL;
    FOR_SYMBOL656_tree   = NULL;
    EACH_SYMBOL657_tree   = NULL;
    ROW_SYMBOL658_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1012: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:1013: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_SYMBOL650 = (pANTLR3_COMMON_TOKEN) MATCHT(TRIGGER_SYMBOL, &FOLLOW_TRIGGER_SYMBOL_in_create_trigger_tail3531);
            if  (HASEXCEPTION())
            {
                goto rulecreate_trigger_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            TRIGGER_SYMBOL650_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TRIGGER_SYMBOL650));
            ADAPTOR->addChild(ADAPTOR, root_0, TRIGGER_SYMBOL650_tree);
            }

            FOLLOWPUSH(FOLLOW_trigger_name_in_create_trigger_tail3533);
            trigger_name651=trigger_name(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_trigger_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, trigger_name651.tree);

            set652=(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, set652))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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;
            }


            set653=(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, set653))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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_SYMBOL654 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_create_trigger_tail3557);
            if  (HASEXCEPTION())
            {
                goto rulecreate_trigger_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ON_SYMBOL654_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ON_SYMBOL654));
            ADAPTOR->addChild(ADAPTOR, root_0, ON_SYMBOL654_tree);
            }

            FOLLOWPUSH(FOLLOW_table_ref_in_create_trigger_tail3559);
            table_ref655=table_ref(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_trigger_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref655.tree);

            FOR_SYMBOL656 = (pANTLR3_COMMON_TOKEN) MATCHT(FOR_SYMBOL, &FOLLOW_FOR_SYMBOL_in_create_trigger_tail3561);
            if  (HASEXCEPTION())
            {
                goto rulecreate_trigger_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            FOR_SYMBOL656_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOR_SYMBOL656));
            ADAPTOR->addChild(ADAPTOR, root_0, FOR_SYMBOL656_tree);
            }

            EACH_SYMBOL657 = (pANTLR3_COMMON_TOKEN) MATCHT(EACH_SYMBOL, &FOLLOW_EACH_SYMBOL_in_create_trigger_tail3563);
            if  (HASEXCEPTION())
            {
                goto rulecreate_trigger_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EACH_SYMBOL657_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EACH_SYMBOL657));
            ADAPTOR->addChild(ADAPTOR, root_0, EACH_SYMBOL657_tree);
            }

            ROW_SYMBOL658 = (pANTLR3_COMMON_TOKEN) MATCHT(ROW_SYMBOL, &FOLLOW_ROW_SYMBOL_in_create_trigger_tail3565);
            if  (HASEXCEPTION())
            {
                goto rulecreate_trigger_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ROW_SYMBOL658_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ROW_SYMBOL658));
            ADAPTOR->addChild(ADAPTOR, root_0, ROW_SYMBOL658_tree);
            }

            // MySQL.g:1014:57: ( trigger_follows_precedes_clause )?
            {
                int alt204=2;
                switch ( LA(1) )
                {
                    case FOLLOWS_SYMBOL:
                    case PRECEDES_SYMBOL:
                    	{
                    		alt204=1;
                    	}
                        break;
                }

                switch (alt204)
                {
            	case 1:
            	    // MySQL.g:1014:57: trigger_follows_precedes_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_trigger_follows_precedes_clause_in_create_trigger_tail3567);
            	        trigger_follows_precedes_clause659=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_clause659.tree);

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_compound_statement_in_create_trigger_tail3570);
            compound_statement660=compound_statement(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_trigger_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, compound_statement660.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:1017: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    set661;
    MySQLParser_text_or_identifier_return text_or_identifier662;
    #undef	RETURN_TYPE_text_or_identifier662
    #define	RETURN_TYPE_text_or_identifier662 MySQLParser_text_or_identifier_return

    pANTLR3_BASE_TREE set661_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set661       = NULL;
    text_or_identifier662.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set661_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1017:32: ({...}? ( FOLLOWS_SYMBOL | PRECEDES_SYMBOL ) text_or_identifier )
        // MySQL.g:1018: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";


            }

            set661=(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, set661))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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_clause3589);
            text_or_identifier662=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_identifier662.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:1021: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_SYMBOL663;
    pANTLR3_COMMON_TOKEN    OR_SYMBOL664;
    pANTLR3_COMMON_TOKEN    REPLACE_SYMBOL665;
    pANTLR3_COMMON_TOKEN    SEMICOLON_SYMBOL669;
    pANTLR3_COMMON_TOKEN    EOF670;
    MySQLParser_view_algorithm_return view_algorithm666;
    #undef	RETURN_TYPE_view_algorithm666
    #define	RETURN_TYPE_view_algorithm666 MySQLParser_view_algorithm_return

    MySQLParser_definer_clause_return definer_clause667;
    #undef	RETURN_TYPE_definer_clause667
    #define	RETURN_TYPE_definer_clause667 MySQLParser_definer_clause_return

    MySQLParser_create_view_tail_return create_view_tail668;
    #undef	RETURN_TYPE_create_view_tail668
    #define	RETURN_TYPE_create_view_tail668 MySQLParser_create_view_tail_return

    pANTLR3_BASE_TREE CREATE_SYMBOL663_tree;
    pANTLR3_BASE_TREE OR_SYMBOL664_tree;
    pANTLR3_BASE_TREE REPLACE_SYMBOL665_tree;
    pANTLR3_BASE_TREE SEMICOLON_SYMBOL669_tree;
    pANTLR3_BASE_TREE EOF670_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CREATE_SYMBOL663       = NULL;
    OR_SYMBOL664       = NULL;
    REPLACE_SYMBOL665       = NULL;
    SEMICOLON_SYMBOL669       = NULL;
    EOF670       = NULL;
    view_algorithm666.tree = NULL;

    definer_clause667.tree = NULL;

    create_view_tail668.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CREATE_SYMBOL663_tree   = NULL;
    OR_SYMBOL664_tree   = NULL;
    REPLACE_SYMBOL665_tree   = NULL;
    SEMICOLON_SYMBOL669_tree   = NULL;
    EOF670_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1021:12: ( CREATE_SYMBOL ^ ( OR_SYMBOL REPLACE_SYMBOL )? ( view_algorithm )? ( definer_clause )? create_view_tail ( SEMICOLON_SYMBOL )? EOF )
        // MySQL.g:1022: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_SYMBOL663 = (pANTLR3_COMMON_TOKEN) MATCHT(CREATE_SYMBOL, &FOLLOW_CREATE_SYMBOL_in_create_view3601);
            if  (HASEXCEPTION())
            {
                goto rulecreate_viewEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CREATE_SYMBOL663_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CREATE_SYMBOL663))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, CREATE_SYMBOL663_tree, root_0));
            }

            // MySQL.g:1022:17: ( OR_SYMBOL REPLACE_SYMBOL )?
            {
                int alt205=2;
                switch ( LA(1) )
                {
                    case OR_SYMBOL:
                    	{
                    		alt205=1;
                    	}
                        break;
                }

                switch (alt205)
                {
            	case 1:
            	    // MySQL.g:1022:18: OR_SYMBOL REPLACE_SYMBOL
            	    {
            	        OR_SYMBOL664 = (pANTLR3_COMMON_TOKEN) MATCHT(OR_SYMBOL, &FOLLOW_OR_SYMBOL_in_create_view3605);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_viewEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OR_SYMBOL664_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OR_SYMBOL664));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OR_SYMBOL664_tree);
            	        }

            	        REPLACE_SYMBOL665 = (pANTLR3_COMMON_TOKEN) MATCHT(REPLACE_SYMBOL, &FOLLOW_REPLACE_SYMBOL_in_create_view3607);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_viewEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        REPLACE_SYMBOL665_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REPLACE_SYMBOL665));
            	        ADAPTOR->addChild(ADAPTOR, root_0, REPLACE_SYMBOL665_tree);
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:1022:45: ( view_algorithm )?
            {
                int alt206=2;
                switch ( LA(1) )
                {
                    case ALGORITHM_SYMBOL:
                    	{
                    		alt206=1;
                    	}
                        break;
                }

                switch (alt206)
                {
            	case 1:
            	    // MySQL.g:1022:45: view_algorithm
            	    {
            	        FOLLOWPUSH(FOLLOW_view_algorithm_in_create_view3611);
            	        view_algorithm666=view_algorithm(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_viewEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, view_algorithm666.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1022:62: ( definer_clause )?
            {
                int alt207=2;
                switch ( LA(1) )
                {
                    case DEFINER_SYMBOL:
                    	{
                    		alt207=1;
                    	}
                        break;
                }

                switch (alt207)
                {
            	case 1:
            	    // MySQL.g:1022:62: definer_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_definer_clause_in_create_view3615);
            	        definer_clause667=definer_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_viewEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, definer_clause667.tree);

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_create_view_tail_in_create_view3618);
            create_view_tail668=create_view_tail(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_viewEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_view_tail668.tree);

            // MySQL.g:1022:95: ( SEMICOLON_SYMBOL )?
            {
                int alt208=2;
                switch ( LA(1) )
                {
                    case SEMICOLON_SYMBOL:
                    	{
                    		alt208=1;
                    	}
                        break;
                }

                switch (alt208)
                {
            	case 1:
            	    // MySQL.g:1022:95: SEMICOLON_SYMBOL
            	    {
            	        SEMICOLON_SYMBOL669 = (pANTLR3_COMMON_TOKEN) MATCHT(SEMICOLON_SYMBOL, &FOLLOW_SEMICOLON_SYMBOL_in_create_view3620);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_viewEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SEMICOLON_SYMBOL669_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SEMICOLON_SYMBOL669));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SEMICOLON_SYMBOL669_tree);
            	        }

            	    }
            	    break;

                }
            }

            EOF670 = (pANTLR3_COMMON_TOKEN) MATCHT(EOF, &FOLLOW_EOF_in_create_view3623);
            if  (HASEXCEPTION())
            {
                goto rulecreate_viewEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EOF670_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EOF670));
            ADAPTOR->addChild(ADAPTOR, root_0, EOF670_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:1025: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_SYMBOL671;
    pANTLR3_COMMON_TOKEN    SECURITY_SYMBOL672;
    pANTLR3_COMMON_TOKEN    set673;
    pANTLR3_COMMON_TOKEN    VIEW_SYMBOL674;
    pANTLR3_COMMON_TOKEN    AS_SYMBOL677;
    pANTLR3_COMMON_TOKEN    WITH_SYMBOL679;
    pANTLR3_COMMON_TOKEN    set680;
    pANTLR3_COMMON_TOKEN    CHECK_SYMBOL681;
    pANTLR3_COMMON_TOKEN    OPTION_SYMBOL682;
    MySQLParser_view_name_return view_name675;
    #undef	RETURN_TYPE_view_name675
    #define	RETURN_TYPE_view_name675 MySQLParser_view_name_return

    MySQLParser_identifier_list_with_parentheses_return identifier_list_with_parentheses676;
    #undef	RETURN_TYPE_identifier_list_with_parentheses676
    #define	RETURN_TYPE_identifier_list_with_parentheses676 MySQLParser_identifier_list_with_parentheses_return

    MySQLParser_select_statement_return select_statement678;
    #undef	RETURN_TYPE_select_statement678
    #define	RETURN_TYPE_select_statement678 MySQLParser_select_statement_return

    pANTLR3_BASE_TREE SQL_SYMBOL671_tree;
    pANTLR3_BASE_TREE SECURITY_SYMBOL672_tree;
    pANTLR3_BASE_TREE set673_tree;
    pANTLR3_BASE_TREE VIEW_SYMBOL674_tree;
    pANTLR3_BASE_TREE AS_SYMBOL677_tree;
    pANTLR3_BASE_TREE WITH_SYMBOL679_tree;
    pANTLR3_BASE_TREE set680_tree;
    pANTLR3_BASE_TREE CHECK_SYMBOL681_tree;
    pANTLR3_BASE_TREE OPTION_SYMBOL682_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SQL_SYMBOL671       = NULL;
    SECURITY_SYMBOL672       = NULL;
    set673       = NULL;
    VIEW_SYMBOL674       = NULL;
    AS_SYMBOL677       = NULL;
    WITH_SYMBOL679       = NULL;
    set680       = NULL;
    CHECK_SYMBOL681       = NULL;
    OPTION_SYMBOL682       = NULL;
    view_name675.tree = NULL;

    identifier_list_with_parentheses676.tree = NULL;

    select_statement678.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SQL_SYMBOL671_tree   = NULL;
    SECURITY_SYMBOL672_tree   = NULL;
    set673_tree   = NULL;
    VIEW_SYMBOL674_tree   = NULL;
    AS_SYMBOL677_tree   = NULL;
    WITH_SYMBOL679_tree   = NULL;
    set680_tree   = NULL;
    CHECK_SYMBOL681_tree   = NULL;
    OPTION_SYMBOL682_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1025: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:1026: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:1026:2: ( SQL_SYMBOL SECURITY_SYMBOL ( DEFINER_SYMBOL | INVOKER_SYMBOL ) )?
            {
                int alt209=2;
                switch ( LA(1) )
                {
                    case SQL_SYMBOL:
                    	{
                    		alt209=1;
                    	}
                        break;
                }

                switch (alt209)
                {
            	case 1:
            	    // MySQL.g:1026:3: SQL_SYMBOL SECURITY_SYMBOL ( DEFINER_SYMBOL | INVOKER_SYMBOL )
            	    {
            	        SQL_SYMBOL671 = (pANTLR3_COMMON_TOKEN) MATCHT(SQL_SYMBOL, &FOLLOW_SQL_SYMBOL_in_create_view_tail3633);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_view_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SQL_SYMBOL671_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SQL_SYMBOL671));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SQL_SYMBOL671_tree);
            	        }

            	        SECURITY_SYMBOL672 = (pANTLR3_COMMON_TOKEN) MATCHT(SECURITY_SYMBOL, &FOLLOW_SECURITY_SYMBOL_in_create_view_tail3635);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_view_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SECURITY_SYMBOL672_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SECURITY_SYMBOL672));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SECURITY_SYMBOL672_tree);
            	        }

            	        set673=(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, set673))
            	            );
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

            	        }
            	        else
            	        {
            	            if (BACKTRACKING>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_SYMBOL674 = (pANTLR3_COMMON_TOKEN) MATCHT(VIEW_SYMBOL, &FOLLOW_VIEW_SYMBOL_in_create_view_tail3649);
            if  (HASEXCEPTION())
            {
                goto rulecreate_view_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            VIEW_SYMBOL674_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VIEW_SYMBOL674));
            ADAPTOR->addChild(ADAPTOR, root_0, VIEW_SYMBOL674_tree);
            }

            FOLLOWPUSH(FOLLOW_view_name_in_create_view_tail3651);
            view_name675=view_name(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_view_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, view_name675.tree);

            // MySQL.g:1027:25: ( identifier_list_with_parentheses )?
            {
                int alt210=2;
                switch ( LA(1) )
                {
                    case OPEN_PAR_SYMBOL:
                    	{
                    		alt210=1;
                    	}
                        break;
                }

                switch (alt210)
                {
            	case 1:
            	    // MySQL.g:1027:25: identifier_list_with_parentheses
            	    {
            	        FOLLOWPUSH(FOLLOW_identifier_list_with_parentheses_in_create_view_tail3653);
            	        identifier_list_with_parentheses676=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_parentheses676.tree);

            	    }
            	    break;

                }
            }

            AS_SYMBOL677 = (pANTLR3_COMMON_TOKEN) MATCHT(AS_SYMBOL, &FOLLOW_AS_SYMBOL_in_create_view_tail3658);
            if  (HASEXCEPTION())
            {
                goto rulecreate_view_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            AS_SYMBOL677_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AS_SYMBOL677));
            ADAPTOR->addChild(ADAPTOR, root_0, AS_SYMBOL677_tree);
            }

            FOLLOWPUSH(FOLLOW_select_statement_in_create_view_tail3660);
            select_statement678=select_statement(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_view_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_statement678.tree);

            // MySQL.g:1029:3: ( WITH_SYMBOL ( CASCADED_SYMBOL | LOCAL_SYMBOL )? CHECK_SYMBOL OPTION_SYMBOL )?
            {
                int alt212=2;
                switch ( LA(1) )
                {
                    case WITH_SYMBOL:
                    	{
                    		alt212=1;
                    	}
                        break;
                }

                switch (alt212)
                {
            	case 1:
            	    // MySQL.g:1029:4: WITH_SYMBOL ( CASCADED_SYMBOL | LOCAL_SYMBOL )? CHECK_SYMBOL OPTION_SYMBOL
            	    {
            	        WITH_SYMBOL679 = (pANTLR3_COMMON_TOKEN) MATCHT(WITH_SYMBOL, &FOLLOW_WITH_SYMBOL_in_create_view_tail3665);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_view_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        WITH_SYMBOL679_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WITH_SYMBOL679));
            	        ADAPTOR->addChild(ADAPTOR, root_0, WITH_SYMBOL679_tree);
            	        }

            	        // MySQL.g:1029:16: ( CASCADED_SYMBOL | LOCAL_SYMBOL )?
            	        {
            	            int alt211=2;
            	            switch ( LA(1) )
            	            {
            	                case CASCADED_SYMBOL:
            	                case LOCAL_SYMBOL:
            	                	{
            	                		alt211=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt211)
            	            {
            	        	case 1:
            	        	    // MySQL.g:
            	        	    {
            	        	        set680=(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, set680))
            	        	            );
            	        	            PERRORRECOVERY=ANTLR3_FALSE;
            	        	            FAILEDFLAG=ANTLR3_FALSE;

            	        	        }
            	        	        else
            	        	        {
            	        	            if (BACKTRACKING>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_SYMBOL681 = (pANTLR3_COMMON_TOKEN) MATCHT(CHECK_SYMBOL, &FOLLOW_CHECK_SYMBOL_in_create_view_tail3676);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_view_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CHECK_SYMBOL681_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHECK_SYMBOL681));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CHECK_SYMBOL681_tree);
            	        }

            	        OPTION_SYMBOL682 = (pANTLR3_COMMON_TOKEN) MATCHT(OPTION_SYMBOL, &FOLLOW_OPTION_SYMBOL_in_create_view_tail3678);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_view_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OPTION_SYMBOL682_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPTION_SYMBOL682));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OPTION_SYMBOL682_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:1032: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_SYMBOL683;
    pANTLR3_COMMON_TOKEN    REPLACE_SYMBOL684;
    MySQLParser_view_algorithm_return view_algorithm685;
    #undef	RETURN_TYPE_view_algorithm685
    #define	RETURN_TYPE_view_algorithm685 MySQLParser_view_algorithm_return

    MySQLParser_view_algorithm_return view_algorithm686;
    #undef	RETURN_TYPE_view_algorithm686
    #define	RETURN_TYPE_view_algorithm686 MySQLParser_view_algorithm_return

    pANTLR3_BASE_TREE OR_SYMBOL683_tree;
    pANTLR3_BASE_TREE REPLACE_SYMBOL684_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OR_SYMBOL683       = NULL;
    REPLACE_SYMBOL684       = NULL;
    view_algorithm685.tree = NULL;

    view_algorithm686.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OR_SYMBOL683_tree   = NULL;
    REPLACE_SYMBOL684_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1032:26: ( OR_SYMBOL REPLACE_SYMBOL ( view_algorithm )? | view_algorithm )

            ANTLR3_UINT32 alt214;

            alt214=2;

            switch ( LA(1) )
            {
            case OR_SYMBOL:
            	{
            		alt214=1;
            	}
                break;
            case ALGORITHM_SYMBOL:
            	{
            		alt214=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 214;
                EXCEPTION->state        = 0;


                goto ruleview_replace_or_algorithmEx;

            }

            switch (alt214)
            {
        	case 1:
        	    // MySQL.g:1033:2: OR_SYMBOL REPLACE_SYMBOL ( view_algorithm )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        OR_SYMBOL683 = (pANTLR3_COMMON_TOKEN) MATCHT(OR_SYMBOL, &FOLLOW_OR_SYMBOL_in_view_replace_or_algorithm3689);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleview_replace_or_algorithmEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OR_SYMBOL683_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OR_SYMBOL683));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OR_SYMBOL683_tree);
        	        }

        	        REPLACE_SYMBOL684 = (pANTLR3_COMMON_TOKEN) MATCHT(REPLACE_SYMBOL, &FOLLOW_REPLACE_SYMBOL_in_view_replace_or_algorithm3691);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleview_replace_or_algorithmEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        REPLACE_SYMBOL684_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REPLACE_SYMBOL684));
        	        ADAPTOR->addChild(ADAPTOR, root_0, REPLACE_SYMBOL684_tree);
        	        }

        	        // MySQL.g:1033:27: ( view_algorithm )?
        	        {
        	            int alt213=2;
        	            switch ( LA(1) )
        	            {
        	                case ALGORITHM_SYMBOL:
        	                	{
        	                		alt213=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt213)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1033:27: view_algorithm
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_view_algorithm_in_view_replace_or_algorithm3693);
        	        	        view_algorithm685=view_algorithm(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleview_replace_or_algorithmEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, view_algorithm685.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1034:4: view_algorithm
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_view_algorithm_in_view_replace_or_algorithm3699);
        	        view_algorithm686=view_algorithm(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleview_replace_or_algorithmEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, view_algorithm686.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:1037: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_SYMBOL687;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR688;
    pANTLR3_COMMON_TOKEN    set689;

    pANTLR3_BASE_TREE ALGORITHM_SYMBOL687_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR688_tree;
    pANTLR3_BASE_TREE set689_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ALGORITHM_SYMBOL687       = NULL;
    EQUAL_OPERATOR688       = NULL;
    set689       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ALGORITHM_SYMBOL687_tree   = NULL;
    EQUAL_OPERATOR688_tree   = NULL;
    set689_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1037:15: ( ALGORITHM_SYMBOL EQUAL_OPERATOR ( UNDEFINED_SYMBOL | MERGE_SYMBOL | TEMPTABLE_SYMBOL ) )
        // MySQL.g:1038:2: ALGORITHM_SYMBOL EQUAL_OPERATOR ( UNDEFINED_SYMBOL | MERGE_SYMBOL | TEMPTABLE_SYMBOL )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            ALGORITHM_SYMBOL687 = (pANTLR3_COMMON_TOKEN) MATCHT(ALGORITHM_SYMBOL, &FOLLOW_ALGORITHM_SYMBOL_in_view_algorithm3708);
            if  (HASEXCEPTION())
            {
                goto ruleview_algorithmEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ALGORITHM_SYMBOL687_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ALGORITHM_SYMBOL687));
            ADAPTOR->addChild(ADAPTOR, root_0, ALGORITHM_SYMBOL687_tree);
            }

            EQUAL_OPERATOR688 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_view_algorithm3710);
            if  (HASEXCEPTION())
            {
                goto ruleview_algorithmEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EQUAL_OPERATOR688_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR688));
            ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR688_tree);
            }

            set689=(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, set689))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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:1043: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_SYMBOL690;
    pANTLR3_COMMON_TOKEN    DATABASE_SYMBOL691;
    pANTLR3_COMMON_TOKEN    EVENT_SYMBOL694;
    pANTLR3_COMMON_TOKEN    FUNCTION_SYMBOL697;
    pANTLR3_COMMON_TOKEN    PROCEDURE_SYMBOL700;
    pANTLR3_COMMON_TOKEN    INDEX_SYMBOL704;
    pANTLR3_COMMON_TOKEN    ON_SYMBOL706;
    pANTLR3_COMMON_TOKEN    LOGFILE_SYMBOL709;
    pANTLR3_COMMON_TOKEN    GROUP_SYMBOL710;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL713;
    pANTLR3_COMMON_TOKEN    SERVER_SYMBOL715;
    pANTLR3_COMMON_TOKEN    TEMPORARY_SYMBOL718;
    pANTLR3_COMMON_TOKEN    set719;
    pANTLR3_COMMON_TOKEN    set722;
    pANTLR3_COMMON_TOKEN    TABLESPACE_SYMBOL723;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL726;
    pANTLR3_COMMON_TOKEN    TRIGGER_SYMBOL728;
    pANTLR3_COMMON_TOKEN    VIEW_SYMBOL731;
    pANTLR3_COMMON_TOKEN    set734;
    MySQLParser_if_exists_return if_exists692;
    #undef	RETURN_TYPE_if_exists692
    #define	RETURN_TYPE_if_exists692 MySQLParser_if_exists_return

    MySQLParser_schema_ref_return schema_ref693;
    #undef	RETURN_TYPE_schema_ref693
    #define	RETURN_TYPE_schema_ref693 MySQLParser_schema_ref_return

    MySQLParser_if_exists_return if_exists695;
    #undef	RETURN_TYPE_if_exists695
    #define	RETURN_TYPE_if_exists695 MySQLParser_if_exists_return

    MySQLParser_event_ref_return event_ref696;
    #undef	RETURN_TYPE_event_ref696
    #define	RETURN_TYPE_event_ref696 MySQLParser_event_ref_return

    MySQLParser_if_exists_return if_exists698;
    #undef	RETURN_TYPE_if_exists698
    #define	RETURN_TYPE_if_exists698 MySQLParser_if_exists_return

    MySQLParser_function_ref_return function_ref699;
    #undef	RETURN_TYPE_function_ref699
    #define	RETURN_TYPE_function_ref699 MySQLParser_function_ref_return

    MySQLParser_if_exists_return if_exists701;
    #undef	RETURN_TYPE_if_exists701
    #define	RETURN_TYPE_if_exists701 MySQLParser_if_exists_return

    MySQLParser_procedure_ref_return procedure_ref702;
    #undef	RETURN_TYPE_procedure_ref702
    #define	RETURN_TYPE_procedure_ref702 MySQLParser_procedure_ref_return

    MySQLParser_online_option_return online_option703;
    #undef	RETURN_TYPE_online_option703
    #define	RETURN_TYPE_online_option703 MySQLParser_online_option_return

    MySQLParser_index_ref_return index_ref705;
    #undef	RETURN_TYPE_index_ref705
    #define	RETURN_TYPE_index_ref705 MySQLParser_index_ref_return

    MySQLParser_table_ref_return table_ref707;
    #undef	RETURN_TYPE_table_ref707
    #define	RETURN_TYPE_table_ref707 MySQLParser_table_ref_return

    MySQLParser_index_lock_algorithm_return index_lock_algorithm708;
    #undef	RETURN_TYPE_index_lock_algorithm708
    #define	RETURN_TYPE_index_lock_algorithm708 MySQLParser_index_lock_algorithm_return

    MySQLParser_logfile_group_ref_return logfile_group_ref711;
    #undef	RETURN_TYPE_logfile_group_ref711
    #define	RETURN_TYPE_logfile_group_ref711 MySQLParser_logfile_group_ref_return

    MySQLParser_drop_logfile_group_option_return drop_logfile_group_option712;
    #undef	RETURN_TYPE_drop_logfile_group_option712
    #define	RETURN_TYPE_drop_logfile_group_option712 MySQLParser_drop_logfile_group_option_return

    MySQLParser_drop_logfile_group_option_return drop_logfile_group_option714;
    #undef	RETURN_TYPE_drop_logfile_group_option714
    #define	RETURN_TYPE_drop_logfile_group_option714 MySQLParser_drop_logfile_group_option_return

    MySQLParser_if_exists_return if_exists716;
    #undef	RETURN_TYPE_if_exists716
    #define	RETURN_TYPE_if_exists716 MySQLParser_if_exists_return

    MySQLParser_server_ref_return server_ref717;
    #undef	RETURN_TYPE_server_ref717
    #define	RETURN_TYPE_server_ref717 MySQLParser_server_ref_return

    MySQLParser_if_exists_return if_exists720;
    #undef	RETURN_TYPE_if_exists720
    #define	RETURN_TYPE_if_exists720 MySQLParser_if_exists_return

    MySQLParser_table_ref_list_return table_ref_list721;
    #undef	RETURN_TYPE_table_ref_list721
    #define	RETURN_TYPE_table_ref_list721 MySQLParser_table_ref_list_return

    MySQLParser_tablespace_ref_return tablespace_ref724;
    #undef	RETURN_TYPE_tablespace_ref724
    #define	RETURN_TYPE_tablespace_ref724 MySQLParser_tablespace_ref_return

    MySQLParser_drop_logfile_group_option_return drop_logfile_group_option725;
    #undef	RETURN_TYPE_drop_logfile_group_option725
    #define	RETURN_TYPE_drop_logfile_group_option725 MySQLParser_drop_logfile_group_option_return

    MySQLParser_drop_logfile_group_option_return drop_logfile_group_option727;
    #undef	RETURN_TYPE_drop_logfile_group_option727
    #define	RETURN_TYPE_drop_logfile_group_option727 MySQLParser_drop_logfile_group_option_return

    MySQLParser_if_exists_return if_exists729;
    #undef	RETURN_TYPE_if_exists729
    #define	RETURN_TYPE_if_exists729 MySQLParser_if_exists_return

    MySQLParser_trigger_ref_return trigger_ref730;
    #undef	RETURN_TYPE_trigger_ref730
    #define	RETURN_TYPE_trigger_ref730 MySQLParser_trigger_ref_return

    MySQLParser_if_exists_return if_exists732;
    #undef	RETURN_TYPE_if_exists732
    #define	RETURN_TYPE_if_exists732 MySQLParser_if_exists_return

    MySQLParser_view_identifier_list_return view_identifier_list733;
    #undef	RETURN_TYPE_view_identifier_list733
    #define	RETURN_TYPE_view_identifier_list733 MySQLParser_view_identifier_list_return

    pANTLR3_BASE_TREE DROP_SYMBOL690_tree;
    pANTLR3_BASE_TREE DATABASE_SYMBOL691_tree;
    pANTLR3_BASE_TREE EVENT_SYMBOL694_tree;
    pANTLR3_BASE_TREE FUNCTION_SYMBOL697_tree;
    pANTLR3_BASE_TREE PROCEDURE_SYMBOL700_tree;
    pANTLR3_BASE_TREE INDEX_SYMBOL704_tree;
    pANTLR3_BASE_TREE ON_SYMBOL706_tree;
    pANTLR3_BASE_TREE LOGFILE_SYMBOL709_tree;
    pANTLR3_BASE_TREE GROUP_SYMBOL710_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL713_tree;
    pANTLR3_BASE_TREE SERVER_SYMBOL715_tree;
    pANTLR3_BASE_TREE TEMPORARY_SYMBOL718_tree;
    pANTLR3_BASE_TREE set719_tree;
    pANTLR3_BASE_TREE set722_tree;
    pANTLR3_BASE_TREE TABLESPACE_SYMBOL723_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL726_tree;
    pANTLR3_BASE_TREE TRIGGER_SYMBOL728_tree;
    pANTLR3_BASE_TREE VIEW_SYMBOL731_tree;
    pANTLR3_BASE_TREE set734_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DROP_SYMBOL690       = NULL;
    DATABASE_SYMBOL691       = NULL;
    EVENT_SYMBOL694       = NULL;
    FUNCTION_SYMBOL697       = NULL;
    PROCEDURE_SYMBOL700       = NULL;
    INDEX_SYMBOL704       = NULL;
    ON_SYMBOL706       = NULL;
    LOGFILE_SYMBOL709       = NULL;
    GROUP_SYMBOL710       = NULL;
    COMMA_SYMBOL713       = NULL;
    SERVER_SYMBOL715       = NULL;
    TEMPORARY_SYMBOL718       = NULL;
    set719       = NULL;
    set722       = NULL;
    TABLESPACE_SYMBOL723       = NULL;
    COMMA_SYMBOL726       = NULL;
    TRIGGER_SYMBOL728       = NULL;
    VIEW_SYMBOL731       = NULL;
    set734       = NULL;
    if_exists692.tree = NULL;

    schema_ref693.tree = NULL;

    if_exists695.tree = NULL;

    event_ref696.tree = NULL;

    if_exists698.tree = NULL;

    function_ref699.tree = NULL;

    if_exists701.tree = NULL;

    procedure_ref702.tree = NULL;

    online_option703.tree = NULL;

    index_ref705.tree = NULL;

    table_ref707.tree = NULL;

    index_lock_algorithm708.tree = NULL;

    logfile_group_ref711.tree = NULL;

    drop_logfile_group_option712.tree = NULL;

    drop_logfile_group_option714.tree = NULL;

    if_exists716.tree = NULL;

    server_ref717.tree = NULL;

    if_exists720.tree = NULL;

    table_ref_list721.tree = NULL;

    tablespace_ref724.tree = NULL;

    drop_logfile_group_option725.tree = NULL;

    drop_logfile_group_option727.tree = NULL;

    if_exists729.tree = NULL;

    trigger_ref730.tree = NULL;

    if_exists732.tree = NULL;

    view_identifier_list733.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DROP_SYMBOL690_tree   = NULL;
    DATABASE_SYMBOL691_tree   = NULL;
    EVENT_SYMBOL694_tree   = NULL;
    FUNCTION_SYMBOL697_tree   = NULL;
    PROCEDURE_SYMBOL700_tree   = NULL;
    INDEX_SYMBOL704_tree   = NULL;
    ON_SYMBOL706_tree   = NULL;
    LOGFILE_SYMBOL709_tree   = NULL;
    GROUP_SYMBOL710_tree   = NULL;
    COMMA_SYMBOL713_tree   = NULL;
    SERVER_SYMBOL715_tree   = NULL;
    TEMPORARY_SYMBOL718_tree   = NULL;
    set719_tree   = NULL;
    set722_tree   = NULL;
    TABLESPACE_SYMBOL723_tree   = NULL;
    COMMA_SYMBOL726_tree   = NULL;
    TRIGGER_SYMBOL728_tree   = NULL;
    VIEW_SYMBOL731_tree   = NULL;
    set734_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1043: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:1044: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_SYMBOL690 = (pANTLR3_COMMON_TOKEN) MATCHT(DROP_SYMBOL, &FOLLOW_DROP_SYMBOL_in_drop_statement3733);
            if  (HASEXCEPTION())
            {
                goto ruledrop_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            DROP_SYMBOL690_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DROP_SYMBOL690))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, DROP_SYMBOL690_tree, root_0));
            }

            // MySQL.g:1045: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 alt235=10;
                switch ( LA(1) )
                {
                case DATABASE_SYMBOL:
                	{
                		alt235=1;
                	}
                    break;
                case EVENT_SYMBOL:
                	{
                		alt235=2;
                	}
                    break;
                case FUNCTION_SYMBOL:
                case PROCEDURE_SYMBOL:
                	{
                		alt235=3;
                	}
                    break;
                case INDEX_SYMBOL:
                case OFFLINE_SYMBOL:
                case ONLINE_SYMBOL:
                	{
                		alt235=4;
                	}
                    break;
                case LOGFILE_SYMBOL:
                	{
                		alt235=5;
                	}
                    break;
                case SERVER_SYMBOL:
                	{
                		alt235=6;
                	}
                    break;
                case TABLES_SYMBOL:
                case TEMPORARY_SYMBOL:
                case TABLE_SYMBOL:
                	{
                		alt235=7;
                	}
                    break;
                case TABLESPACE_SYMBOL:
                	{
                		alt235=8;
                	}
                    break;
                case TRIGGER_SYMBOL:
                	{
                		alt235=9;
                	}
                    break;
                case VIEW_SYMBOL:
                	{
                		alt235=10;
                	}
                    break;

                default:
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }

                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 235;
                    EXCEPTION->state        = 0;


                    goto ruledrop_statementEx;

                }

                switch (alt235)
                {
            	case 1:
            	    // MySQL.g:1046:3: DATABASE_SYMBOL ( if_exists )? schema_ref
            	    {
            	        DATABASE_SYMBOL691 = (pANTLR3_COMMON_TOKEN) MATCHT(DATABASE_SYMBOL, &FOLLOW_DATABASE_SYMBOL_in_drop_statement3741);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DATABASE_SYMBOL691_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATABASE_SYMBOL691));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DATABASE_SYMBOL691_tree);
            	        }

            	        // MySQL.g:1046:19: ( if_exists )?
            	        {
            	            int alt215=2;
            	            switch ( LA(1) )
            	            {
            	                case IF_SYMBOL:
            	                	{
            	                		alt215=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt215)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1046:19: if_exists
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_if_exists_in_drop_statement3743);
            	        	        if_exists692=if_exists(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledrop_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, if_exists692.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_schema_ref_in_drop_statement3746);
            	        schema_ref693=schema_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, schema_ref693.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1047: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_SYMBOL694 = (pANTLR3_COMMON_TOKEN) MATCHT(EVENT_SYMBOL, &FOLLOW_EVENT_SYMBOL_in_drop_statement3754);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        EVENT_SYMBOL694_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EVENT_SYMBOL694));
            	        ADAPTOR->addChild(ADAPTOR, root_0, EVENT_SYMBOL694_tree);
            	        }

            	        // MySQL.g:1047:45: ( if_exists )?
            	        {
            	            int alt216=2;
            	            switch ( LA(1) )
            	            {
            	                case IF_SYMBOL:
            	                	{
            	                		alt216=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt216)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1047:45: if_exists
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_if_exists_in_drop_statement3756);
            	        	        if_exists695=if_exists(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledrop_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, if_exists695.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_event_ref_in_drop_statement3759);
            	        event_ref696=event_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, event_ref696.tree);

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:1049:4: ( FUNCTION_SYMBOL ( if_exists )? function_ref | PROCEDURE_SYMBOL ( if_exists )? procedure_ref )
            	    {
            	        // MySQL.g:1049:4: ( FUNCTION_SYMBOL ( if_exists )? function_ref | PROCEDURE_SYMBOL ( if_exists )? procedure_ref )
            	        {
            	            int alt219=2;
            	            switch ( LA(1) )
            	            {
            	            case FUNCTION_SYMBOL:
            	            	{
            	            		alt219=1;
            	            	}
            	                break;
            	            case PROCEDURE_SYMBOL:
            	            	{
            	            		alt219=2;
            	            	}
            	                break;

            	            default:
            	                if (BACKTRACKING>0)
            	                {
            	                    FAILEDFLAG = ANTLR3_TRUE;
            	                    return retval;
            	                }

            	                CONSTRUCTEX();
            	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                EXCEPTION->message      = (void *)"";
            	                EXCEPTION->decisionNum  = 219;
            	                EXCEPTION->state        = 0;


            	                goto ruledrop_statementEx;

            	            }

            	            switch (alt219)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1050:5: FUNCTION_SYMBOL ( if_exists )? function_ref
            	        	    {
            	        	        FUNCTION_SYMBOL697 = (pANTLR3_COMMON_TOKEN) MATCHT(FUNCTION_SYMBOL, &FOLLOW_FUNCTION_SYMBOL_in_drop_statement3774);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledrop_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        FUNCTION_SYMBOL697_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FUNCTION_SYMBOL697));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, FUNCTION_SYMBOL697_tree);
            	        	        }

            	        	        // MySQL.g:1050:21: ( if_exists )?
            	        	        {
            	        	            int alt217=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case IF_SYMBOL:
            	        	                	{
            	        	                		alt217=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt217)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:1050:21: if_exists
            	        	        	    {
            	        	        	        FOLLOWPUSH(FOLLOW_if_exists_in_drop_statement3776);
            	        	        	        if_exists698=if_exists(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto ruledrop_statementEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, if_exists698.tree);

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_function_ref_in_drop_statement3779);
            	        	        function_ref699=function_ref(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledrop_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, function_ref699.tree);

            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:1051:7: PROCEDURE_SYMBOL ( if_exists )? procedure_ref
            	        	    {
            	        	        PROCEDURE_SYMBOL700 = (pANTLR3_COMMON_TOKEN) MATCHT(PROCEDURE_SYMBOL, &FOLLOW_PROCEDURE_SYMBOL_in_drop_statement3788);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledrop_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        PROCEDURE_SYMBOL700_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PROCEDURE_SYMBOL700));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, PROCEDURE_SYMBOL700_tree);
            	        	        }

            	        	        // MySQL.g:1051:24: ( if_exists )?
            	        	        {
            	        	            int alt218=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case IF_SYMBOL:
            	        	                	{
            	        	                		alt218=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt218)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:1051:24: if_exists
            	        	        	    {
            	        	        	        FOLLOWPUSH(FOLLOW_if_exists_in_drop_statement3790);
            	        	        	        if_exists701=if_exists(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto ruledrop_statementEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, if_exists701.tree);

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_procedure_ref_in_drop_statement3793);
            	        	        procedure_ref702=procedure_ref(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledrop_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, procedure_ref702.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 4:
            	    // MySQL.g:1053:5: ( online_option )? INDEX_SYMBOL index_ref ON_SYMBOL table_ref ( index_lock_algorithm )?
            	    {
            	        // MySQL.g:1053:5: ( online_option )?
            	        {
            	            int alt220=2;
            	            switch ( LA(1) )
            	            {
            	                case OFFLINE_SYMBOL:
            	                case ONLINE_SYMBOL:
            	                	{
            	                		alt220=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt220)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1053:5: online_option
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_online_option_in_drop_statement3804);
            	        	        online_option703=online_option(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledrop_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, online_option703.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        INDEX_SYMBOL704 = (pANTLR3_COMMON_TOKEN) MATCHT(INDEX_SYMBOL, &FOLLOW_INDEX_SYMBOL_in_drop_statement3807);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        INDEX_SYMBOL704_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INDEX_SYMBOL704));
            	        ADAPTOR->addChild(ADAPTOR, root_0, INDEX_SYMBOL704_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_index_ref_in_drop_statement3809);
            	        index_ref705=index_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_ref705.tree);

            	        ON_SYMBOL706 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_drop_statement3811);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ON_SYMBOL706_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ON_SYMBOL706));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ON_SYMBOL706_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_table_ref_in_drop_statement3813);
            	        table_ref707=table_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref707.tree);

            	        // MySQL.g:1053:63: ( index_lock_algorithm )?
            	        {
            	            int alt221=2;
            	            {
            	                int LA221_0 = LA(1);
            	                if ( ((SERVER_VERSION >= 50600)) && (LA221_0 == ALGORITHM_SYMBOL || LA221_0 == LOCK_SYMBOL))
            	                {
            	                    alt221=1;
            	                }
            	            }
            	            switch (alt221)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1053:63: index_lock_algorithm
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_index_lock_algorithm_in_drop_statement3815);
            	        	        index_lock_algorithm708=index_lock_algorithm(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledrop_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_lock_algorithm708.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 5:
            	    // MySQL.g:1054:5: LOGFILE_SYMBOL GROUP_SYMBOL logfile_group_ref ( drop_logfile_group_option ( ( COMMA_SYMBOL )? drop_logfile_group_option )* )?
            	    {
            	        LOGFILE_SYMBOL709 = (pANTLR3_COMMON_TOKEN) MATCHT(LOGFILE_SYMBOL, &FOLLOW_LOGFILE_SYMBOL_in_drop_statement3822);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        LOGFILE_SYMBOL709_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOGFILE_SYMBOL709));
            	        ADAPTOR->addChild(ADAPTOR, root_0, LOGFILE_SYMBOL709_tree);
            	        }

            	        GROUP_SYMBOL710 = (pANTLR3_COMMON_TOKEN) MATCHT(GROUP_SYMBOL, &FOLLOW_GROUP_SYMBOL_in_drop_statement3824);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        GROUP_SYMBOL710_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GROUP_SYMBOL710));
            	        ADAPTOR->addChild(ADAPTOR, root_0, GROUP_SYMBOL710_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_logfile_group_ref_in_drop_statement3826);
            	        logfile_group_ref711=logfile_group_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, logfile_group_ref711.tree);

            	        // MySQL.g:1054:51: ( drop_logfile_group_option ( ( COMMA_SYMBOL )? drop_logfile_group_option )* )?
            	        {
            	            int alt224=2;
            	            switch ( LA(1) )
            	            {
            	                case ENGINE_SYMBOL:
            	                case NO_WAIT_SYMBOL:
            	                case STORAGE_SYMBOL:
            	                case WAIT_SYMBOL:
            	                	{
            	                		alt224=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt224)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1054:52: drop_logfile_group_option ( ( COMMA_SYMBOL )? drop_logfile_group_option )*
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_drop_logfile_group_option_in_drop_statement3829);
            	        	        drop_logfile_group_option712=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_option712.tree);

            	        	        // MySQL.g:1054:78: ( ( COMMA_SYMBOL )? drop_logfile_group_option )*

            	        	        for (;;)
            	        	        {
            	        	            int alt223=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	            case ENGINE_SYMBOL:
            	        	            case NO_WAIT_SYMBOL:
            	        	            case STORAGE_SYMBOL:
            	        	            case WAIT_SYMBOL:
            	        	            case COMMA_SYMBOL:
            	        	            	{
            	        	            		alt223=1;
            	        	            	}
            	        	                break;

            	        	            }

            	        	            switch (alt223)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:1054:79: ( COMMA_SYMBOL )? drop_logfile_group_option
            	        	        	    {
            	        	        	        // MySQL.g:1054:79: ( COMMA_SYMBOL )?
            	        	        	        {
            	        	        	            int alt222=2;
            	        	        	            switch ( LA(1) )
            	        	        	            {
            	        	        	                case COMMA_SYMBOL:
            	        	        	                	{
            	        	        	                		alt222=1;
            	        	        	                	}
            	        	        	                    break;
            	        	        	            }

            	        	        	            switch (alt222)
            	        	        	            {
            	        	        	        	case 1:
            	        	        	        	    // MySQL.g:1054:79: COMMA_SYMBOL
            	        	        	        	    {
            	        	        	        	        COMMA_SYMBOL713 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_drop_statement3832);
            	        	        	        	        if  (HASEXCEPTION())
            	        	        	        	        {
            	        	        	        	            goto ruledrop_statementEx;
            	        	        	        	        }
            	        	        	        	        if (HASFAILED())
            	        	        	        	        {
            	        	        	        	            return retval;
            	        	        	        	        }

            	        	        	        	        if ( BACKTRACKING==0 ) {
            	        	        	        	        COMMA_SYMBOL713_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL713));
            	        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL713_tree);
            	        	        	        	        }

            	        	        	        	    }
            	        	        	        	    break;

            	        	        	            }
            	        	        	        }

            	        	        	        FOLLOWPUSH(FOLLOW_drop_logfile_group_option_in_drop_statement3835);
            	        	        	        drop_logfile_group_option714=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_option714.tree);

            	        	        	    }
            	        	        	    break;

            	        	        	default:
            	        	        	    goto loop223;	/* break out of the loop */
            	        	        	    break;
            	        	            }
            	        	        }
            	        	        loop223: ; /* Jump out to here if this rule does not match */


            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 6:
            	    // MySQL.g:1055:5: SERVER_SYMBOL ( if_exists )? server_ref
            	    {
            	        SERVER_SYMBOL715 = (pANTLR3_COMMON_TOKEN) MATCHT(SERVER_SYMBOL, &FOLLOW_SERVER_SYMBOL_in_drop_statement3845);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SERVER_SYMBOL715_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SERVER_SYMBOL715));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SERVER_SYMBOL715_tree);
            	        }

            	        // MySQL.g:1055:19: ( if_exists )?
            	        {
            	            int alt225=2;
            	            switch ( LA(1) )
            	            {
            	                case IF_SYMBOL:
            	                	{
            	                		alt225=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt225)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1055:19: if_exists
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_if_exists_in_drop_statement3847);
            	        	        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_server_ref_in_drop_statement3850);
            	        server_ref717=server_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, server_ref717.tree);

            	    }
            	    break;
            	case 7:
            	    // MySQL.g:1056:5: ( TEMPORARY_SYMBOL )? ( TABLE_SYMBOL | TABLES_SYMBOL ) ( if_exists )? table_ref_list ( RESTRICT_SYMBOL | CASCADE_SYMBOL )?
            	    {
            	        // MySQL.g:1056:5: ( TEMPORARY_SYMBOL )?
            	        {
            	            int alt226=2;
            	            switch ( LA(1) )
            	            {
            	                case TEMPORARY_SYMBOL:
            	                	{
            	                		alt226=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt226)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1056:5: TEMPORARY_SYMBOL
            	        	    {
            	        	        TEMPORARY_SYMBOL718 = (pANTLR3_COMMON_TOKEN) MATCHT(TEMPORARY_SYMBOL, &FOLLOW_TEMPORARY_SYMBOL_in_drop_statement3856);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledrop_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        TEMPORARY_SYMBOL718_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TEMPORARY_SYMBOL718));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, TEMPORARY_SYMBOL718_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        set719=(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, set719))
            	            );
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

            	        }
            	        else
            	        {
            	            if (BACKTRACKING>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:1056:54: ( if_exists )?
            	        {
            	            int alt227=2;
            	            switch ( LA(1) )
            	            {
            	                case IF_SYMBOL:
            	                	{
            	                		alt227=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt227)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1056:54: if_exists
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_if_exists_in_drop_statement3867);
            	        	        if_exists720=if_exists(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledrop_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, if_exists720.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_table_ref_list_in_drop_statement3870);
            	        table_ref_list721=table_ref_list(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref_list721.tree);

            	        // MySQL.g:1056:80: ( RESTRICT_SYMBOL | CASCADE_SYMBOL )?
            	        {
            	            int alt228=2;
            	            switch ( LA(1) )
            	            {
            	                case CASCADE_SYMBOL:
            	                case RESTRICT_SYMBOL:
            	                	{
            	                		alt228=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt228)
            	            {
            	        	case 1:
            	        	    // MySQL.g:
            	        	    {
            	        	        set722=(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, set722))
            	        	            );
            	        	            PERRORRECOVERY=ANTLR3_FALSE;
            	        	            FAILEDFLAG=ANTLR3_FALSE;

            	        	        }
            	        	        else
            	        	        {
            	        	            if (BACKTRACKING>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:1057:5: TABLESPACE_SYMBOL tablespace_ref ( drop_logfile_group_option ( ( COMMA_SYMBOL )? drop_logfile_group_option )* )?
            	    {
            	        TABLESPACE_SYMBOL723 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLESPACE_SYMBOL, &FOLLOW_TABLESPACE_SYMBOL_in_drop_statement3885);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        TABLESPACE_SYMBOL723_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLESPACE_SYMBOL723));
            	        ADAPTOR->addChild(ADAPTOR, root_0, TABLESPACE_SYMBOL723_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_tablespace_ref_in_drop_statement3887);
            	        tablespace_ref724=tablespace_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, tablespace_ref724.tree);

            	        // MySQL.g:1057:38: ( drop_logfile_group_option ( ( COMMA_SYMBOL )? drop_logfile_group_option )* )?
            	        {
            	            int alt231=2;
            	            switch ( LA(1) )
            	            {
            	                case ENGINE_SYMBOL:
            	                case NO_WAIT_SYMBOL:
            	                case STORAGE_SYMBOL:
            	                case WAIT_SYMBOL:
            	                	{
            	                		alt231=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt231)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1057:39: drop_logfile_group_option ( ( COMMA_SYMBOL )? drop_logfile_group_option )*
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_drop_logfile_group_option_in_drop_statement3890);
            	        	        drop_logfile_group_option725=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_option725.tree);

            	        	        // MySQL.g:1057:65: ( ( COMMA_SYMBOL )? drop_logfile_group_option )*

            	        	        for (;;)
            	        	        {
            	        	            int alt230=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	            case ENGINE_SYMBOL:
            	        	            case NO_WAIT_SYMBOL:
            	        	            case STORAGE_SYMBOL:
            	        	            case WAIT_SYMBOL:
            	        	            case COMMA_SYMBOL:
            	        	            	{
            	        	            		alt230=1;
            	        	            	}
            	        	                break;

            	        	            }

            	        	            switch (alt230)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:1057:66: ( COMMA_SYMBOL )? drop_logfile_group_option
            	        	        	    {
            	        	        	        // MySQL.g:1057:66: ( COMMA_SYMBOL )?
            	        	        	        {
            	        	        	            int alt229=2;
            	        	        	            switch ( LA(1) )
            	        	        	            {
            	        	        	                case COMMA_SYMBOL:
            	        	        	                	{
            	        	        	                		alt229=1;
            	        	        	                	}
            	        	        	                    break;
            	        	        	            }

            	        	        	            switch (alt229)
            	        	        	            {
            	        	        	        	case 1:
            	        	        	        	    // MySQL.g:1057:66: COMMA_SYMBOL
            	        	        	        	    {
            	        	        	        	        COMMA_SYMBOL726 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_drop_statement3893);
            	        	        	        	        if  (HASEXCEPTION())
            	        	        	        	        {
            	        	        	        	            goto ruledrop_statementEx;
            	        	        	        	        }
            	        	        	        	        if (HASFAILED())
            	        	        	        	        {
            	        	        	        	            return retval;
            	        	        	        	        }

            	        	        	        	        if ( BACKTRACKING==0 ) {
            	        	        	        	        COMMA_SYMBOL726_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL726));
            	        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL726_tree);
            	        	        	        	        }

            	        	        	        	    }
            	        	        	        	    break;

            	        	        	            }
            	        	        	        }

            	        	        	        FOLLOWPUSH(FOLLOW_drop_logfile_group_option_in_drop_statement3896);
            	        	        	        drop_logfile_group_option727=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_option727.tree);

            	        	        	    }
            	        	        	    break;

            	        	        	default:
            	        	        	    goto loop230;	/* break out of the loop */
            	        	        	    break;
            	        	            }
            	        	        }
            	        	        loop230: ; /* Jump out to here if this rule does not match */


            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 9:
            	    // MySQL.g:1058:5: TRIGGER_SYMBOL ( if_exists )? trigger_ref
            	    {
            	        TRIGGER_SYMBOL728 = (pANTLR3_COMMON_TOKEN) MATCHT(TRIGGER_SYMBOL, &FOLLOW_TRIGGER_SYMBOL_in_drop_statement3906);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        TRIGGER_SYMBOL728_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TRIGGER_SYMBOL728));
            	        ADAPTOR->addChild(ADAPTOR, root_0, TRIGGER_SYMBOL728_tree);
            	        }

            	        // MySQL.g:1058:20: ( if_exists )?
            	        {
            	            int alt232=2;
            	            switch ( LA(1) )
            	            {
            	                case IF_SYMBOL:
            	                	{
            	                		alt232=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt232)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1058:20: if_exists
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_if_exists_in_drop_statement3908);
            	        	        if_exists729=if_exists(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledrop_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, if_exists729.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_trigger_ref_in_drop_statement3911);
            	        trigger_ref730=trigger_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, trigger_ref730.tree);

            	    }
            	    break;
            	case 10:
            	    // MySQL.g:1059:5: VIEW_SYMBOL ( if_exists )? view_identifier_list ( RESTRICT_SYMBOL | CASCADE_SYMBOL )?
            	    {
            	        VIEW_SYMBOL731 = (pANTLR3_COMMON_TOKEN) MATCHT(VIEW_SYMBOL, &FOLLOW_VIEW_SYMBOL_in_drop_statement3917);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        VIEW_SYMBOL731_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VIEW_SYMBOL731));
            	        ADAPTOR->addChild(ADAPTOR, root_0, VIEW_SYMBOL731_tree);
            	        }

            	        // MySQL.g:1059:17: ( if_exists )?
            	        {
            	            int alt233=2;
            	            switch ( LA(1) )
            	            {
            	                case IF_SYMBOL:
            	                	{
            	                		alt233=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt233)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1059:17: if_exists
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_if_exists_in_drop_statement3919);
            	        	        if_exists732=if_exists(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledrop_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, if_exists732.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_view_identifier_list_in_drop_statement3922);
            	        view_identifier_list733=view_identifier_list(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, view_identifier_list733.tree);

            	        // MySQL.g:1059:49: ( RESTRICT_SYMBOL | CASCADE_SYMBOL )?
            	        {
            	            int alt234=2;
            	            switch ( LA(1) )
            	            {
            	                case CASCADE_SYMBOL:
            	                case RESTRICT_SYMBOL:
            	                	{
            	                		alt234=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt234)
            	            {
            	        	case 1:
            	        	    // MySQL.g:
            	        	    {
            	        	        set734=(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, set734))
            	        	            );
            	        	            PERRORRECOVERY=ANTLR3_FALSE;
            	        	            FAILEDFLAG=ANTLR3_FALSE;

            	        	        }
            	        	        else
            	        	        {
            	        	            if (BACKTRACKING>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:1063: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    set735;
    pANTLR3_COMMON_TOKEN    STORAGE_SYMBOL736;
    pANTLR3_COMMON_TOKEN    ENGINE_SYMBOL737;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR738;
    MySQLParser_engine_ref_return engine_ref739;
    #undef	RETURN_TYPE_engine_ref739
    #define	RETURN_TYPE_engine_ref739 MySQLParser_engine_ref_return

    pANTLR3_BASE_TREE set735_tree;
    pANTLR3_BASE_TREE STORAGE_SYMBOL736_tree;
    pANTLR3_BASE_TREE ENGINE_SYMBOL737_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR738_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set735       = NULL;
    STORAGE_SYMBOL736       = NULL;
    ENGINE_SYMBOL737       = NULL;
    EQUAL_OPERATOR738       = NULL;
    engine_ref739.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set735_tree   = NULL;
    STORAGE_SYMBOL736_tree   = NULL;
    ENGINE_SYMBOL737_tree   = NULL;
    EQUAL_OPERATOR738_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1063:26: ( ( WAIT_SYMBOL | NO_WAIT_SYMBOL ) | ( STORAGE_SYMBOL )? ENGINE_SYMBOL ( EQUAL_OPERATOR )? engine_ref )

            ANTLR3_UINT32 alt238;

            alt238=2;

            switch ( LA(1) )
            {
            case NO_WAIT_SYMBOL:
            case WAIT_SYMBOL:
            	{
            		alt238=1;
            	}
                break;
            case ENGINE_SYMBOL:
            case STORAGE_SYMBOL:
            	{
            		alt238=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 238;
                EXCEPTION->state        = 0;


                goto ruledrop_logfile_group_optionEx;

            }

            switch (alt238)
            {
        	case 1:
        	    // MySQL.g:1064:2: ( WAIT_SYMBOL | NO_WAIT_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        set735=(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, set735))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>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:1065:4: ( STORAGE_SYMBOL )? ENGINE_SYMBOL ( EQUAL_OPERATOR )? engine_ref
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:1065:4: ( STORAGE_SYMBOL )?
        	        {
        	            int alt236=2;
        	            switch ( LA(1) )
        	            {
        	                case STORAGE_SYMBOL:
        	                	{
        	                		alt236=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt236)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1065:4: STORAGE_SYMBOL
        	        	    {
        	        	        STORAGE_SYMBOL736 = (pANTLR3_COMMON_TOKEN) MATCHT(STORAGE_SYMBOL, &FOLLOW_STORAGE_SYMBOL_in_drop_logfile_group_option3954);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledrop_logfile_group_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        STORAGE_SYMBOL736_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STORAGE_SYMBOL736));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, STORAGE_SYMBOL736_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        ENGINE_SYMBOL737 = (pANTLR3_COMMON_TOKEN) MATCHT(ENGINE_SYMBOL, &FOLLOW_ENGINE_SYMBOL_in_drop_logfile_group_option3957);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledrop_logfile_group_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ENGINE_SYMBOL737_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ENGINE_SYMBOL737));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ENGINE_SYMBOL737_tree);
        	        }

        	        // MySQL.g:1065:34: ( EQUAL_OPERATOR )?
        	        {
        	            int alt237=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt237=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt237)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1065:34: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR738 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_drop_logfile_group_option3959);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledrop_logfile_group_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR738_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR738));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR738_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_engine_ref_in_drop_logfile_group_option3962);
        	        engine_ref739=engine_ref(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledrop_logfile_group_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, engine_ref739.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:1069:1: rename_table_statement : RENAME_SYMBOL ^ ( TABLE_SYMBOL | TABLES_SYMBOL ) table_ref TO_SYMBOL table_name ( COMMA_SYMBOL table_ref TO_SYMBOL table_name )* ;
 */
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_SYMBOL740;
    pANTLR3_COMMON_TOKEN    set741;
    pANTLR3_COMMON_TOKEN    TO_SYMBOL743;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL745;
    pANTLR3_COMMON_TOKEN    TO_SYMBOL747;
    MySQLParser_table_ref_return table_ref742;
    #undef	RETURN_TYPE_table_ref742
    #define	RETURN_TYPE_table_ref742 MySQLParser_table_ref_return

    MySQLParser_table_name_return table_name744;
    #undef	RETURN_TYPE_table_name744
    #define	RETURN_TYPE_table_name744 MySQLParser_table_name_return

    MySQLParser_table_ref_return table_ref746;
    #undef	RETURN_TYPE_table_ref746
    #define	RETURN_TYPE_table_ref746 MySQLParser_table_ref_return

    MySQLParser_table_name_return table_name748;
    #undef	RETURN_TYPE_table_name748
    #define	RETURN_TYPE_table_name748 MySQLParser_table_name_return

    pANTLR3_BASE_TREE RENAME_SYMBOL740_tree;
    pANTLR3_BASE_TREE set741_tree;
    pANTLR3_BASE_TREE TO_SYMBOL743_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL745_tree;
    pANTLR3_BASE_TREE TO_SYMBOL747_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    RENAME_SYMBOL740       = NULL;
    set741       = NULL;
    TO_SYMBOL743       = NULL;
    COMMA_SYMBOL745       = NULL;
    TO_SYMBOL747       = NULL;
    table_ref742.tree = NULL;

    table_name744.tree = NULL;

    table_ref746.tree = NULL;

    table_name748.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    RENAME_SYMBOL740_tree   = NULL;
    set741_tree   = NULL;
    TO_SYMBOL743_tree   = NULL;
    COMMA_SYMBOL745_tree   = NULL;
    TO_SYMBOL747_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1069:23: ( RENAME_SYMBOL ^ ( TABLE_SYMBOL | TABLES_SYMBOL ) table_ref TO_SYMBOL table_name ( COMMA_SYMBOL table_ref TO_SYMBOL table_name )* )
        // MySQL.g:1070:2: RENAME_SYMBOL ^ ( TABLE_SYMBOL | TABLES_SYMBOL ) table_ref TO_SYMBOL table_name ( COMMA_SYMBOL table_ref TO_SYMBOL table_name )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            RENAME_SYMBOL740 = (pANTLR3_COMMON_TOKEN) MATCHT(RENAME_SYMBOL, &FOLLOW_RENAME_SYMBOL_in_rename_table_statement3972);
            if  (HASEXCEPTION())
            {
                goto rulerename_table_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            RENAME_SYMBOL740_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RENAME_SYMBOL740))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, RENAME_SYMBOL740_tree, root_0));
            }

            set741=(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, set741))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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_statement3985);
            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_statement3987);
            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_name_in_rename_table_statement3989);
            table_name744=table_name(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulerename_table_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_name744.tree);

            // MySQL.g:1071:34: ( COMMA_SYMBOL table_ref TO_SYMBOL table_name )*

            for (;;)
            {
                int alt239=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt239=1;
                	}
                    break;

                }

                switch (alt239)
                {
            	case 1:
            	    // MySQL.g:1071:35: COMMA_SYMBOL table_ref TO_SYMBOL table_name
            	    {
            	        COMMA_SYMBOL745 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_rename_table_statement3992);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerename_table_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL745_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL745));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL745_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_table_ref_in_rename_table_statement3994);
            	        table_ref746=table_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerename_table_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref746.tree);

            	        TO_SYMBOL747 = (pANTLR3_COMMON_TOKEN) MATCHT(TO_SYMBOL, &FOLLOW_TO_SYMBOL_in_rename_table_statement3996);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerename_table_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        TO_SYMBOL747_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TO_SYMBOL747));
            	        ADAPTOR->addChild(ADAPTOR, root_0, TO_SYMBOL747_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_table_name_in_rename_table_statement3998);
            	        table_name748=table_name(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerename_table_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_name748.tree);

            	    }
            	    break;

            	default:
            	    goto loop239;	/* break out of the loop */
            	    break;
                }
            }
            loop239: ; /* 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:1076: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_SYMBOL749;
    pANTLR3_COMMON_TOKEN    TABLE_SYMBOL750;
    MySQLParser_table_ref_return table_ref751;
    #undef	RETURN_TYPE_table_ref751
    #define	RETURN_TYPE_table_ref751 MySQLParser_table_ref_return

    pANTLR3_BASE_TREE TRUNCATE_SYMBOL749_tree;
    pANTLR3_BASE_TREE TABLE_SYMBOL750_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    TRUNCATE_SYMBOL749       = NULL;
    TABLE_SYMBOL750       = NULL;
    table_ref751.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    TRUNCATE_SYMBOL749_tree   = NULL;
    TABLE_SYMBOL750_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1076:25: ( TRUNCATE_SYMBOL ^ ( TABLE_SYMBOL )? table_ref )
        // MySQL.g:1077:2: TRUNCATE_SYMBOL ^ ( TABLE_SYMBOL )? table_ref
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            TRUNCATE_SYMBOL749 = (pANTLR3_COMMON_TOKEN) MATCHT(TRUNCATE_SYMBOL, &FOLLOW_TRUNCATE_SYMBOL_in_truncate_table_statement4012);
            if  (HASEXCEPTION())
            {
                goto ruletruncate_table_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            TRUNCATE_SYMBOL749_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TRUNCATE_SYMBOL749))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, TRUNCATE_SYMBOL749_tree, root_0));
            }

            // MySQL.g:1077:19: ( TABLE_SYMBOL )?
            {
                int alt240=2;
                switch ( LA(1) )
                {
                    case TABLE_SYMBOL:
                    	{
                    		alt240=1;
                    	}
                        break;
                }

                switch (alt240)
                {
            	case 1:
            	    // MySQL.g:1077:19: TABLE_SYMBOL
            	    {
            	        TABLE_SYMBOL750 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLE_SYMBOL, &FOLLOW_TABLE_SYMBOL_in_truncate_table_statement4015);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletruncate_table_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        TABLE_SYMBOL750_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLE_SYMBOL750));
            	        ADAPTOR->addChild(ADAPTOR, root_0, TABLE_SYMBOL750_tree);
            	        }

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_table_ref_in_truncate_table_statement4018);
            table_ref751=table_ref(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruletruncate_table_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref751.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:1082:1: call_statement : CALL_SYMBOL ^ procedure_ref ( optional_expression_list_with_parentheses )? ;
 */
static MySQLParser_call_statement_return
call_statement(pMySQLParser ctx)
{
    MySQLParser_call_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    CALL_SYMBOL752;
    MySQLParser_procedure_ref_return procedure_ref753;
    #undef	RETURN_TYPE_procedure_ref753
    #define	RETURN_TYPE_procedure_ref753 MySQLParser_procedure_ref_return

    MySQLParser_optional_expression_list_with_parentheses_return optional_expression_list_with_parentheses754;
    #undef	RETURN_TYPE_optional_expression_list_with_parentheses754
    #define	RETURN_TYPE_optional_expression_list_with_parentheses754 MySQLParser_optional_expression_list_with_parentheses_return

    pANTLR3_BASE_TREE CALL_SYMBOL752_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CALL_SYMBOL752       = NULL;
    procedure_ref753.tree = NULL;

    optional_expression_list_with_parentheses754.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CALL_SYMBOL752_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1082:15: ( CALL_SYMBOL ^ procedure_ref ( optional_expression_list_with_parentheses )? )
        // MySQL.g:1083:2: CALL_SYMBOL ^ procedure_ref ( optional_expression_list_with_parentheses )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            CALL_SYMBOL752 = (pANTLR3_COMMON_TOKEN) MATCHT(CALL_SYMBOL, &FOLLOW_CALL_SYMBOL_in_call_statement4029);
            if  (HASEXCEPTION())
            {
                goto rulecall_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CALL_SYMBOL752_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CALL_SYMBOL752))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, CALL_SYMBOL752_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_procedure_ref_in_call_statement4032);
            procedure_ref753=procedure_ref(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecall_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, procedure_ref753.tree);

            // MySQL.g:1083:29: ( optional_expression_list_with_parentheses )?
            {
                int alt241=2;
                switch ( LA(1) )
                {
                    case OPEN_PAR_SYMBOL:
                    	{
                    		alt241=1;
                    	}
                        break;
                }

                switch (alt241)
                {
            	case 1:
            	    // MySQL.g:1083:29: optional_expression_list_with_parentheses
            	    {
            	        FOLLOWPUSH(FOLLOW_optional_expression_list_with_parentheses_in_call_statement4034);
            	        optional_expression_list_with_parentheses754=optional_expression_list_with_parentheses(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecall_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, optional_expression_list_with_parentheses754.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:1086: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_SYMBOL755;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL757;
    pANTLR3_COMMON_TOKEN    USING_SYMBOL759;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL768;
    MySQLParser_delete_option_return delete_option756;
    #undef	RETURN_TYPE_delete_option756
    #define	RETURN_TYPE_delete_option756 MySQLParser_delete_option_return

    MySQLParser_table_ref_list_with_wildcard_return table_ref_list_with_wildcard758;
    #undef	RETURN_TYPE_table_ref_list_with_wildcard758
    #define	RETURN_TYPE_table_ref_list_with_wildcard758 MySQLParser_table_ref_list_with_wildcard_return

    MySQLParser_join_table_list_return join_table_list760;
    #undef	RETURN_TYPE_join_table_list760
    #define	RETURN_TYPE_join_table_list760 MySQLParser_join_table_list_return

    MySQLParser_where_clause_return where_clause761;
    #undef	RETURN_TYPE_where_clause761
    #define	RETURN_TYPE_where_clause761 MySQLParser_where_clause_return

    MySQLParser_table_ref_return table_ref762;
    #undef	RETURN_TYPE_table_ref762
    #define	RETURN_TYPE_table_ref762 MySQLParser_table_ref_return

    MySQLParser_partition_delete_return partition_delete763;
    #undef	RETURN_TYPE_partition_delete763
    #define	RETURN_TYPE_partition_delete763 MySQLParser_partition_delete_return

    MySQLParser_where_clause_return where_clause764;
    #undef	RETURN_TYPE_where_clause764
    #define	RETURN_TYPE_where_clause764 MySQLParser_where_clause_return

    MySQLParser_order_by_clause_return order_by_clause765;
    #undef	RETURN_TYPE_order_by_clause765
    #define	RETURN_TYPE_order_by_clause765 MySQLParser_order_by_clause_return

    MySQLParser_simple_limit_clause_return simple_limit_clause766;
    #undef	RETURN_TYPE_simple_limit_clause766
    #define	RETURN_TYPE_simple_limit_clause766 MySQLParser_simple_limit_clause_return

    MySQLParser_table_ref_list_with_wildcard_return table_ref_list_with_wildcard767;
    #undef	RETURN_TYPE_table_ref_list_with_wildcard767
    #define	RETURN_TYPE_table_ref_list_with_wildcard767 MySQLParser_table_ref_list_with_wildcard_return

    MySQLParser_join_table_list_return join_table_list769;
    #undef	RETURN_TYPE_join_table_list769
    #define	RETURN_TYPE_join_table_list769 MySQLParser_join_table_list_return

    MySQLParser_where_clause_return where_clause770;
    #undef	RETURN_TYPE_where_clause770
    #define	RETURN_TYPE_where_clause770 MySQLParser_where_clause_return

    pANTLR3_BASE_TREE DELETE_SYMBOL755_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL757_tree;
    pANTLR3_BASE_TREE USING_SYMBOL759_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL768_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DELETE_SYMBOL755       = NULL;
    FROM_SYMBOL757       = NULL;
    USING_SYMBOL759       = NULL;
    FROM_SYMBOL768       = NULL;
    delete_option756.tree = NULL;

    table_ref_list_with_wildcard758.tree = NULL;

    join_table_list760.tree = NULL;

    where_clause761.tree = NULL;

    table_ref762.tree = NULL;

    partition_delete763.tree = NULL;

    where_clause764.tree = NULL;

    order_by_clause765.tree = NULL;

    simple_limit_clause766.tree = NULL;

    table_ref_list_with_wildcard767.tree = NULL;

    join_table_list769.tree = NULL;

    where_clause770.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DELETE_SYMBOL755_tree   = NULL;
    FROM_SYMBOL757_tree   = NULL;
    USING_SYMBOL759_tree   = NULL;
    FROM_SYMBOL768_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1086: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:1087: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_SYMBOL755 = (pANTLR3_COMMON_TOKEN) MATCHT(DELETE_SYMBOL, &FOLLOW_DELETE_SYMBOL_in_delete_statement4044);
            if  (HASEXCEPTION())
            {
                goto ruledelete_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            DELETE_SYMBOL755_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DELETE_SYMBOL755))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, DELETE_SYMBOL755_tree, root_0));
            }

            // MySQL.g:1087: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 == IGNORE_SYMBOL || LA242_5 == LOW_PRIORITY_SYMBOL || LA242_5 == BACK_TICK_QUOTED_ID || LA242_5 == DOUBLE_QUOTED_TEXT || LA242_5 == IDENTIFIER))
                		    {
                		        alt242=1;
                		    }

                		}
                	}
                    break;
                case IGNORE_SYMBOL:
                case LOW_PRIORITY_SYMBOL:
                	{
                		alt242=1;
                	}
                    break;

                }

                switch (alt242)
                {
            	case 1:
            	    // MySQL.g:1087:47: delete_option
            	    {
            	        FOLLOWPUSH(FOLLOW_delete_option_in_delete_statement4061);
            	        delete_option756=delete_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledelete_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, delete_option756.tree);

            	    }
            	    break;

            	default:
            	    goto loop242;	/* break out of the loop */
            	    break;
                }
            }
            loop242: ; /* Jump out to here if this rule does not match */


            // MySQL.g:1088: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:1089: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_SYMBOL757 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_delete_statement4072);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledelete_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        FROM_SYMBOL757_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL757));
            	        ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL757_tree);
            	        }

            	        // MySQL.g:1091: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 USING_SYMBOL:
            	                    		        case COMMA_SYMBOL:
            	                    		        case DOT_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 USING_SYMBOL:
            	                    		        case COMMA_SYMBOL:
            	                    		        case DOT_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 USING_SYMBOL:
            	                    		        case COMMA_SYMBOL:
            	                    		        case DOT_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 USING_SYMBOL:
            	                    		        case COMMA_SYMBOL:
            	                    		        case DOT_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 USING_SYMBOL:
            	                    		        case COMMA_SYMBOL:
            	                    		        case DOT_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 USING_SYMBOL:
            	                    case COMMA_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 USING_SYMBOL:
            	                    		        case COMMA_SYMBOL:
            	                    		        case DOT_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 USING_SYMBOL:
            	                    		        case COMMA_SYMBOL:
            	                    		        case DOT_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 USING_SYMBOL:
            	                    		        case COMMA_SYMBOL:
            	                    		        case DOT_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 USING_SYMBOL:
            	                    		        case COMMA_SYMBOL:
            	                    		        case DOT_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 USING_SYMBOL:
            	                    		        case COMMA_SYMBOL:
            	                    		        case DOT_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 USING_SYMBOL:
            	                    case COMMA_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 USING_SYMBOL:
            	                    		        case COMMA_SYMBOL:
            	                    		        case DOT_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 USING_SYMBOL:
            	                    		        case COMMA_SYMBOL:
            	                    		        case DOT_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 USING_SYMBOL:
            	                    		        case COMMA_SYMBOL:
            	                    		        case DOT_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 USING_SYMBOL:
            	                    		        case COMMA_SYMBOL:
            	                    		        case DOT_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 USING_SYMBOL:
            	                    		        case COMMA_SYMBOL:
            	                    		        case DOT_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 USING_SYMBOL:
            	                    case COMMA_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 USING_SYMBOL:
            	                    		        case COMMA_SYMBOL:
            	                    		        case DOT_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 USING_SYMBOL:
            	                    		        case COMMA_SYMBOL:
            	                    		        case DOT_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 USING_SYMBOL:
            	                    		        case COMMA_SYMBOL:
            	                    		        case DOT_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 USING_SYMBOL:
            	                    		        case COMMA_SYMBOL:
            	                    		        case DOT_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 USING_SYMBOL:
            	                    		        case COMMA_SYMBOL:
            	                    		        case DOT_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 USING_SYMBOL:
            	                    case COMMA_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 USING_SYMBOL:
            	                    		        case COMMA_SYMBOL:
            	                    		        case DOT_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 USING_SYMBOL:
            	                    		        case COMMA_SYMBOL:
            	                    		        case DOT_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 USING_SYMBOL:
            	                    		        case COMMA_SYMBOL:
            	                    		        case DOT_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 USING_SYMBOL:
            	                    		        case COMMA_SYMBOL:
            	                    		        case DOT_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 USING_SYMBOL:
            	                    		        case COMMA_SYMBOL:
            	                    		        case DOT_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 USING_SYMBOL:
            	                    case COMMA_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:1092:7: table_ref_list_with_wildcard USING_SYMBOL join_table_list ( where_clause )?
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_table_ref_list_with_wildcard_in_delete_statement4103);
            	        	        table_ref_list_with_wildcard758=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_wildcard758.tree);

            	        	        USING_SYMBOL759 = (pANTLR3_COMMON_TOKEN) MATCHT(USING_SYMBOL, &FOLLOW_USING_SYMBOL_in_delete_statement4105);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledelete_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        USING_SYMBOL759_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USING_SYMBOL759));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, USING_SYMBOL759_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_join_table_list_in_delete_statement4107);
            	        	        join_table_list760=join_table_list(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledelete_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, join_table_list760.tree);

            	        	        // MySQL.g:1092:65: ( where_clause )?
            	        	        {
            	        	            int alt243=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case WHERE_SYMBOL:
            	        	                	{
            	        	                		alt243=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt243)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:1092:65: where_clause
            	        	        	    {
            	        	        	        FOLLOWPUSH(FOLLOW_where_clause_in_delete_statement4109);
            	        	        	        where_clause761=where_clause(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto ruledelete_statementEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, where_clause761.tree);

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:1093:8: table_ref ( partition_delete )? ( where_clause )? ( order_by_clause )? ( simple_limit_clause )?
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_table_ref_in_delete_statement4120);
            	        	        table_ref762=table_ref(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledelete_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref762.tree);

            	        	        // MySQL.g:1093: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:1093:18: partition_delete
            	        	        	    {
            	        	        	        FOLLOWPUSH(FOLLOW_partition_delete_in_delete_statement4122);
            	        	        	        partition_delete763=partition_delete(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto ruledelete_statementEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, partition_delete763.tree);

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	        // MySQL.g:1093:36: ( where_clause )?
            	        	        {
            	        	            int alt245=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case WHERE_SYMBOL:
            	        	                	{
            	        	                		alt245=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt245)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:1093:36: where_clause
            	        	        	    {
            	        	        	        FOLLOWPUSH(FOLLOW_where_clause_in_delete_statement4125);
            	        	        	        where_clause764=where_clause(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto ruledelete_statementEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, where_clause764.tree);

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	        // MySQL.g:1093:50: ( order_by_clause )?
            	        	        {
            	        	            int alt246=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case ORDER_SYMBOL:
            	        	                	{
            	        	                		alt246=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt246)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:1093:50: order_by_clause
            	        	        	    {
            	        	        	        FOLLOWPUSH(FOLLOW_order_by_clause_in_delete_statement4128);
            	        	        	        order_by_clause765=order_by_clause(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto ruledelete_statementEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, order_by_clause765.tree);

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	        // MySQL.g:1093:67: ( simple_limit_clause )?
            	        	        {
            	        	            int alt247=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case LIMIT_SYMBOL:
            	        	                	{
            	        	                		alt247=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt247)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:1093:67: simple_limit_clause
            	        	        	    {
            	        	        	        FOLLOWPUSH(FOLLOW_simple_limit_clause_in_delete_statement4131);
            	        	        	        simple_limit_clause766=simple_limit_clause(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto ruledelete_statementEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, simple_limit_clause766.tree);

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1095:7: table_ref_list_with_wildcard FROM_SYMBOL join_table_list ( where_clause )?
            	    {
            	        FOLLOWPUSH(FOLLOW_table_ref_list_with_wildcard_in_delete_statement4147);
            	        table_ref_list_with_wildcard767=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_wildcard767.tree);

            	        FROM_SYMBOL768 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_delete_statement4149);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledelete_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        FROM_SYMBOL768_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL768));
            	        ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL768_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_join_table_list_in_delete_statement4151);
            	        join_table_list769=join_table_list(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledelete_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, join_table_list769.tree);

            	        // MySQL.g:1095:64: ( where_clause )?
            	        {
            	            int alt249=2;
            	            switch ( LA(1) )
            	            {
            	                case WHERE_SYMBOL:
            	                	{
            	                		alt249=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt249)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1095:64: where_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_where_clause_in_delete_statement4153);
            	        	        where_clause770=where_clause(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledelete_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, where_clause770.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:1099: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_SYMBOL771;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL772;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL774;
    MySQLParser_identifier_list_return identifier_list773;
    #undef	RETURN_TYPE_identifier_list773
    #define	RETURN_TYPE_identifier_list773 MySQLParser_identifier_list_return

    pANTLR3_BASE_TREE PARTITION_SYMBOL771_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL772_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL774_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    PARTITION_SYMBOL771       = NULL;
    OPEN_PAR_SYMBOL772       = NULL;
    CLOSE_PAR_SYMBOL774       = NULL;
    identifier_list773.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    PARTITION_SYMBOL771_tree   = NULL;
    OPEN_PAR_SYMBOL772_tree   = NULL;
    CLOSE_PAR_SYMBOL774_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1099:17: ({...}? => PARTITION_SYMBOL OPEN_PAR_SYMBOL identifier_list CLOSE_PAR_SYMBOL )
        // MySQL.g:1100: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_SYMBOL771 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITION_SYMBOL, &FOLLOW_PARTITION_SYMBOL_in_partition_delete4172);
            if  (HASEXCEPTION())
            {
                goto rulepartition_deleteEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            PARTITION_SYMBOL771_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARTITION_SYMBOL771));
            ADAPTOR->addChild(ADAPTOR, root_0, PARTITION_SYMBOL771_tree);
            }

            OPEN_PAR_SYMBOL772 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_partition_delete4174);
            if  (HASEXCEPTION())
            {
                goto rulepartition_deleteEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL772_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL772));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL772_tree);
            }

            FOLLOWPUSH(FOLLOW_identifier_list_in_partition_delete4176);
            identifier_list773=identifier_list(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulepartition_deleteEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier_list773.tree);

            CLOSE_PAR_SYMBOL774 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_partition_delete4178);
            if  (HASEXCEPTION())
            {
                goto rulepartition_deleteEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL774_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL774));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL774_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:1103: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    set775;

    pANTLR3_BASE_TREE set775_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set775       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set775_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1103:14: ( LOW_PRIORITY_SYMBOL | QUICK_SYMBOL | IGNORE_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set775=(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, set775))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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:1107: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_SYMBOL776;
    MySQLParser_expression_list_return expression_list777;
    #undef	RETURN_TYPE_expression_list777
    #define	RETURN_TYPE_expression_list777 MySQLParser_expression_list_return

    MySQLParser_select_item_list_return select_item_list778;
    #undef	RETURN_TYPE_select_item_list778
    #define	RETURN_TYPE_select_item_list778 MySQLParser_select_item_list_return

    pANTLR3_BASE_TREE DO_SYMBOL776_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DO_SYMBOL776       = NULL;
    expression_list777.tree = NULL;

    select_item_list778.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DO_SYMBOL776_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1107:13: ( DO_SYMBOL ^ ({...}? => expression_list |{...}? => select_item_list ) )
        // MySQL.g:1108:2: DO_SYMBOL ^ ({...}? => expression_list |{...}? => select_item_list )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            DO_SYMBOL776 = (pANTLR3_COMMON_TOKEN) MATCHT(DO_SYMBOL, &FOLLOW_DO_SYMBOL_in_do_statement4204);
            if  (HASEXCEPTION())
            {
                goto ruledo_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            DO_SYMBOL776_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DO_SYMBOL776))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, DO_SYMBOL776_tree, root_0));
            }

            // MySQL.g:1109: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 == NOT2_SYMBOL || LA251_1 == LOGICAL_NOT_OPERATOR))
                            {
                                {
                                    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 == IDENTIFIER))
                            {
                                {
                                    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 == BACK_TICK_QUOTED_ID))
                            {
                                {
                                    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 == CHAR_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 == CURRENT_USER_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 == DAY_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 == HOUR_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 == INSERT_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 == LEFT_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 == MINUTE_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 == MONTH_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 == RIGHT_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 == SECOND_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 == TRIM_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 == USER_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 == VALUES_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 == YEAR_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 == ADDDATE_SYMBOL || LA251_1 == SUBDATE_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 == CURDATE_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 == CURTIME_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 == DATE_ADD_SYMBOL || LA251_1 == DATE_SUB_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 == EXTRACT_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 == GET_FORMAT_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 == NOW_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 == POSITION_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 == SUBSTRING_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 == SYSDATE_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 >= TIMESTAMP_ADD_SYMBOL) && (LA251_1 <= TIMESTAMP_DIFF_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_DATE_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 == UTC_TIME_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 == UTC_TIMESTAMP_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 == ASCII_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 == CHARSET_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 == COALESCE_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 == COLLATION_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 == DATABASE_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 == IF_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 == FORMAT_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 == MICROSECOND_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 == MOD_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 == OLD_PASSWORD_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 == PASSWORD_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 == QUARTER_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 == REPEAT_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 == REPLACE_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 == REVERSE_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 == ROW_COUNT_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 == TRUNCATE_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 == WEEK_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 == WEIGHT_STRING_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 == GEOMETRYCOLLECTION_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 == LINESTRING_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 == MULTILINESTRING_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 == MULTIPOINT_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 == MULTIPOLYGON_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 == POINT_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 == POLYGON_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 == CONTAINS_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 == AVG_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_AND_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 == BIT_OR_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 == BIT_XOR_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 == COUNT_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 == MIN_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 == MAX_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 == STD_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 == VARIANCE_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 == STDDEV_SAMP_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 == VAR_SAMP_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 == SUM_SYMBOL))
                            {
                                {
                                    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 == GROUP_CONCAT_SYMBOL))
                            {
                                {
                                    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 == DOT_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 == ROW_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 == 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_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 == NOT2_SYMBOL || LA251_2 == LOGICAL_NOT_OPERATOR))
                            {
                                {
                                    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 == IDENTIFIER))
                            {
                                {
                                    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 == BACK_TICK_QUOTED_ID))
                            {
                                {
                                    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 == CHAR_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 == CURRENT_USER_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 == DAY_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 == HOUR_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 == INSERT_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 == LEFT_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 == MINUTE_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 == MONTH_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 == RIGHT_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 == SECOND_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 == TRIM_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 == USER_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 == VALUES_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 == YEAR_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 == ADDDATE_SYMBOL || LA251_2 == SUBDATE_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 == CURDATE_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 == CURTIME_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 == DATE_ADD_SYMBOL || LA251_2 == DATE_SUB_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 == EXTRACT_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 == GET_FORMAT_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 == NOW_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 == POSITION_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 == SUBSTRING_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 == SYSDATE_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 >= TIMESTAMP_ADD_SYMBOL) && (LA251_2 <= TIMESTAMP_DIFF_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_DATE_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 == UTC_TIME_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 == UTC_TIMESTAMP_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 == ASCII_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 == CHARSET_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 == COALESCE_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 == COLLATION_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 == DATABASE_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 == IF_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 == FORMAT_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 == MICROSECOND_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 == MOD_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 == OLD_PASSWORD_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 == PASSWORD_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 == QUARTER_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 == REPEAT_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 == REPLACE_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 == REVERSE_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 == ROW_COUNT_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 == TRUNCATE_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 == WEEK_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 == WEIGHT_STRING_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 == GEOMETRYCOLLECTION_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 == LINESTRING_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 == MULTILINESTRING_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 == MULTIPOINT_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 == MULTIPOLYGON_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 == POINT_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 == POLYGON_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 == CONTAINS_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 == AVG_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_AND_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 == BIT_OR_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 == BIT_XOR_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 == COUNT_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 == MIN_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 == MAX_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 == STD_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 == VARIANCE_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 == STDDEV_SAMP_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 == VAR_SAMP_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 == SUM_SYMBOL))
                            {
                                {
                                    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 == GROUP_CONCAT_SYMBOL))
                            {
                                {
                                    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 == DOT_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 == ROW_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 == 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_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 == NOT2_SYMBOL || LA251_0 == LOGICAL_NOT_OPERATOR))
                    {
                        {
                            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 == IDENTIFIER))
                            {
                                {
                                    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 == BACK_TICK_QUOTED_ID))
                            {
                                {
                                    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 == CHAR_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 == CURRENT_USER_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 == DAY_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 == HOUR_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 == INSERT_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 == LEFT_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 == MINUTE_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 == MONTH_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 == RIGHT_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 == SECOND_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 == TRIM_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 == USER_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 == VALUES_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 == YEAR_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 == ADDDATE_SYMBOL || LA251_3 == SUBDATE_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 == CURDATE_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 == CURTIME_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 == DATE_ADD_SYMBOL || LA251_3 == DATE_SUB_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 == EXTRACT_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 == GET_FORMAT_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 == NOW_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 == POSITION_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 == SUBSTRING_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 == SYSDATE_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 >= TIMESTAMP_ADD_SYMBOL) && (LA251_3 <= TIMESTAMP_DIFF_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_DATE_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 == UTC_TIME_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 == UTC_TIMESTAMP_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 == ASCII_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 == CHARSET_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 == COALESCE_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 == COLLATION_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 == DATABASE_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 == IF_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 == FORMAT_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 == MICROSECOND_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 == MOD_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 == OLD_PASSWORD_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 == PASSWORD_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 == QUARTER_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 == REPEAT_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 == REPLACE_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 == REVERSE_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 == ROW_COUNT_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 == TRUNCATE_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 == WEEK_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 == WEIGHT_STRING_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 == GEOMETRYCOLLECTION_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 == LINESTRING_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 == MULTILINESTRING_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 == MULTIPOINT_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 == MULTIPOLYGON_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 == POINT_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 == POLYGON_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 == CONTAINS_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 == AVG_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_AND_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 == BIT_OR_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 == BIT_XOR_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 == COUNT_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 == MIN_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 == MAX_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 == STD_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 == VARIANCE_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 == STDDEV_SAMP_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 == VAR_SAMP_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 == SUM_SYMBOL))
                            {
                                {
                                    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 == GROUP_CONCAT_SYMBOL))
                            {
                                {
                                    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 == DOT_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 == ROW_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 == 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_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 == NOT2_SYMBOL || LA251_4 == LOGICAL_NOT_OPERATOR))
                            {
                                {
                                    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 == IDENTIFIER))
                            {
                                {
                                    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 == BACK_TICK_QUOTED_ID))
                            {
                                {
                                    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 == CHAR_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 == CURRENT_USER_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 == DAY_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 == HOUR_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 == INSERT_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 == LEFT_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 == MINUTE_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 == MONTH_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 == RIGHT_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 == SECOND_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 == TRIM_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 == USER_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 == VALUES_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 == YEAR_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 == ADDDATE_SYMBOL || LA251_4 == SUBDATE_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 == CURDATE_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 == CURTIME_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 == DATE_ADD_SYMBOL || LA251_4 == DATE_SUB_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 == EXTRACT_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 == GET_FORMAT_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 == NOW_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 == POSITION_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 == SUBSTRING_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 == SYSDATE_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 >= TIMESTAMP_ADD_SYMBOL) && (LA251_4 <= TIMESTAMP_DIFF_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_DATE_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 == UTC_TIME_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 == UTC_TIMESTAMP_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 == ASCII_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 == CHARSET_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 == COALESCE_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 == COLLATION_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 == DATABASE_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 == IF_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 == FORMAT_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 == MICROSECOND_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 == MOD_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 == OLD_PASSWORD_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 == PASSWORD_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 == QUARTER_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 == REPEAT_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 == REPLACE_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 == REVERSE_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 == ROW_COUNT_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 == TRUNCATE_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 == WEEK_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 == WEIGHT_STRING_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 == GEOMETRYCOLLECTION_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 == LINESTRING_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 == MULTILINESTRING_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 == MULTIPOINT_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 == MULTIPOLYGON_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 == POINT_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 == POLYGON_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 == CONTAINS_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 == AVG_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_AND_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 == BIT_OR_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 == BIT_XOR_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 == COUNT_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 == MIN_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 == MAX_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 == STD_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 == VARIANCE_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 == STDDEV_SAMP_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 == VAR_SAMP_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 == SUM_SYMBOL))
                            {
                                {
                                    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 == GROUP_CONCAT_SYMBOL))
                            {
                                {
                                    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 == DOT_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 == ROW_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 == 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_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 == IDENTIFIER))
                    {
                        {
                            int LA251_17 = 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        = 17;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == BACK_TICK_QUOTED_ID))
                    {
                        {
                            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 == CHAR_SYMBOL))
                    {
                        {
                            int LA251_19 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_19 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_919 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 919;


                                        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        = 19;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == CURRENT_USER_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 == DAY_SYMBOL))
                    {
                        {
                            int LA251_21 = 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        = 21;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == HOUR_SYMBOL))
                    {
                        {
                            int LA251_22 = 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        = 22;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == INSERT_SYMBOL))
                    {
                        {
                            int LA251_23 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_23 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_1016 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 1016;


                                        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        = 23;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == LEFT_SYMBOL))
                    {
                        {
                            int LA251_24 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_24 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_1017 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 1017;


                                        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        = 24;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == MINUTE_SYMBOL))
                    {
                        {
                            int LA251_25 = 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        = 25;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == MONTH_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 == RIGHT_SYMBOL))
                    {
                        {
                            int LA251_27 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_27 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_1084 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 1084;


                                        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 == SECOND_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 == TRIM_SYMBOL))
                    {
                        {
                            int LA251_29 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_29 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_1118 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 1118;


                                        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 == USER_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 == VALUES_SYMBOL))
                    {
                        {
                            int LA251_31 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_31 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_1152 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 1152;


                                        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        = 31;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == YEAR_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 == ADDDATE_SYMBOL || LA251_0 == SUBDATE_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 == CURDATE_SYMBOL))
                    {
                        {
                            int LA251_34 = 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        = 34;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == CURTIME_SYMBOL))
                    {
                        {
                            int LA251_35 = 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        = 35;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == DATE_ADD_SYMBOL || LA251_0 == DATE_SUB_SYMBOL))
                    {
                        {
                            int LA251_36 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_36 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_1279 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 1279;


                                        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        = 36;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == EXTRACT_SYMBOL))
                    {
                        {
                            int LA251_37 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_37 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_1280 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 1280;


                                        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        = 37;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == GET_FORMAT_SYMBOL))
                    {
                        {
                            int LA251_38 = 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        = 38;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == NOW_SYMBOL))
                    {
                        {
                            int LA251_39 = 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        = 39;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == POSITION_SYMBOL))
                    {
                        {
                            int LA251_40 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_40 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_1344 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 1344;


                                        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        = 40;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == SUBSTRING_SYMBOL))
                    {
                        {
                            int LA251_41 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_41 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_1345 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 1345;


                                        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        = 41;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == SYSDATE_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 >= TIMESTAMP_ADD_SYMBOL) && (LA251_0 <= TIMESTAMP_DIFF_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_DATE_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 == UTC_TIME_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 == UTC_TIMESTAMP_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 == ASCII_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 == CHARSET_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 == COALESCE_SYMBOL))
                    {
                        {
                            int LA251_49 = 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        = 49;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == COLLATION_SYMBOL))
                    {
                        {
                            int LA251_50 = 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        = 50;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == DATABASE_SYMBOL))
                    {
                        {
                            int LA251_51 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_51 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_1631 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 1631;


                                        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        = 51;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == IF_SYMBOL))
                    {
                        {
                            int LA251_52 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_52 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_1632 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 1632;


                                        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        = 52;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == FORMAT_SYMBOL))
                    {
                        {
                            int LA251_53 = 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        = 53;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == MICROSECOND_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 == MOD_SYMBOL))
                    {
                        {
                            int LA251_55 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_55 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_1699 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 1699;


                                        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        = 55;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == OLD_PASSWORD_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 == PASSWORD_SYMBOL))
                    {
                        {
                            int LA251_57 = 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        = 57;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == QUARTER_SYMBOL))
                    {
                        {
                            int LA251_58 = 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        = 58;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == REPEAT_SYMBOL))
                    {
                        {
                            int LA251_59 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_59 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_1799 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 1799;


                                        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        = 59;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == REPLACE_SYMBOL))
                    {
                        {
                            int LA251_60 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_60 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_1800 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 1800;


                                        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        = 60;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == REVERSE_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 == ROW_COUNT_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 == TRUNCATE_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 == WEEK_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 == WEIGHT_STRING_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 == GEOMETRYCOLLECTION_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 == LINESTRING_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 == MULTILINESTRING_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 == MULTIPOINT_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 == MULTIPOLYGON_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 == POINT_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 == POLYGON_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 == CONTAINS_SYMBOL))
                    {
                        {
                            int LA251_73 = 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        = 73;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == AVG_SYMBOL))
                    {
                        {
                            int LA251_74 = 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        = 74;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == BIT_AND_SYMBOL))
                    {
                        {
                            int LA251_75 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_75 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_2263 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2263;


                                        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 == BIT_OR_SYMBOL))
                    {
                        {
                            int LA251_76 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_76 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_2264 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2264;


                                        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 == BIT_XOR_SYMBOL))
                    {
                        {
                            int LA251_77 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_77 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_2265 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2265;


                                        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 == COUNT_SYMBOL))
                    {
                        {
                            int LA251_78 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_78 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_2266 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2266;


                                        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 == MIN_SYMBOL))
                    {
                        {
                            int LA251_79 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_79 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_2267 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2267;


                                        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 == MAX_SYMBOL))
                    {
                        {
                            int LA251_80 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_80 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_2268 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2268;


                                        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 == STD_SYMBOL))
                    {
                        {
                            int LA251_81 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_81 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_2269 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2269;


                                        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 == VARIANCE_SYMBOL))
                    {
                        {
                            int LA251_82 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_82 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_2270 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2270;


                                        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 == STDDEV_SAMP_SYMBOL))
                    {
                        {
                            int LA251_83 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_83 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_2271 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2271;


                                        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 == VAR_SAMP_SYMBOL))
                    {
                        {
                            int LA251_84 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_84 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_2272 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2272;


                                        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 == SUM_SYMBOL))
                    {
                        {
                            int LA251_85 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_85 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_2273 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2273;


                                        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        = 85;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == GROUP_CONCAT_SYMBOL))
                    {
                        {
                            int LA251_86 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_86 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_2274 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2274;


                                        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        = 86;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == DOT_SYMBOL))
                    {
                        {
                            int LA251_87 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_87 == IDENTIFIER))
                            {
                                {
                                    int LA251_2275 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2275;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_87 == BACK_TICK_QUOTED_ID))
                            {
                                {
                                    int LA251_2276 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2276;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_87 == DOUBLE_QUOTED_TEXT))
                            {
                                {
                                    int LA251_2277 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2277;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (((LA251_87 >= ACTION_SYMBOL) && (LA251_87 <= SHARE_SYMBOL)) || ((LA251_87 >= SLOW_SYMBOL) && (LA251_87 <= YEAR_SYMBOL))))
                            {
                                {
                                    int LA251_2278 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2278;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (((LA251_87 >= ACCOUNT_SYMBOL) && (LA251_87 <= XA_SYMBOL)) || LA251_87 == SHUTDOWN_SYMBOL))
                            {
                                {
                                    int LA251_2279 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2279;


                                        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        = 87;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == ROW_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 == 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_89 = 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        = 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_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_91 == IDENTIFIER))
                            {
                                {
                                    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_91 == BACK_TICK_QUOTED_ID))
                            {
                                {
                                    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 ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_91 == DOUBLE_QUOTED_TEXT))
                            {
                                {
                                    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 ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (((LA251_91 >= ACTION_SYMBOL) && (LA251_91 <= SHARE_SYMBOL)) || ((LA251_91 >= SLOW_SYMBOL) && (LA251_91 <= YEAR_SYMBOL))))
                            {
                                {
                                    int LA251_2378 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        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_91 >= ACCOUNT_SYMBOL) && (LA251_91 <= XA_SYMBOL)) || LA251_91 == SHUTDOWN_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 (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_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_93 == IDENTIFIER))
                            {
                                {
                                    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_93 == BACK_TICK_QUOTED_ID))
                            {
                                {
                                    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_93 == DOUBLE_QUOTED_TEXT))
                            {
                                {
                                    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_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_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_93 >= ACCOUNT_SYMBOL) && (LA251_93 <= XA_SYMBOL)) || LA251_93 == SHUTDOWN_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_93 == DEFAULT_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 (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_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 (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_2418 = 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        = 2418;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == OPEN_PAR_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 == NOT_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 == BITWISE_NOT_OPERATOR || LA251_95 == MINUS_OPERATOR || LA251_95 == PLUS_OPERATOR))
                            {
                                {
                                    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 == NOT2_SYMBOL || LA251_95 == LOGICAL_NOT_OPERATOR))
                            {
                                {
                                    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 == INTERVAL_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 == NCHAR_TEXT))
                            {
                                {
                                    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 == UNDERSCORE_CHARSET))
                            {
                                {
                                    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 == SINGLE_QUOTED_TEXT))
                            {
                                {
                                    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 == DOUBLE_QUOTED_TEXT))
                            {
                                {
                                    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 == DECIMAL_NUMBER || LA251_95 == FLOAT_NUMBER || LA251_95 == INT_NUMBER || LA251_95 == LONG_NUMBER || LA251_95 == ULONGLONG_NUMBER))
                            {
                                {
                                    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 == DATE_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 == TIME_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 == TIMESTAMP_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 >= NULL2_SYMBOL) && (LA251_95 <= NULL_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 == FALSE_SYMBOL || LA251_95 == TRUE_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 == HEX_NUMBER))
                            {
                                {
                                    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 == BIN_NUMBER))
                            {
                                {
                                    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 == IDENTIFIER))
                            {
                                {
                                    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 == BACK_TICK_QUOTED_ID))
                            {
                                {
                                    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 == CHAR_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 == CURRENT_USER_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 == DAY_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 == HOUR_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 == INSERT_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 == LEFT_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 == MINUTE_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 == MONTH_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 == RIGHT_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 == SECOND_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 == TRIM_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 == USER_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 == VALUES_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 == YEAR_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 == ADDDATE_SYMBOL || LA251_95 == SUBDATE_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 == CURDATE_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 == CURTIME_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 == DATE_ADD_SYMBOL || LA251_95 == DATE_SUB_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 == EXTRACT_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 == GET_FORMAT_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 == NOW_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 == POSITION_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 == SUBSTRING_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 == SYSDATE_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 >= TIMESTAMP_ADD_SYMBOL) && (LA251_95 <= TIMESTAMP_DIFF_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 == UTC_DATE_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 == UTC_TIME_SYMBOL))
                            {
                                {
                                    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 == UTC_TIMESTAMP_SYMBOL))
                            {
                                {
                                    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 == ASCII_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 == CHARSET_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 == COALESCE_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 == COLLATION_SYMBOL))
                            {
                                {
                                    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 == DATABASE_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 == IF_SYMBOL))
                            {
                                {
                                    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 == FORMAT_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 == MICROSECOND_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 == MOD_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 == OLD_PASSWORD_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 == PASSWORD_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 == QUARTER_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 == REPEAT_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 == REPLACE_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 == REVERSE_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 ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == ROW_COUNT_SYMBOL))
                            {
                                {
                                    int LA251_2481 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2481;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == TRUNCATE_SYMBOL))
                            {
                                {
                                    int LA251_2482 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2482;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == WEEK_SYMBOL))
                            {
                                {
                                    int LA251_2483 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2483;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == WEIGHT_STRING_SYMBOL))
                            {
                                {
                                    int LA251_2484 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2484;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == GEOMETRYCOLLECTION_SYMBOL))
                            {
                                {
                                    int LA251_2485 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2485;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == LINESTRING_SYMBOL))
                            {
                                {
                                    int LA251_2486 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2486;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == MULTILINESTRING_SYMBOL))
                            {
                                {
                                    int LA251_2487 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2487;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == MULTIPOINT_SYMBOL))
                            {
                                {
                                    int LA251_2488 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2488;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == MULTIPOLYGON_SYMBOL))
                            {
                                {
                                    int LA251_2489 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2489;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == POINT_SYMBOL))
                            {
                                {
                                    int LA251_2490 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2490;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == POLYGON_SYMBOL))
                            {
                                {
                                    int LA251_2491 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2491;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == CONTAINS_SYMBOL))
                            {
                                {
                                    int LA251_2492 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2492;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == AVG_SYMBOL))
                            {
                                {
                                    int LA251_2493 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2493;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == BIT_AND_SYMBOL))
                            {
                                {
                                    int LA251_2494 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2494;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == BIT_OR_SYMBOL))
                            {
                                {
                                    int LA251_2495 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2495;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == BIT_XOR_SYMBOL))
                            {
                                {
                                    int LA251_2496 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2496;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == COUNT_SYMBOL))
                            {
                                {
                                    int LA251_2497 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2497;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == MIN_SYMBOL))
                            {
                                {
                                    int LA251_2498 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2498;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == MAX_SYMBOL))
                            {
                                {
                                    int LA251_2499 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2499;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == STD_SYMBOL))
                            {
                                {
                                    int LA251_2500 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2500;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == VARIANCE_SYMBOL))
                            {
                                {
                                    int LA251_2501 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2501;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == STDDEV_SAMP_SYMBOL))
                            {
                                {
                                    int LA251_2502 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2502;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == VAR_SAMP_SYMBOL))
                            {
                                {
                                    int LA251_2503 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2503;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == SUM_SYMBOL))
                            {
                                {
                                    int LA251_2504 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2504;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == GROUP_CONCAT_SYMBOL))
                            {
                                {
                                    int LA251_2505 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2505;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == DOT_SYMBOL))
                            {
                                {
                                    int LA251_2506 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2506;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == ROW_SYMBOL))
                            {
                                {
                                    int LA251_2507 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2507;


                                        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_2508 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2508;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == PARAM_MARKER))
                            {
                                {
                                    int LA251_2509 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2509;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == AT_SIGN_SYMBOL))
                            {
                                {
                                    int LA251_2510 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2510;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == AT_TEXT_SUFFIX))
                            {
                                {
                                    int LA251_2511 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2511;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == AT_AT_SIGN_SYMBOL))
                            {
                                {
                                    int LA251_2512 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2512;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == EXISTS_SYMBOL))
                            {
                                {
                                    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_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_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_95 == OPEN_CURLY_SYMBOL))
                            {
                                {
                                    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_95 == MATCH_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_95 == CASE_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 ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == BINARY_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 ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == CAST_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_95 == CONVERT_SYMBOL))
                            {
                                {
                                    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 (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_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_97 == BACK_TICK_QUOTED_ID))
                            {
                                {
                                    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_97 == DOUBLE_QUOTED_TEXT))
                            {
                                {
                                    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_97 >= ACTION_SYMBOL) && (LA251_97 <= SHARE_SYMBOL)) || ((LA251_97 >= SLOW_SYMBOL) && (LA251_97 <= YEAR_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_97 >= ACCOUNT_SYMBOL) && (LA251_97 <= XA_SYMBOL)) || LA251_97 == SHUTDOWN_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 (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_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 (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_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 == BITWISE_NOT_OPERATOR || LA251_99 == MINUS_OPERATOR || LA251_99 == PLUS_OPERATOR))
                            {
                                {
                                    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 == NOT2_SYMBOL || LA251_99 == LOGICAL_NOT_OPERATOR))
                            {
                                {
                                    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 == INTERVAL_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 == NCHAR_TEXT))
                            {
                                {
                                    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 == UNDERSCORE_CHARSET))
                            {
                                {
                                    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 == SINGLE_QUOTED_TEXT))
                            {
                                {
                                    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 == DOUBLE_QUOTED_TEXT))
                            {
                                {
                                    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 == DECIMAL_NUMBER || LA251_99 == FLOAT_NUMBER || LA251_99 == INT_NUMBER || LA251_99 == LONG_NUMBER || LA251_99 == ULONGLONG_NUMBER))
                            {
                                {
                                    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 == DATE_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 == TIME_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 == TIMESTAMP_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 >= NULL2_SYMBOL) && (LA251_99 <= NULL_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 == FALSE_SYMBOL || LA251_99 == TRUE_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 == HEX_NUMBER))
                            {
                                {
                                    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 == BIN_NUMBER))
                            {
                                {
                                    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 == IDENTIFIER))
                            {
                                {
                                    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 == BACK_TICK_QUOTED_ID))
                            {
                                {
                                    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 == CHAR_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 == CURRENT_USER_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 == DAY_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 == HOUR_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 == INSERT_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 == LEFT_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 == MINUTE_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 == MONTH_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 == RIGHT_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 == SECOND_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 == TRIM_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 == USER_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 == VALUES_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 == YEAR_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 == ADDDATE_SYMBOL || LA251_99 == SUBDATE_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 == CURDATE_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 == CURTIME_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 == DATE_ADD_SYMBOL || LA251_99 == DATE_SUB_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 == EXTRACT_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 == GET_FORMAT_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 == NOW_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 == POSITION_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 == SUBSTRING_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 == SYSDATE_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 >= TIMESTAMP_ADD_SYMBOL) && (LA251_99 <= TIMESTAMP_DIFF_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 == UTC_DATE_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 == UTC_TIME_SYMBOL))
                            {
                                {
                                    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 == UTC_TIMESTAMP_SYMBOL))
                            {
                                {
                                    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 == ASCII_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 == CHARSET_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 == COALESCE_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 == COLLATION_SYMBOL))
                            {
                                {
                                    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 == DATABASE_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 == IF_SYMBOL))
                            {
                                {
                                    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 == FORMAT_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 == MICROSECOND_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 == MOD_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 == OLD_PASSWORD_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 == PASSWORD_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 == QUARTER_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 == REPEAT_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 == REPLACE_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 == REVERSE_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 == ROW_COUNT_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 == TRUNCATE_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 ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == WEEK_SYMBOL))
                            {
                                {
                                    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_99 == WEIGHT_STRING_SYMBOL))
                            {
                                {
                                    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_99 == GEOMETRYCOLLECTION_SYMBOL))
                            {
                                {
                                    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_99 == LINESTRING_SYMBOL))
                            {
                                {
                                    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_99 == MULTILINESTRING_SYMBOL))
                            {
                                {
                                    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_99 == MULTIPOINT_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_99 == MULTIPOLYGON_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_99 == POINT_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_99 == POLYGON_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_99 == CONTAINS_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_99 == AVG_SYMBOL))
                            {
                                {
                                    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_99 == BIT_AND_SYMBOL))
                            {
                                {
                                    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_99 == BIT_OR_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_99 == BIT_XOR_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_99 == COUNT_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_99 == MIN_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_99 == MAX_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_99 == STD_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_99 == VARIANCE_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_99 == STDDEV_SAMP_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_99 == VAR_SAMP_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_99 == SUM_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_99 == GROUP_CONCAT_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_99 == DOT_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_99 == ROW_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_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_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_99 == PARAM_MARKER))
                            {
                                {
                                    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_99 == AT_SIGN_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_99 == AT_TEXT_SUFFIX))
                            {
                                {
                                    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_99 == AT_AT_SIGN_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_99 == EXISTS_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_99 == OPEN_PAR_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_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_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_99 == OPEN_CURLY_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_99 == MATCH_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_99 == CASE_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_99 == BINARY_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_99 == CAST_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_99 == CONVERT_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_99 == WHEN_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 (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_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 == UNDERSCORE_CHARSET))
                            {
                                {
                                    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 == SINGLE_QUOTED_TEXT))
                            {
                                {
                                    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 == DOUBLE_QUOTED_TEXT))
                            {
                                {
                                    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 == DECIMAL_NUMBER || LA251_100 == FLOAT_NUMBER || LA251_100 == INT_NUMBER || LA251_100 == LONG_NUMBER || LA251_100 == ULONGLONG_NUMBER))
                            {
                                {
                                    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 == DATE_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 == TIME_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 == TIMESTAMP_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 >= NULL2_SYMBOL) && (LA251_100 <= NULL_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 == FALSE_SYMBOL || LA251_100 == TRUE_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 == HEX_NUMBER))
                            {
                                {
                                    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 == BIN_NUMBER))
                            {
                                {
                                    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 == IDENTIFIER))
                            {
                                {
                                    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 == BACK_TICK_QUOTED_ID))
                            {
                                {
                                    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 == CHAR_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 == CURRENT_USER_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 == DAY_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 == HOUR_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 == INSERT_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 == LEFT_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 == MINUTE_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 == MONTH_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 == RIGHT_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 == SECOND_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 == TRIM_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 == USER_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 == VALUES_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 == YEAR_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 == ADDDATE_SYMBOL || LA251_100 == SUBDATE_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 == CURDATE_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 == CURTIME_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 == DATE_ADD_SYMBOL || LA251_100 == DATE_SUB_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 == EXTRACT_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 == GET_FORMAT_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 == NOW_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 == POSITION_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 == SUBSTRING_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 == SYSDATE_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 >= TIMESTAMP_ADD_SYMBOL) && (LA251_100 <= TIMESTAMP_DIFF_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 == UTC_DATE_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 == UTC_TIME_SYMBOL))
                            {
                                {
                                    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 == UTC_TIMESTAMP_SYMBOL))
                            {
                                {
                                    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 == ASCII_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 == CHARSET_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 == COALESCE_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 == COLLATION_SYMBOL))
                            {
                                {
                                    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 == DATABASE_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 == IF_SYMBOL))
                            {
                                {
                                    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 == FORMAT_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 == MICROSECOND_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 == MOD_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 == OLD_PASSWORD_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 == PASSWORD_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 == QUARTER_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 == REPEAT_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 == REPLACE_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 == REVERSE_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 == ROW_COUNT_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 ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == TRUNCATE_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 ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == WEEK_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 ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == WEIGHT_STRING_SYMBOL))
                            {
                                {
                                    int LA251_2722 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2722;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == GEOMETRYCOLLECTION_SYMBOL))
                            {
                                {
                                    int LA251_2723 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2723;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == LINESTRING_SYMBOL))
                            {
                                {
                                    int LA251_2724 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2724;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == MULTILINESTRING_SYMBOL))
                            {
                                {
                                    int LA251_2725 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2725;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == MULTIPOINT_SYMBOL))
                            {
                                {
                                    int LA251_2726 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2726;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == MULTIPOLYGON_SYMBOL))
                            {
                                {
                                    int LA251_2727 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2727;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == POINT_SYMBOL))
                            {
                                {
                                    int LA251_2728 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2728;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == POLYGON_SYMBOL))
                            {
                                {
                                    int LA251_2729 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2729;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == CONTAINS_SYMBOL))
                            {
                                {
                                    int LA251_2730 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2730;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == AVG_SYMBOL))
                            {
                                {
                                    int LA251_2731 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2731;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == BIT_AND_SYMBOL))
                            {
                                {
                                    int LA251_2732 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2732;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == BIT_OR_SYMBOL))
                            {
                                {
                                    int LA251_2733 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2733;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == BIT_XOR_SYMBOL))
                            {
                                {
                                    int LA251_2734 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2734;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == COUNT_SYMBOL))
                            {
                                {
                                    int LA251_2735 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2735;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == MIN_SYMBOL))
                            {
                                {
                                    int LA251_2736 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2736;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == MAX_SYMBOL))
                            {
                                {
                                    int LA251_2737 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2737;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == STD_SYMBOL))
                            {
                                {
                                    int LA251_2738 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2738;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == VARIANCE_SYMBOL))
                            {
                                {
                                    int LA251_2739 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2739;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == STDDEV_SAMP_SYMBOL))
                            {
                                {
                                    int LA251_2740 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2740;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == VAR_SAMP_SYMBOL))
                            {
                                {
                                    int LA251_2741 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2741;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == SUM_SYMBOL))
                            {
                                {
                                    int LA251_2742 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2742;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == GROUP_CONCAT_SYMBOL))
                            {
                                {
                                    int LA251_2743 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2743;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == DOT_SYMBOL))
                            {
                                {
                                    int LA251_2744 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2744;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == ROW_SYMBOL))
                            {
                                {
                                    int LA251_2745 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2745;


                                        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_2746 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2746;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == PARAM_MARKER))
                            {
                                {
                                    int LA251_2747 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2747;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == AT_SIGN_SYMBOL))
                            {
                                {
                                    int LA251_2748 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2748;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == AT_TEXT_SUFFIX))
                            {
                                {
                                    int LA251_2749 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2749;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == AT_AT_SIGN_SYMBOL))
                            {
                                {
                                    int LA251_2750 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2750;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == EXISTS_SYMBOL))
                            {
                                {
                                    int LA251_2751 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2751;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_2752 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2752;


                                        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_2753 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2753;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == OPEN_CURLY_SYMBOL))
                            {
                                {
                                    int LA251_2754 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2754;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == MATCH_SYMBOL))
                            {
                                {
                                    int LA251_2755 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2755;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == CASE_SYMBOL))
                            {
                                {
                                    int LA251_2756 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2756;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == BINARY_SYMBOL))
                            {
                                {
                                    int LA251_2757 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2757;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == CAST_SYMBOL))
                            {
                                {
                                    int LA251_2758 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2758;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == CONVERT_SYMBOL))
                            {
                                {
                                    int LA251_2759 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2759;


                                        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_2760 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2760;


                                        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_2761 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2761;


                                        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:1110: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_statement4217);
            	        expression_list777=expression_list(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledo_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression_list777.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1111: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_statement4227);
            	        select_item_list778=select_item_list(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledo_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_item_list778.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:1115: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_SYMBOL779;
    pANTLR3_COMMON_TOKEN    OPEN_SYMBOL781;
    pANTLR3_COMMON_TOKEN    AS_SYMBOL782;
    pANTLR3_COMMON_TOKEN    CLOSE_SYMBOL785;
    pANTLR3_COMMON_TOKEN    READ_SYMBOL786;
    MySQLParser_table_ref_return table_ref780;
    #undef	RETURN_TYPE_table_ref780
    #define	RETURN_TYPE_table_ref780 MySQLParser_table_ref_return

    MySQLParser_identifier_return identifier783;
    #undef	RETURN_TYPE_identifier783
    #define	RETURN_TYPE_identifier783 MySQLParser_identifier_return

    MySQLParser_table_ref_no_db_return table_ref_no_db784;
    #undef	RETURN_TYPE_table_ref_no_db784
    #define	RETURN_TYPE_table_ref_no_db784 MySQLParser_table_ref_no_db_return

    MySQLParser_handler_read_or_scan_return handler_read_or_scan787;
    #undef	RETURN_TYPE_handler_read_or_scan787
    #define	RETURN_TYPE_handler_read_or_scan787 MySQLParser_handler_read_or_scan_return

    MySQLParser_where_clause_return where_clause788;
    #undef	RETURN_TYPE_where_clause788
    #define	RETURN_TYPE_where_clause788 MySQLParser_where_clause_return

    MySQLParser_limit_clause_return limit_clause789;
    #undef	RETURN_TYPE_limit_clause789
    #define	RETURN_TYPE_limit_clause789 MySQLParser_limit_clause_return

    pANTLR3_BASE_TREE HANDLER_SYMBOL779_tree;
    pANTLR3_BASE_TREE OPEN_SYMBOL781_tree;
    pANTLR3_BASE_TREE AS_SYMBOL782_tree;
    pANTLR3_BASE_TREE CLOSE_SYMBOL785_tree;
    pANTLR3_BASE_TREE READ_SYMBOL786_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    HANDLER_SYMBOL779       = NULL;
    OPEN_SYMBOL781       = NULL;
    AS_SYMBOL782       = NULL;
    CLOSE_SYMBOL785       = NULL;
    READ_SYMBOL786       = NULL;
    table_ref780.tree = NULL;

    identifier783.tree = NULL;

    table_ref_no_db784.tree = NULL;

    handler_read_or_scan787.tree = NULL;

    where_clause788.tree = NULL;

    limit_clause789.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    HANDLER_SYMBOL779_tree   = NULL;
    OPEN_SYMBOL781_tree   = NULL;
    AS_SYMBOL782_tree   = NULL;
    CLOSE_SYMBOL785_tree   = NULL;
    READ_SYMBOL786_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1115: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:1116: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_SYMBOL779 = (pANTLR3_COMMON_TOKEN) MATCHT(HANDLER_SYMBOL, &FOLLOW_HANDLER_SYMBOL_in_handler_statement4239);
            if  (HASEXCEPTION())
            {
                goto rulehandler_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            HANDLER_SYMBOL779_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, HANDLER_SYMBOL779))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, HANDLER_SYMBOL779_tree, root_0));
            }

            // MySQL.g:1117: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:1118:3: table_ref OPEN_SYMBOL ( ( AS_SYMBOL )? identifier )?
            	    {
            	        FOLLOWPUSH(FOLLOW_table_ref_in_handler_statement4260);
            	        table_ref780=table_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulehandler_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref780.tree);

            	        OPEN_SYMBOL781 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_SYMBOL, &FOLLOW_OPEN_SYMBOL_in_handler_statement4262);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulehandler_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OPEN_SYMBOL781_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_SYMBOL781));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_SYMBOL781_tree);
            	        }

            	        // MySQL.g:1118: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:1118:26: ( AS_SYMBOL )? identifier
            	        	    {
            	        	        // MySQL.g:1118:26: ( AS_SYMBOL )?
            	        	        {
            	        	            int alt252=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case AS_SYMBOL:
            	        	                	{
            	        	                		alt252=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt252)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:1118:26: AS_SYMBOL
            	        	        	    {
            	        	        	        AS_SYMBOL782 = (pANTLR3_COMMON_TOKEN) MATCHT(AS_SYMBOL, &FOLLOW_AS_SYMBOL_in_handler_statement4265);
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulehandler_statementEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) {
            	        	        	        AS_SYMBOL782_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AS_SYMBOL782));
            	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, AS_SYMBOL782_tree);
            	        	        	        }

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_identifier_in_handler_statement4268);
            	        	        identifier783=identifier(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulehandler_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier783.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1119: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_statement4276);
            	        table_ref_no_db784=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_db784.tree);

            	        // MySQL.g:1120: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:1121:5: 
            	        	    {
            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:1121:7: CLOSE_SYMBOL
            	        	    {
            	        	        CLOSE_SYMBOL785 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_SYMBOL, &FOLLOW_CLOSE_SYMBOL_in_handler_statement4289);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulehandler_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        CLOSE_SYMBOL785_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_SYMBOL785));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_SYMBOL785_tree);
            	        	        }

            	        	    }
            	        	    break;
            	        	case 3:
            	        	    // MySQL.g:1122:7: READ_SYMBOL handler_read_or_scan ( where_clause )? ( limit_clause )?
            	        	    {
            	        	        READ_SYMBOL786 = (pANTLR3_COMMON_TOKEN) MATCHT(READ_SYMBOL, &FOLLOW_READ_SYMBOL_in_handler_statement4297);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulehandler_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        READ_SYMBOL786_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, READ_SYMBOL786));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, READ_SYMBOL786_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_handler_read_or_scan_in_handler_statement4299);
            	        	        handler_read_or_scan787=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_scan787.tree);

            	        	        // MySQL.g:1122:40: ( where_clause )?
            	        	        {
            	        	            int alt254=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case WHERE_SYMBOL:
            	        	                	{
            	        	                		alt254=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt254)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:1122:40: where_clause
            	        	        	    {
            	        	        	        FOLLOWPUSH(FOLLOW_where_clause_in_handler_statement4301);
            	        	        	        where_clause788=where_clause(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulehandler_statementEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, where_clause788.tree);

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	        // MySQL.g:1122:54: ( limit_clause )?
            	        	        {
            	        	            int alt255=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case LIMIT_SYMBOL:
            	        	                	{
            	        	                		alt255=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt255)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:1122:54: limit_clause
            	        	        	    {
            	        	        	        FOLLOWPUSH(FOLLOW_limit_clause_in_handler_statement4304);
            	        	        	        limit_clause789=limit_clause(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulehandler_statementEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, limit_clause789.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:1127: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    set790;
    pANTLR3_COMMON_TOKEN    FIRST_SYMBOL792;
    pANTLR3_COMMON_TOKEN    NEXT_SYMBOL793;
    pANTLR3_COMMON_TOKEN    PREV_SYMBOL794;
    pANTLR3_COMMON_TOKEN    LAST_SYMBOL795;
    pANTLR3_COMMON_TOKEN    set796;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL797;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL799;
    MySQLParser_identifier_return identifier791;
    #undef	RETURN_TYPE_identifier791
    #define	RETURN_TYPE_identifier791 MySQLParser_identifier_return

    MySQLParser_values_return values798;
    #undef	RETURN_TYPE_values798
    #define	RETURN_TYPE_values798 MySQLParser_values_return

    pANTLR3_BASE_TREE set790_tree;
    pANTLR3_BASE_TREE FIRST_SYMBOL792_tree;
    pANTLR3_BASE_TREE NEXT_SYMBOL793_tree;
    pANTLR3_BASE_TREE PREV_SYMBOL794_tree;
    pANTLR3_BASE_TREE LAST_SYMBOL795_tree;
    pANTLR3_BASE_TREE set796_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL797_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL799_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set790       = NULL;
    FIRST_SYMBOL792       = NULL;
    NEXT_SYMBOL793       = NULL;
    PREV_SYMBOL794       = NULL;
    LAST_SYMBOL795       = NULL;
    set796       = NULL;
    OPEN_PAR_SYMBOL797       = NULL;
    CLOSE_PAR_SYMBOL799       = NULL;
    identifier791.tree = NULL;

    values798.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set790_tree   = NULL;
    FIRST_SYMBOL792_tree   = NULL;
    NEXT_SYMBOL793_tree   = NULL;
    PREV_SYMBOL794_tree   = NULL;
    LAST_SYMBOL795_tree   = NULL;
    set796_tree   = NULL;
    OPEN_PAR_SYMBOL797_tree   = NULL;
    CLOSE_PAR_SYMBOL799_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1127: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:1128:2: ( FIRST_SYMBOL | NEXT_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        set790=(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, set790))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>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:1129: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_scan4334);
        	        identifier791=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulehandler_read_or_scanEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier791.tree);

        	        // MySQL.g:1130: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:1131:4: FIRST_SYMBOL
        	        	    {
        	        	        FIRST_SYMBOL792 = (pANTLR3_COMMON_TOKEN) MATCHT(FIRST_SYMBOL, &FOLLOW_FIRST_SYMBOL_in_handler_read_or_scan4343);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulehandler_read_or_scanEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        FIRST_SYMBOL792_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FIRST_SYMBOL792));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, FIRST_SYMBOL792_tree);
        	        	        }

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:1132:6: NEXT_SYMBOL
        	        	    {
        	        	        NEXT_SYMBOL793 = (pANTLR3_COMMON_TOKEN) MATCHT(NEXT_SYMBOL, &FOLLOW_NEXT_SYMBOL_in_handler_read_or_scan4350);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulehandler_read_or_scanEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        NEXT_SYMBOL793_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NEXT_SYMBOL793));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, NEXT_SYMBOL793_tree);
        	        	        }

        	        	    }
        	        	    break;
        	        	case 3:
        	        	    // MySQL.g:1133:6: PREV_SYMBOL
        	        	    {
        	        	        PREV_SYMBOL794 = (pANTLR3_COMMON_TOKEN) MATCHT(PREV_SYMBOL, &FOLLOW_PREV_SYMBOL_in_handler_read_or_scan4357);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulehandler_read_or_scanEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        PREV_SYMBOL794_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PREV_SYMBOL794));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, PREV_SYMBOL794_tree);
        	        	        }

        	        	    }
        	        	    break;
        	        	case 4:
        	        	    // MySQL.g:1134:6: LAST_SYMBOL
        	        	    {
        	        	        LAST_SYMBOL795 = (pANTLR3_COMMON_TOKEN) MATCHT(LAST_SYMBOL, &FOLLOW_LAST_SYMBOL_in_handler_read_or_scan4364);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulehandler_read_or_scanEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        LAST_SYMBOL795_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LAST_SYMBOL795));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, LAST_SYMBOL795_tree);
        	        	        }

        	        	    }
        	        	    break;
        	        	case 5:
        	        	    // MySQL.g:1135:6: ( EQUAL_OPERATOR | LESS_THAN_OPERATOR | GREATER_THAN_OPERATOR | LESS_OR_EQUAL_OPERATOR | GREATER_OR_EQUAL_OPERATOR ) OPEN_PAR_SYMBOL values CLOSE_PAR_SYMBOL
        	        	    {
        	        	        set796=(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, set796))
        	        	            );
        	        	            PERRORRECOVERY=ANTLR3_FALSE;
        	        	            FAILEDFLAG=ANTLR3_FALSE;

        	        	        }
        	        	        else
        	        	        {
        	        	            if (BACKTRACKING>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_SYMBOL797 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_handler_read_or_scan4395);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulehandler_read_or_scanEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        OPEN_PAR_SYMBOL797_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL797));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL797_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_values_in_handler_read_or_scan4397);
        	        	        values798=values(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulehandler_read_or_scanEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, values798.tree);

        	        	        CLOSE_PAR_SYMBOL799 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_handler_read_or_scan4399);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulehandler_read_or_scanEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        CLOSE_PAR_SYMBOL799_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL799));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL799_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:1142: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_SYMBOL800;
    pANTLR3_COMMON_TOKEN    IGNORE_SYMBOL802;
    pANTLR3_COMMON_TOKEN    INTO_SYMBOL803;
    MySQLParser_insert_lock_option_return insert_lock_option801;
    #undef	RETURN_TYPE_insert_lock_option801
    #define	RETURN_TYPE_insert_lock_option801 MySQLParser_insert_lock_option_return

    MySQLParser_table_ref_return table_ref804;
    #undef	RETURN_TYPE_table_ref804
    #define	RETURN_TYPE_table_ref804 MySQLParser_table_ref_return

    MySQLParser_use_partition_return use_partition805;
    #undef	RETURN_TYPE_use_partition805
    #define	RETURN_TYPE_use_partition805 MySQLParser_use_partition_return

    MySQLParser_insert_field_spec_return insert_field_spec806;
    #undef	RETURN_TYPE_insert_field_spec806
    #define	RETURN_TYPE_insert_field_spec806 MySQLParser_insert_field_spec_return

    MySQLParser_duplicate_key_update_return duplicate_key_update807;
    #undef	RETURN_TYPE_duplicate_key_update807
    #define	RETURN_TYPE_duplicate_key_update807 MySQLParser_duplicate_key_update_return

    pANTLR3_BASE_TREE INSERT_SYMBOL800_tree;
    pANTLR3_BASE_TREE IGNORE_SYMBOL802_tree;
    pANTLR3_BASE_TREE INTO_SYMBOL803_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    INSERT_SYMBOL800       = NULL;
    IGNORE_SYMBOL802       = NULL;
    INTO_SYMBOL803       = NULL;
    insert_lock_option801.tree = NULL;

    table_ref804.tree = NULL;

    use_partition805.tree = NULL;

    insert_field_spec806.tree = NULL;

    duplicate_key_update807.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    INSERT_SYMBOL800_tree   = NULL;
    IGNORE_SYMBOL802_tree   = NULL;
    INTO_SYMBOL803_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1142:17: ( INSERT_SYMBOL ^ ( insert_lock_option )? ( IGNORE_SYMBOL )? ( INTO_SYMBOL )? table_ref ( use_partition )? insert_field_spec ( duplicate_key_update )? )
        // MySQL.g:1143: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_SYMBOL800 = (pANTLR3_COMMON_TOKEN) MATCHT(INSERT_SYMBOL, &FOLLOW_INSERT_SYMBOL_in_insert_statement4414);
            if  (HASEXCEPTION())
            {
                goto ruleinsert_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            INSERT_SYMBOL800_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INSERT_SYMBOL800))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, INSERT_SYMBOL800_tree, root_0));
            }

            // MySQL.g:1143: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:1143:17: insert_lock_option
            	    {
            	        FOLLOWPUSH(FOLLOW_insert_lock_option_in_insert_statement4417);
            	        insert_lock_option801=insert_lock_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleinsert_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, insert_lock_option801.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1143:37: ( IGNORE_SYMBOL )?
            {
                int alt261=2;
                switch ( LA(1) )
                {
                    case IGNORE_SYMBOL:
                    	{
                    		alt261=1;
                    	}
                        break;
                }

                switch (alt261)
                {
            	case 1:
            	    // MySQL.g:1143:37: IGNORE_SYMBOL
            	    {
            	        IGNORE_SYMBOL802 = (pANTLR3_COMMON_TOKEN) MATCHT(IGNORE_SYMBOL, &FOLLOW_IGNORE_SYMBOL_in_insert_statement4420);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleinsert_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        IGNORE_SYMBOL802_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IGNORE_SYMBOL802));
            	        ADAPTOR->addChild(ADAPTOR, root_0, IGNORE_SYMBOL802_tree);
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:1143:52: ( INTO_SYMBOL )?
            {
                int alt262=2;
                switch ( LA(1) )
                {
                    case INTO_SYMBOL:
                    	{
                    		alt262=1;
                    	}
                        break;
                }

                switch (alt262)
                {
            	case 1:
            	    // MySQL.g:1143:52: INTO_SYMBOL
            	    {
            	        INTO_SYMBOL803 = (pANTLR3_COMMON_TOKEN) MATCHT(INTO_SYMBOL, &FOLLOW_INTO_SYMBOL_in_insert_statement4423);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleinsert_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        INTO_SYMBOL803_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTO_SYMBOL803));
            	        ADAPTOR->addChild(ADAPTOR, root_0, INTO_SYMBOL803_tree);
            	        }

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_table_ref_in_insert_statement4426);
            table_ref804=table_ref(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleinsert_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref804.tree);

            // MySQL.g:1143: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:1143:75: use_partition
            	    {
            	        FOLLOWPUSH(FOLLOW_use_partition_in_insert_statement4428);
            	        use_partition805=use_partition(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleinsert_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, use_partition805.tree);

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_insert_field_spec_in_insert_statement4433);
            insert_field_spec806=insert_field_spec(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleinsert_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, insert_field_spec806.tree);

            // MySQL.g:1144:21: ( duplicate_key_update )?
            {
                int alt264=2;
                switch ( LA(1) )
                {
                    case ON_SYMBOL:
                    	{
                    		alt264=1;
                    	}
                        break;
                }

                switch (alt264)
                {
            	case 1:
            	    // MySQL.g:1144:21: duplicate_key_update
            	    {
            	        FOLLOWPUSH(FOLLOW_duplicate_key_update_in_insert_statement4435);
            	        duplicate_key_update807=duplicate_key_update(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleinsert_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, duplicate_key_update807.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:1147: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    set808;

    pANTLR3_BASE_TREE set808_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set808       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set808_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1147:19: ( LOW_PRIORITY_SYMBOL | DELAYED_SYMBOL | HIGH_PRIORITY_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set808=(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, set808))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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:1153: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_SYMBOL809;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL811;
    pANTLR3_COMMON_TOKEN    SET_SYMBOL814;
    MySQLParser_fields_return fields810;
    #undef	RETURN_TYPE_fields810
    #define	RETURN_TYPE_fields810 MySQLParser_fields_return

    MySQLParser_insert_values_return insert_values812;
    #undef	RETURN_TYPE_insert_values812
    #define	RETURN_TYPE_insert_values812 MySQLParser_insert_values_return

    MySQLParser_insert_query_expression_return insert_query_expression813;
    #undef	RETURN_TYPE_insert_query_expression813
    #define	RETURN_TYPE_insert_query_expression813 MySQLParser_insert_query_expression_return

    MySQLParser_column_assignment_list_with_default_return column_assignment_list_with_default815;
    #undef	RETURN_TYPE_column_assignment_list_with_default815
    #define	RETURN_TYPE_column_assignment_list_with_default815 MySQLParser_column_assignment_list_with_default_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL809_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL811_tree;
    pANTLR3_BASE_TREE SET_SYMBOL814_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL809       = NULL;
    CLOSE_PAR_SYMBOL811       = NULL;
    SET_SYMBOL814       = NULL;
    fields810.tree = NULL;

    insert_values812.tree = NULL;

    insert_query_expression813.tree = NULL;

    column_assignment_list_with_default815.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL809_tree   = NULL;
    CLOSE_PAR_SYMBOL811_tree   = NULL;
    SET_SYMBOL814_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1153: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:1154:2: ( OPEN_PAR_SYMBOL ( fields )? CLOSE_PAR_SYMBOL )? ( insert_values | insert_query_expression )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:1154: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:1154:3: OPEN_PAR_SYMBOL ( fields )? CLOSE_PAR_SYMBOL
        	        	    {
        	        	        OPEN_PAR_SYMBOL809 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_insert_field_spec4467);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleinsert_field_specEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        OPEN_PAR_SYMBOL809_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL809));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL809_tree);
        	        	        }

        	        	        // MySQL.g:1154: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:1154:19: fields
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_fields_in_insert_field_spec4469);
        	        	        	        fields810=fields(ctx);

        	        	        	        FOLLOWPOP();
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruleinsert_field_specEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, fields810.tree);

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        CLOSE_PAR_SYMBOL811 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_insert_field_spec4472);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleinsert_field_specEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        CLOSE_PAR_SYMBOL811_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL811));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL811_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:1155: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:1156:4: insert_values
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_insert_values_in_insert_field_spec4484);
        	        	        insert_values812=insert_values(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleinsert_field_specEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, insert_values812.tree);

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:1157:6: insert_query_expression
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_insert_query_expression_in_insert_field_spec4491);
        	        	        insert_query_expression813=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_expression813.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1159:4: SET_SYMBOL column_assignment_list_with_default
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SET_SYMBOL814 = (pANTLR3_COMMON_TOKEN) MATCHT(SET_SYMBOL, &FOLLOW_SET_SYMBOL_in_insert_field_spec4500);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinsert_field_specEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SET_SYMBOL814_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SET_SYMBOL814));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SET_SYMBOL814_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_column_assignment_list_with_default_in_insert_field_spec4502);
        	        column_assignment_list_with_default815=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_default815.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:1162:1: fields : column_ref_with_wildcard ( COMMA_SYMBOL column_ref_with_wildcard )* ;
 */
static MySQLParser_fields_return
fields(pMySQLParser ctx)
{
    MySQLParser_fields_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL817;
    MySQLParser_column_ref_with_wildcard_return column_ref_with_wildcard816;
    #undef	RETURN_TYPE_column_ref_with_wildcard816
    #define	RETURN_TYPE_column_ref_with_wildcard816 MySQLParser_column_ref_with_wildcard_return

    MySQLParser_column_ref_with_wildcard_return column_ref_with_wildcard818;
    #undef	RETURN_TYPE_column_ref_with_wildcard818
    #define	RETURN_TYPE_column_ref_with_wildcard818 MySQLParser_column_ref_with_wildcard_return

    pANTLR3_BASE_TREE COMMA_SYMBOL817_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL817       = NULL;
    column_ref_with_wildcard816.tree = NULL;

    column_ref_with_wildcard818.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL817_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1162:7: ( column_ref_with_wildcard ( COMMA_SYMBOL column_ref_with_wildcard )* )
        // MySQL.g:1163:2: column_ref_with_wildcard ( COMMA_SYMBOL column_ref_with_wildcard )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_column_ref_with_wildcard_in_fields4511);
            column_ref_with_wildcard816=column_ref_with_wildcard(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulefieldsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, column_ref_with_wildcard816.tree);

            // MySQL.g:1163:27: ( COMMA_SYMBOL column_ref_with_wildcard )*

            for (;;)
            {
                int alt269=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt269=1;
                	}
                    break;

                }

                switch (alt269)
                {
            	case 1:
            	    // MySQL.g:1163:28: COMMA_SYMBOL column_ref_with_wildcard
            	    {
            	        COMMA_SYMBOL817 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_fields4514);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulefieldsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL817_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL817));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL817_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_column_ref_with_wildcard_in_fields4516);
            	        column_ref_with_wildcard818=column_ref_with_wildcard(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulefieldsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, column_ref_with_wildcard818.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_values
 * MySQL.g:1166: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    set819;
    MySQLParser_insert_value_list_return insert_value_list820;
    #undef	RETURN_TYPE_insert_value_list820
    #define	RETURN_TYPE_insert_value_list820 MySQLParser_insert_value_list_return

    pANTLR3_BASE_TREE set819_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set819       = NULL;
    insert_value_list820.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set819_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1166:14: ( ( VALUES_SYMBOL | VALUE_SYMBOL ) insert_value_list )
        // MySQL.g:1167:2: ( VALUES_SYMBOL | VALUE_SYMBOL ) insert_value_list
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set819=(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, set819))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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_values4535);
            insert_value_list820=insert_value_list(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleinsert_valuesEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, insert_value_list820.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:1170: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_SYMBOL823;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL825;
    MySQLParser_create_select_return create_select821;
    #undef	RETURN_TYPE_create_select821
    #define	RETURN_TYPE_create_select821 MySQLParser_create_select_return

    MySQLParser_union_clause_return union_clause822;
    #undef	RETURN_TYPE_union_clause822
    #define	RETURN_TYPE_union_clause822 MySQLParser_union_clause_return

    MySQLParser_create_select_return create_select824;
    #undef	RETURN_TYPE_create_select824
    #define	RETURN_TYPE_create_select824 MySQLParser_create_select_return

    MySQLParser_union_or_order_by_or_limit_return union_or_order_by_or_limit826;
    #undef	RETURN_TYPE_union_or_order_by_or_limit826
    #define	RETURN_TYPE_union_or_order_by_or_limit826 MySQLParser_union_or_order_by_or_limit_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL823_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL825_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL823       = NULL;
    CLOSE_PAR_SYMBOL825       = NULL;
    create_select821.tree = NULL;

    union_clause822.tree = NULL;

    create_select824.tree = NULL;

    union_or_order_by_or_limit826.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL823_tree   = NULL;
    CLOSE_PAR_SYMBOL825_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1170: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:1171:2: create_select ( union_clause )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_create_select_in_insert_query_expression4544);
        	        create_select821=create_select(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinsert_query_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_select821.tree);

        	        // MySQL.g:1171:16: ( union_clause )?
        	        {
        	            int alt270=2;
        	            switch ( LA(1) )
        	            {
        	                case UNION_SYMBOL:
        	                	{
        	                		alt270=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt270)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1171:16: union_clause
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_union_clause_in_insert_query_expression4546);
        	        	        union_clause822=union_clause(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleinsert_query_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, union_clause822.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1172: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_SYMBOL823 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_insert_query_expression4552);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinsert_query_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL823_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL823));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL823_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_create_select_in_insert_query_expression4554);
        	        create_select824=create_select(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinsert_query_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_select824.tree);

        	        CLOSE_PAR_SYMBOL825 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_insert_query_expression4556);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinsert_query_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL825_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL825));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL825_tree);
        	        }

        	        // MySQL.g:1172: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:1172:51: union_or_order_by_or_limit
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_union_or_order_by_or_limit_in_insert_query_expression4558);
        	        	        union_or_order_by_or_limit826=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_limit826.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:1175: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_SYMBOL827;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL829;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL830;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL831;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL833;
    MySQLParser_values_return values828;
    #undef	RETURN_TYPE_values828
    #define	RETURN_TYPE_values828 MySQLParser_values_return

    MySQLParser_values_return values832;
    #undef	RETURN_TYPE_values832
    #define	RETURN_TYPE_values832 MySQLParser_values_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL827_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL829_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL830_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL831_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL833_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL827       = NULL;
    CLOSE_PAR_SYMBOL829       = NULL;
    COMMA_SYMBOL830       = NULL;
    OPEN_PAR_SYMBOL831       = NULL;
    CLOSE_PAR_SYMBOL833       = NULL;
    values828.tree = NULL;

    values832.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL827_tree   = NULL;
    CLOSE_PAR_SYMBOL829_tree   = NULL;
    COMMA_SYMBOL830_tree   = NULL;
    OPEN_PAR_SYMBOL831_tree   = NULL;
    CLOSE_PAR_SYMBOL833_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1175:18: ( OPEN_PAR_SYMBOL ( values )? CLOSE_PAR_SYMBOL ( COMMA_SYMBOL OPEN_PAR_SYMBOL ( values )? CLOSE_PAR_SYMBOL )* )
        // MySQL.g:1176: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_SYMBOL827 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_insert_value_list4568);
            if  (HASEXCEPTION())
            {
                goto ruleinsert_value_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL827_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL827));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL827_tree);
            }

            // MySQL.g:1176:18: ( values )?
            {
                int alt273=2;
                {
                    int LA273_0 = LA(1);
                    if ( (((LA273_0 >= ACCOUNT_SYMBOL) && (LA273_0 <= YEAR_SYMBOL)) || LA273_0 == BINARY_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 == DEFAULT_SYMBOL || LA273_0 == EXISTS_SYMBOL || ((LA273_0 >= EXTRACT_SYMBOL) && (LA273_0 <= FALSE_SYMBOL)) || LA273_0 == GROUP_CONCAT_SYMBOL || LA273_0 == IF_SYMBOL || LA273_0 == INSERT_SYMBOL || LA273_0 == INTERVAL_SYMBOL || LA273_0 == LEFT_SYMBOL || LA273_0 == MATCH_SYMBOL || LA273_0 == MAX_SYMBOL || LA273_0 == MIN_SYMBOL || LA273_0 == MOD_SYMBOL || LA273_0 == NCHAR_TEXT || ((LA273_0 >= NOT2_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 <= 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 >= UTC_DATE_SYMBOL) && (LA273_0 <= UTC_TIME_SYMBOL)) || LA273_0 == VALUES_SYMBOL || LA273_0 == VARIANCE_SYMBOL || LA273_0 == VAR_SAMP_SYMBOL || ((LA273_0 >= AT_AT_SIGN_SYMBOL) && (LA273_0 <= AT_TEXT_SUFFIX)) || ((LA273_0 >= BACK_TICK_QUOTED_ID) && (LA273_0 <= BIN_NUMBER)) || LA273_0 == BITWISE_NOT_OPERATOR || ((LA273_0 >= BIT_AND_SYMBOL) && (LA273_0 <= BIT_XOR_SYMBOL)) || LA273_0 == DECIMAL_NUMBER || LA273_0 == DOT_SYMBOL || LA273_0 == DOUBLE_QUOTED_TEXT || LA273_0 == FLOAT_NUMBER || ((LA273_0 >= HEX_NUMBER) && (LA273_0 <= IDENTIFIER)) || LA273_0 == INT_NUMBER || LA273_0 == LOGICAL_NOT_OPERATOR || ((LA273_0 >= LONG_NUMBER) && (LA273_0 <= MINUS_OPERATOR)) || LA273_0 == PLUS_OPERATOR || ((LA273_0 >= ULONGLONG_NUMBER) && (LA273_0 <= UNDERSCORE_CHARSET))))
                    {
                        alt273=1;
                    }
                }
                switch (alt273)
                {
            	case 1:
            	    // MySQL.g:1176:18: values
            	    {
            	        FOLLOWPUSH(FOLLOW_values_in_insert_value_list4570);
            	        values828=values(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleinsert_value_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, values828.tree);

            	    }
            	    break;

                }
            }

            CLOSE_PAR_SYMBOL829 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_insert_value_list4573);
            if  (HASEXCEPTION())
            {
                goto ruleinsert_value_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL829_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL829));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL829_tree);
            }

            // MySQL.g:1176: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:1176:44: COMMA_SYMBOL OPEN_PAR_SYMBOL ( values )? CLOSE_PAR_SYMBOL
            	    {
            	        COMMA_SYMBOL830 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_insert_value_list4576);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleinsert_value_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL830_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL830));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL830_tree);
            	        }

            	        OPEN_PAR_SYMBOL831 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_insert_value_list4578);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleinsert_value_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OPEN_PAR_SYMBOL831_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL831));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL831_tree);
            	        }

            	        // MySQL.g:1176:73: ( values )?
            	        {
            	            int alt274=2;
            	            {
            	                int LA274_0 = LA(1);
            	                if ( (((LA274_0 >= ACCOUNT_SYMBOL) && (LA274_0 <= YEAR_SYMBOL)) || LA274_0 == BINARY_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 == DEFAULT_SYMBOL || LA274_0 == EXISTS_SYMBOL || ((LA274_0 >= EXTRACT_SYMBOL) && (LA274_0 <= FALSE_SYMBOL)) || LA274_0 == GROUP_CONCAT_SYMBOL || LA274_0 == IF_SYMBOL || LA274_0 == INSERT_SYMBOL || LA274_0 == INTERVAL_SYMBOL || LA274_0 == LEFT_SYMBOL || LA274_0 == MATCH_SYMBOL || LA274_0 == MAX_SYMBOL || LA274_0 == MIN_SYMBOL || LA274_0 == MOD_SYMBOL || LA274_0 == NCHAR_TEXT || ((LA274_0 >= NOT2_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 <= 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 >= UTC_DATE_SYMBOL) && (LA274_0 <= UTC_TIME_SYMBOL)) || LA274_0 == VALUES_SYMBOL || LA274_0 == VARIANCE_SYMBOL || LA274_0 == VAR_SAMP_SYMBOL || ((LA274_0 >= AT_AT_SIGN_SYMBOL) && (LA274_0 <= AT_TEXT_SUFFIX)) || ((LA274_0 >= BACK_TICK_QUOTED_ID) && (LA274_0 <= BIN_NUMBER)) || LA274_0 == BITWISE_NOT_OPERATOR || ((LA274_0 >= BIT_AND_SYMBOL) && (LA274_0 <= BIT_XOR_SYMBOL)) || LA274_0 == DECIMAL_NUMBER || LA274_0 == DOT_SYMBOL || LA274_0 == DOUBLE_QUOTED_TEXT || LA274_0 == FLOAT_NUMBER || ((LA274_0 >= HEX_NUMBER) && (LA274_0 <= IDENTIFIER)) || LA274_0 == INT_NUMBER || LA274_0 == LOGICAL_NOT_OPERATOR || ((LA274_0 >= LONG_NUMBER) && (LA274_0 <= MINUS_OPERATOR)) || LA274_0 == PLUS_OPERATOR || ((LA274_0 >= ULONGLONG_NUMBER) && (LA274_0 <= UNDERSCORE_CHARSET))))
            	                {
            	                    alt274=1;
            	                }
            	            }
            	            switch (alt274)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1176:73: values
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_values_in_insert_value_list4580);
            	        	        values832=values(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleinsert_value_listEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, values832.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        CLOSE_PAR_SYMBOL833 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_insert_value_list4583);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleinsert_value_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CLOSE_PAR_SYMBOL833_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL833));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL833_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:1179: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_SYMBOL835;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL836;
    pANTLR3_COMMON_TOKEN    DEFAULT_SYMBOL838;
    MySQLParser_expression_return expression834;
    #undef	RETURN_TYPE_expression834
    #define	RETURN_TYPE_expression834 MySQLParser_expression_return

    MySQLParser_expression_return expression837;
    #undef	RETURN_TYPE_expression837
    #define	RETURN_TYPE_expression837 MySQLParser_expression_return

    pANTLR3_BASE_TREE DEFAULT_SYMBOL835_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL836_tree;
    pANTLR3_BASE_TREE DEFAULT_SYMBOL838_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DEFAULT_SYMBOL835       = NULL;
    COMMA_SYMBOL836       = NULL;
    DEFAULT_SYMBOL838       = NULL;
    expression834.tree = NULL;

    expression837.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DEFAULT_SYMBOL835_tree   = NULL;
    COMMA_SYMBOL836_tree   = NULL;
    DEFAULT_SYMBOL838_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1179:7: ( ( expression | DEFAULT_SYMBOL ) ( COMMA_SYMBOL ( expression | DEFAULT_SYMBOL ) )* )
        // MySQL.g:1180:2: ( expression | DEFAULT_SYMBOL ) ( COMMA_SYMBOL ( expression | DEFAULT_SYMBOL ) )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:1180:2: ( expression | DEFAULT_SYMBOL )
            {
                int alt276=2;
                {
                    int LA276_0 = LA(1);
                    if ( (((LA276_0 >= ACCOUNT_SYMBOL) && (LA276_0 <= YEAR_SYMBOL)) || LA276_0 == BINARY_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 == EXISTS_SYMBOL || ((LA276_0 >= EXTRACT_SYMBOL) && (LA276_0 <= FALSE_SYMBOL)) || LA276_0 == GROUP_CONCAT_SYMBOL || LA276_0 == IF_SYMBOL || LA276_0 == INSERT_SYMBOL || LA276_0 == INTERVAL_SYMBOL || LA276_0 == LEFT_SYMBOL || LA276_0 == MATCH_SYMBOL || LA276_0 == MAX_SYMBOL || LA276_0 == MIN_SYMBOL || LA276_0 == MOD_SYMBOL || LA276_0 == NCHAR_TEXT || ((LA276_0 >= NOT2_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 <= 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 >= UTC_DATE_SYMBOL) && (LA276_0 <= UTC_TIME_SYMBOL)) || LA276_0 == VALUES_SYMBOL || LA276_0 == VARIANCE_SYMBOL || LA276_0 == VAR_SAMP_SYMBOL || ((LA276_0 >= AT_AT_SIGN_SYMBOL) && (LA276_0 <= AT_TEXT_SUFFIX)) || ((LA276_0 >= BACK_TICK_QUOTED_ID) && (LA276_0 <= BIN_NUMBER)) || LA276_0 == BITWISE_NOT_OPERATOR || ((LA276_0 >= BIT_AND_SYMBOL) && (LA276_0 <= BIT_XOR_SYMBOL)) || LA276_0 == DECIMAL_NUMBER || LA276_0 == DOT_SYMBOL || LA276_0 == DOUBLE_QUOTED_TEXT || LA276_0 == FLOAT_NUMBER || ((LA276_0 >= HEX_NUMBER) && (LA276_0 <= IDENTIFIER)) || LA276_0 == INT_NUMBER || LA276_0 == LOGICAL_NOT_OPERATOR || ((LA276_0 >= LONG_NUMBER) && (LA276_0 <= MINUS_OPERATOR)) || LA276_0 == PLUS_OPERATOR || ((LA276_0 >= ULONGLONG_NUMBER) && (LA276_0 <= UNDERSCORE_CHARSET))))
                    {
                        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:1180:3: expression
            	    {
            	        FOLLOWPUSH(FOLLOW_expression_in_values4595);
            	        expression834=expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulevaluesEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression834.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1180:16: DEFAULT_SYMBOL
            	    {
            	        DEFAULT_SYMBOL835 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_values4599);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulevaluesEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DEFAULT_SYMBOL835_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL835));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL835_tree);
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:1180: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:1180:33: COMMA_SYMBOL ( expression | DEFAULT_SYMBOL )
            	    {
            	        COMMA_SYMBOL836 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_values4603);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulevaluesEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL836_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL836));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL836_tree);
            	        }

            	        // MySQL.g:1180:46: ( expression | DEFAULT_SYMBOL )
            	        {
            	            int alt277=2;
            	            {
            	                int LA277_0 = LA(1);
            	                if ( (((LA277_0 >= ACCOUNT_SYMBOL) && (LA277_0 <= YEAR_SYMBOL)) || LA277_0 == BINARY_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 == EXISTS_SYMBOL || ((LA277_0 >= EXTRACT_SYMBOL) && (LA277_0 <= FALSE_SYMBOL)) || LA277_0 == GROUP_CONCAT_SYMBOL || LA277_0 == IF_SYMBOL || LA277_0 == INSERT_SYMBOL || LA277_0 == INTERVAL_SYMBOL || LA277_0 == LEFT_SYMBOL || LA277_0 == MATCH_SYMBOL || LA277_0 == MAX_SYMBOL || LA277_0 == MIN_SYMBOL || LA277_0 == MOD_SYMBOL || LA277_0 == NCHAR_TEXT || ((LA277_0 >= NOT2_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 <= 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 >= UTC_DATE_SYMBOL) && (LA277_0 <= UTC_TIME_SYMBOL)) || LA277_0 == VALUES_SYMBOL || LA277_0 == VARIANCE_SYMBOL || LA277_0 == VAR_SAMP_SYMBOL || ((LA277_0 >= AT_AT_SIGN_SYMBOL) && (LA277_0 <= AT_TEXT_SUFFIX)) || ((LA277_0 >= BACK_TICK_QUOTED_ID) && (LA277_0 <= BIN_NUMBER)) || LA277_0 == BITWISE_NOT_OPERATOR || ((LA277_0 >= BIT_AND_SYMBOL) && (LA277_0 <= BIT_XOR_SYMBOL)) || LA277_0 == DECIMAL_NUMBER || LA277_0 == DOT_SYMBOL || LA277_0 == DOUBLE_QUOTED_TEXT || LA277_0 == FLOAT_NUMBER || ((LA277_0 >= HEX_NUMBER) && (LA277_0 <= IDENTIFIER)) || LA277_0 == INT_NUMBER || LA277_0 == LOGICAL_NOT_OPERATOR || ((LA277_0 >= LONG_NUMBER) && (LA277_0 <= MINUS_OPERATOR)) || LA277_0 == PLUS_OPERATOR || ((LA277_0 >= ULONGLONG_NUMBER) && (LA277_0 <= UNDERSCORE_CHARSET))))
            	                {
            	                    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:1180:47: expression
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_expression_in_values4606);
            	        	        expression837=expression(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulevaluesEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression837.tree);

            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:1180:60: DEFAULT_SYMBOL
            	        	    {
            	        	        DEFAULT_SYMBOL838 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_values4610);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulevaluesEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        DEFAULT_SYMBOL838_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL838));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL838_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:1183: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_SYMBOL839;
    pANTLR3_COMMON_TOKEN    DUPLICATE_SYMBOL840;
    pANTLR3_COMMON_TOKEN    KEY_SYMBOL841;
    pANTLR3_COMMON_TOKEN    UPDATE_SYMBOL842;
    MySQLParser_column_assignment_list_with_default_return column_assignment_list_with_default843;
    #undef	RETURN_TYPE_column_assignment_list_with_default843
    #define	RETURN_TYPE_column_assignment_list_with_default843 MySQLParser_column_assignment_list_with_default_return

    pANTLR3_BASE_TREE ON_SYMBOL839_tree;
    pANTLR3_BASE_TREE DUPLICATE_SYMBOL840_tree;
    pANTLR3_BASE_TREE KEY_SYMBOL841_tree;
    pANTLR3_BASE_TREE UPDATE_SYMBOL842_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ON_SYMBOL839       = NULL;
    DUPLICATE_SYMBOL840       = NULL;
    KEY_SYMBOL841       = NULL;
    UPDATE_SYMBOL842       = NULL;
    column_assignment_list_with_default843.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ON_SYMBOL839_tree   = NULL;
    DUPLICATE_SYMBOL840_tree   = NULL;
    KEY_SYMBOL841_tree   = NULL;
    UPDATE_SYMBOL842_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1183:21: ( ON_SYMBOL DUPLICATE_SYMBOL KEY_SYMBOL UPDATE_SYMBOL column_assignment_list_with_default )
        // MySQL.g:1184:2: ON_SYMBOL DUPLICATE_SYMBOL KEY_SYMBOL UPDATE_SYMBOL column_assignment_list_with_default
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            ON_SYMBOL839 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_duplicate_key_update4622);
            if  (HASEXCEPTION())
            {
                goto ruleduplicate_key_updateEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ON_SYMBOL839_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ON_SYMBOL839));
            ADAPTOR->addChild(ADAPTOR, root_0, ON_SYMBOL839_tree);
            }

            DUPLICATE_SYMBOL840 = (pANTLR3_COMMON_TOKEN) MATCHT(DUPLICATE_SYMBOL, &FOLLOW_DUPLICATE_SYMBOL_in_duplicate_key_update4624);
            if  (HASEXCEPTION())
            {
                goto ruleduplicate_key_updateEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            DUPLICATE_SYMBOL840_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DUPLICATE_SYMBOL840));
            ADAPTOR->addChild(ADAPTOR, root_0, DUPLICATE_SYMBOL840_tree);
            }

            KEY_SYMBOL841 = (pANTLR3_COMMON_TOKEN) MATCHT(KEY_SYMBOL, &FOLLOW_KEY_SYMBOL_in_duplicate_key_update4626);
            if  (HASEXCEPTION())
            {
                goto ruleduplicate_key_updateEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            KEY_SYMBOL841_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, KEY_SYMBOL841));
            ADAPTOR->addChild(ADAPTOR, root_0, KEY_SYMBOL841_tree);
            }

            UPDATE_SYMBOL842 = (pANTLR3_COMMON_TOKEN) MATCHT(UPDATE_SYMBOL, &FOLLOW_UPDATE_SYMBOL_in_duplicate_key_update4628);
            if  (HASEXCEPTION())
            {
                goto ruleduplicate_key_updateEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            UPDATE_SYMBOL842_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UPDATE_SYMBOL842));
            ADAPTOR->addChild(ADAPTOR, root_0, UPDATE_SYMBOL842_tree);
            }

            FOLLOWPUSH(FOLLOW_column_assignment_list_with_default_in_duplicate_key_update4630);
            column_assignment_list_with_default843=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_default843.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:1189: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_SYMBOL844;
    pANTLR3_COMMON_TOKEN    set846;
    pANTLR3_COMMON_TOKEN    LOCAL_SYMBOL847;
    pANTLR3_COMMON_TOKEN    INFILE_SYMBOL848;
    pANTLR3_COMMON_TOKEN    set850;
    pANTLR3_COMMON_TOKEN    INTO_SYMBOL851;
    pANTLR3_COMMON_TOKEN    TABLE_SYMBOL852;
    MySQLParser_data_or_xml_return data_or_xml845;
    #undef	RETURN_TYPE_data_or_xml845
    #define	RETURN_TYPE_data_or_xml845 MySQLParser_data_or_xml_return

    MySQLParser_string_literal_return string_literal849;
    #undef	RETURN_TYPE_string_literal849
    #define	RETURN_TYPE_string_literal849 MySQLParser_string_literal_return

    MySQLParser_table_ref_return table_ref853;
    #undef	RETURN_TYPE_table_ref853
    #define	RETURN_TYPE_table_ref853 MySQLParser_table_ref_return

    MySQLParser_use_partition_return use_partition854;
    #undef	RETURN_TYPE_use_partition854
    #define	RETURN_TYPE_use_partition854 MySQLParser_use_partition_return

    MySQLParser_charset_clause_return charset_clause855;
    #undef	RETURN_TYPE_charset_clause855
    #define	RETURN_TYPE_charset_clause855 MySQLParser_charset_clause_return

    MySQLParser_xml_rows_identified_by_return xml_rows_identified_by856;
    #undef	RETURN_TYPE_xml_rows_identified_by856
    #define	RETURN_TYPE_xml_rows_identified_by856 MySQLParser_xml_rows_identified_by_return

    MySQLParser_fields_clause_return fields_clause857;
    #undef	RETURN_TYPE_fields_clause857
    #define	RETURN_TYPE_fields_clause857 MySQLParser_fields_clause_return

    MySQLParser_lines_clause_return lines_clause858;
    #undef	RETURN_TYPE_lines_clause858
    #define	RETURN_TYPE_lines_clause858 MySQLParser_lines_clause_return

    MySQLParser_load_data_file_tail_return load_data_file_tail859;
    #undef	RETURN_TYPE_load_data_file_tail859
    #define	RETURN_TYPE_load_data_file_tail859 MySQLParser_load_data_file_tail_return

    pANTLR3_BASE_TREE LOAD_SYMBOL844_tree;
    pANTLR3_BASE_TREE set846_tree;
    pANTLR3_BASE_TREE LOCAL_SYMBOL847_tree;
    pANTLR3_BASE_TREE INFILE_SYMBOL848_tree;
    pANTLR3_BASE_TREE set850_tree;
    pANTLR3_BASE_TREE INTO_SYMBOL851_tree;
    pANTLR3_BASE_TREE TABLE_SYMBOL852_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    LOAD_SYMBOL844       = NULL;
    set846       = NULL;
    LOCAL_SYMBOL847       = NULL;
    INFILE_SYMBOL848       = NULL;
    set850       = NULL;
    INTO_SYMBOL851       = NULL;
    TABLE_SYMBOL852       = NULL;
    data_or_xml845.tree = NULL;

    string_literal849.tree = NULL;

    table_ref853.tree = NULL;

    use_partition854.tree = NULL;

    charset_clause855.tree = NULL;

    xml_rows_identified_by856.tree = NULL;

    fields_clause857.tree = NULL;

    lines_clause858.tree = NULL;

    load_data_file_tail859.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    LOAD_SYMBOL844_tree   = NULL;
    set846_tree   = NULL;
    LOCAL_SYMBOL847_tree   = NULL;
    INFILE_SYMBOL848_tree   = NULL;
    set850_tree   = NULL;
    INTO_SYMBOL851_tree   = NULL;
    TABLE_SYMBOL852_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1189: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:1190: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_SYMBOL844 = (pANTLR3_COMMON_TOKEN) MATCHT(LOAD_SYMBOL, &FOLLOW_LOAD_SYMBOL_in_load_statement4641);
            if  (HASEXCEPTION())
            {
                goto ruleload_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            LOAD_SYMBOL844_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOAD_SYMBOL844))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, LOAD_SYMBOL844_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_data_or_xml_in_load_statement4644);
            data_or_xml845=data_or_xml(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleload_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, data_or_xml845.tree);

            // MySQL.g:1190: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:
            	    {
            	        set846=(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, set846))
            	            );
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

            	        }
            	        else
            	        {
            	            if (BACKTRACKING>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:1190:70: ( LOCAL_SYMBOL )?
            {
                int alt280=2;
                switch ( LA(1) )
                {
                    case LOCAL_SYMBOL:
                    	{
                    		alt280=1;
                    	}
                        break;
                }

                switch (alt280)
                {
            	case 1:
            	    // MySQL.g:1190:70: LOCAL_SYMBOL
            	    {
            	        LOCAL_SYMBOL847 = (pANTLR3_COMMON_TOKEN) MATCHT(LOCAL_SYMBOL, &FOLLOW_LOCAL_SYMBOL_in_load_statement4655);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleload_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        LOCAL_SYMBOL847_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOCAL_SYMBOL847));
            	        ADAPTOR->addChild(ADAPTOR, root_0, LOCAL_SYMBOL847_tree);
            	        }

            	    }
            	    break;

                }
            }

            INFILE_SYMBOL848 = (pANTLR3_COMMON_TOKEN) MATCHT(INFILE_SYMBOL, &FOLLOW_INFILE_SYMBOL_in_load_statement4658);
            if  (HASEXCEPTION())
            {
                goto ruleload_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            INFILE_SYMBOL848_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INFILE_SYMBOL848));
            ADAPTOR->addChild(ADAPTOR, root_0, INFILE_SYMBOL848_tree);
            }

            FOLLOWPUSH(FOLLOW_string_literal_in_load_statement4660);
            string_literal849=string_literal(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleload_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal849.tree);

            // MySQL.g:1191: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:
            	    {
            	        set850=(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, set850))
            	            );
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

            	        }
            	        else
            	        {
            	            if (BACKTRACKING>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_SYMBOL851 = (pANTLR3_COMMON_TOKEN) MATCHT(INTO_SYMBOL, &FOLLOW_INTO_SYMBOL_in_load_statement4673);
            if  (HASEXCEPTION())
            {
                goto ruleload_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            INTO_SYMBOL851_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTO_SYMBOL851));
            ADAPTOR->addChild(ADAPTOR, root_0, INTO_SYMBOL851_tree);
            }

            TABLE_SYMBOL852 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLE_SYMBOL, &FOLLOW_TABLE_SYMBOL_in_load_statement4675);
            if  (HASEXCEPTION())
            {
                goto ruleload_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            TABLE_SYMBOL852_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLE_SYMBOL852));
            ADAPTOR->addChild(ADAPTOR, root_0, TABLE_SYMBOL852_tree);
            }

            FOLLOWPUSH(FOLLOW_table_ref_in_load_statement4677);
            table_ref853=table_ref(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleload_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref853.tree);

            // MySQL.g:1192: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:1192:3: use_partition
            	    {
            	        FOLLOWPUSH(FOLLOW_use_partition_in_load_statement4681);
            	        use_partition854=use_partition(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleload_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, use_partition854.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1192:18: ( charset_clause )?
            {
                int alt283=2;
                switch ( LA(1) )
                {
                    case CHARSET_SYMBOL:
                    case CHAR_SYMBOL:
                    	{
                    		alt283=1;
                    	}
                        break;
                }

                switch (alt283)
                {
            	case 1:
            	    // MySQL.g:1192:18: charset_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_charset_clause_in_load_statement4684);
            	        charset_clause855=charset_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleload_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset_clause855.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1193: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:1193:3: xml_rows_identified_by
            	    {
            	        FOLLOWPUSH(FOLLOW_xml_rows_identified_by_in_load_statement4689);
            	        xml_rows_identified_by856=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_by856.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1194:3: ( fields_clause )?
            {
                int alt285=2;
                switch ( LA(1) )
                {
                    case COLUMNS_SYMBOL:
                    	{
                    		alt285=1;
                    	}
                        break;
                }

                switch (alt285)
                {
            	case 1:
            	    // MySQL.g:1194:3: fields_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_fields_clause_in_load_statement4694);
            	        fields_clause857=fields_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleload_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, fields_clause857.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1194:18: ( lines_clause )?
            {
                int alt286=2;
                switch ( LA(1) )
                {
                    case LINES_SYMBOL:
                    	{
                    		alt286=1;
                    	}
                        break;
                }

                switch (alt286)
                {
            	case 1:
            	    // MySQL.g:1194:18: lines_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_lines_clause_in_load_statement4697);
            	        lines_clause858=lines_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleload_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, lines_clause858.tree);

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_load_data_file_tail_in_load_statement4702);
            load_data_file_tail859=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_tail859.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:1198: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_SYMBOL860;
    pANTLR3_COMMON_TOKEN    XML_SYMBOL861;

    pANTLR3_BASE_TREE DATA_SYMBOL860_tree;
    pANTLR3_BASE_TREE XML_SYMBOL861_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DATA_SYMBOL860       = NULL;
    XML_SYMBOL861       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DATA_SYMBOL860_tree   = NULL;
    XML_SYMBOL861_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1198: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:1199:2: DATA_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DATA_SYMBOL860 = (pANTLR3_COMMON_TOKEN) MATCHT(DATA_SYMBOL, &FOLLOW_DATA_SYMBOL_in_data_or_xml4711);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_or_xmlEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DATA_SYMBOL860_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATA_SYMBOL860));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DATA_SYMBOL860_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1200: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_SYMBOL861 = (pANTLR3_COMMON_TOKEN) MATCHT(XML_SYMBOL, &FOLLOW_XML_SYMBOL_in_data_or_xml4718);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_or_xmlEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        XML_SYMBOL861_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, XML_SYMBOL861));
        	        ADAPTOR->addChild(ADAPTOR, root_0, XML_SYMBOL861_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:1203: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_SYMBOL862;
    pANTLR3_COMMON_TOKEN    IDENTIFIED_SYMBOL863;
    pANTLR3_COMMON_TOKEN    BY_SYMBOL864;
    MySQLParser_text_string_return text_string865;
    #undef	RETURN_TYPE_text_string865
    #define	RETURN_TYPE_text_string865 MySQLParser_text_string_return

    pANTLR3_BASE_TREE ROWS_SYMBOL862_tree;
    pANTLR3_BASE_TREE IDENTIFIED_SYMBOL863_tree;
    pANTLR3_BASE_TREE BY_SYMBOL864_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ROWS_SYMBOL862       = NULL;
    IDENTIFIED_SYMBOL863       = NULL;
    BY_SYMBOL864       = NULL;
    text_string865.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ROWS_SYMBOL862_tree   = NULL;
    IDENTIFIED_SYMBOL863_tree   = NULL;
    BY_SYMBOL864_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1203:23: ({...}? => ROWS_SYMBOL IDENTIFIED_SYMBOL BY_SYMBOL text_string )
        // MySQL.g:1204: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_SYMBOL862 = (pANTLR3_COMMON_TOKEN) MATCHT(ROWS_SYMBOL, &FOLLOW_ROWS_SYMBOL_in_xml_rows_identified_by4731);
            if  (HASEXCEPTION())
            {
                goto rulexml_rows_identified_byEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ROWS_SYMBOL862_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ROWS_SYMBOL862));
            ADAPTOR->addChild(ADAPTOR, root_0, ROWS_SYMBOL862_tree);
            }

            IDENTIFIED_SYMBOL863 = (pANTLR3_COMMON_TOKEN) MATCHT(IDENTIFIED_SYMBOL, &FOLLOW_IDENTIFIED_SYMBOL_in_xml_rows_identified_by4733);
            if  (HASEXCEPTION())
            {
                goto rulexml_rows_identified_byEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            IDENTIFIED_SYMBOL863_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IDENTIFIED_SYMBOL863));
            ADAPTOR->addChild(ADAPTOR, root_0, IDENTIFIED_SYMBOL863_tree);
            }

            BY_SYMBOL864 = (pANTLR3_COMMON_TOKEN) MATCHT(BY_SYMBOL, &FOLLOW_BY_SYMBOL_in_xml_rows_identified_by4735);
            if  (HASEXCEPTION())
            {
                goto rulexml_rows_identified_byEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            BY_SYMBOL864_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BY_SYMBOL864));
            ADAPTOR->addChild(ADAPTOR, root_0, BY_SYMBOL864_tree);
            }

            FOLLOWPUSH(FOLLOW_text_string_in_xml_rows_identified_by4737);
            text_string865=text_string(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulexml_rows_identified_byEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string865.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:1207: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_SYMBOL866;
    pANTLR3_COMMON_TOKEN    INT_NUMBER867;
    pANTLR3_COMMON_TOKEN    set868;
    pANTLR3_COMMON_TOKEN    SET_SYMBOL870;
    MySQLParser_load_data_file_target_list_return load_data_file_target_list869;
    #undef	RETURN_TYPE_load_data_file_target_list869
    #define	RETURN_TYPE_load_data_file_target_list869 MySQLParser_load_data_file_target_list_return

    MySQLParser_column_assignment_list_with_default_return column_assignment_list_with_default871;
    #undef	RETURN_TYPE_column_assignment_list_with_default871
    #define	RETURN_TYPE_column_assignment_list_with_default871 MySQLParser_column_assignment_list_with_default_return

    pANTLR3_BASE_TREE IGNORE_SYMBOL866_tree;
    pANTLR3_BASE_TREE INT_NUMBER867_tree;
    pANTLR3_BASE_TREE set868_tree;
    pANTLR3_BASE_TREE SET_SYMBOL870_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    IGNORE_SYMBOL866       = NULL;
    INT_NUMBER867       = NULL;
    set868       = NULL;
    SET_SYMBOL870       = NULL;
    load_data_file_target_list869.tree = NULL;

    column_assignment_list_with_default871.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    IGNORE_SYMBOL866_tree   = NULL;
    INT_NUMBER867_tree   = NULL;
    set868_tree   = NULL;
    SET_SYMBOL870_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1207:20: ( ( IGNORE_SYMBOL INT_NUMBER ( LINES_SYMBOL | ROWS_SYMBOL ) )? ( load_data_file_target_list )? ( SET_SYMBOL column_assignment_list_with_default )? )
        // MySQL.g:1208: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:1208: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:1208:3: IGNORE_SYMBOL INT_NUMBER ( LINES_SYMBOL | ROWS_SYMBOL )
            	    {
            	        IGNORE_SYMBOL866 = (pANTLR3_COMMON_TOKEN) MATCHT(IGNORE_SYMBOL, &FOLLOW_IGNORE_SYMBOL_in_load_data_file_tail4747);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleload_data_file_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        IGNORE_SYMBOL866_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IGNORE_SYMBOL866));
            	        ADAPTOR->addChild(ADAPTOR, root_0, IGNORE_SYMBOL866_tree);
            	        }

            	        INT_NUMBER867 = (pANTLR3_COMMON_TOKEN) MATCHT(INT_NUMBER, &FOLLOW_INT_NUMBER_in_load_data_file_tail4749);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleload_data_file_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        INT_NUMBER867_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INT_NUMBER867));
            	        ADAPTOR->addChild(ADAPTOR, root_0, INT_NUMBER867_tree);
            	        }

            	        set868=(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, set868))
            	            );
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

            	        }
            	        else
            	        {
            	            if (BACKTRACKING>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:1208: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:1208:59: load_data_file_target_list
            	    {
            	        FOLLOWPUSH(FOLLOW_load_data_file_target_list_in_load_data_file_tail4761);
            	        load_data_file_target_list869=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_list869.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1208: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:1208:88: SET_SYMBOL column_assignment_list_with_default
            	    {
            	        SET_SYMBOL870 = (pANTLR3_COMMON_TOKEN) MATCHT(SET_SYMBOL, &FOLLOW_SET_SYMBOL_in_load_data_file_tail4765);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleload_data_file_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SET_SYMBOL870_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SET_SYMBOL870));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SET_SYMBOL870_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_column_assignment_list_with_default_in_load_data_file_tail4767);
            	        column_assignment_list_with_default871=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_default871.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:1211: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_SYMBOL872;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL874;
    MySQLParser_field_or_variable_list_return field_or_variable_list873;
    #undef	RETURN_TYPE_field_or_variable_list873
    #define	RETURN_TYPE_field_or_variable_list873 MySQLParser_field_or_variable_list_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL872_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL874_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL872       = NULL;
    CLOSE_PAR_SYMBOL874       = NULL;
    field_or_variable_list873.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL872_tree   = NULL;
    CLOSE_PAR_SYMBOL874_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1211:27: ( OPEN_PAR_SYMBOL ( field_or_variable_list )? CLOSE_PAR_SYMBOL )
        // MySQL.g:1212:2: OPEN_PAR_SYMBOL ( field_or_variable_list )? CLOSE_PAR_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            OPEN_PAR_SYMBOL872 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_load_data_file_target_list4778);
            if  (HASEXCEPTION())
            {
                goto ruleload_data_file_target_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL872_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL872));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL872_tree);
            }

            // MySQL.g:1212: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:1212:18: field_or_variable_list
            	    {
            	        FOLLOWPUSH(FOLLOW_field_or_variable_list_in_load_data_file_target_list4780);
            	        field_or_variable_list873=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_list873.tree);

            	    }
            	    break;

                }
            }

            CLOSE_PAR_SYMBOL874 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_load_data_file_target_list4783);
            if  (HASEXCEPTION())
            {
                goto ruleload_data_file_target_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL874_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL874));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL874_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:1215: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_SYMBOL877;
    MySQLParser_column_ref_return column_ref875;
    #undef	RETURN_TYPE_column_ref875
    #define	RETURN_TYPE_column_ref875 MySQLParser_column_ref_return

    MySQLParser_user_variable_return user_variable876;
    #undef	RETURN_TYPE_user_variable876
    #define	RETURN_TYPE_user_variable876 MySQLParser_user_variable_return

    MySQLParser_column_ref_return column_ref878;
    #undef	RETURN_TYPE_column_ref878
    #define	RETURN_TYPE_column_ref878 MySQLParser_column_ref_return

    MySQLParser_user_variable_return user_variable879;
    #undef	RETURN_TYPE_user_variable879
    #define	RETURN_TYPE_user_variable879 MySQLParser_user_variable_return

    pANTLR3_BASE_TREE COMMA_SYMBOL877_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL877       = NULL;
    column_ref875.tree = NULL;

    user_variable876.tree = NULL;

    column_ref878.tree = NULL;

    user_variable879.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL877_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1215:23: ( ( column_ref | user_variable ) ( COMMA_SYMBOL ( column_ref | user_variable ) )* )
        // MySQL.g:1216:2: ( column_ref | user_variable ) ( COMMA_SYMBOL ( column_ref | user_variable ) )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:1216: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:1216:3: column_ref
            	    {
            	        FOLLOWPUSH(FOLLOW_column_ref_in_field_or_variable_list4793);
            	        column_ref875=column_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulefield_or_variable_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, column_ref875.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1216:16: user_variable
            	    {
            	        FOLLOWPUSH(FOLLOW_user_variable_in_field_or_variable_list4797);
            	        user_variable876=user_variable(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulefield_or_variable_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user_variable876.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1216: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:1216:32: COMMA_SYMBOL ( column_ref | user_variable )
            	    {
            	        COMMA_SYMBOL877 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_field_or_variable_list4801);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulefield_or_variable_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL877_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL877));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL877_tree);
            	        }

            	        // MySQL.g:1216: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:1216:46: column_ref
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_column_ref_in_field_or_variable_list4804);
            	        	        column_ref878=column_ref(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulefield_or_variable_listEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, column_ref878.tree);

            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:1216:59: user_variable
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_user_variable_in_field_or_variable_list4808);
            	        	        user_variable879=user_variable(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulefield_or_variable_listEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user_variable879.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:1221: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_SYMBOL880;
    pANTLR3_COMMON_TOKEN    set881;
    pANTLR3_COMMON_TOKEN    INTO_SYMBOL882;
    MySQLParser_table_ref_return table_ref883;
    #undef	RETURN_TYPE_table_ref883
    #define	RETURN_TYPE_table_ref883 MySQLParser_table_ref_return

    MySQLParser_use_partition_return use_partition884;
    #undef	RETURN_TYPE_use_partition884
    #define	RETURN_TYPE_use_partition884 MySQLParser_use_partition_return

    MySQLParser_insert_field_spec_return insert_field_spec885;
    #undef	RETURN_TYPE_insert_field_spec885
    #define	RETURN_TYPE_insert_field_spec885 MySQLParser_insert_field_spec_return

    pANTLR3_BASE_TREE REPLACE_SYMBOL880_tree;
    pANTLR3_BASE_TREE set881_tree;
    pANTLR3_BASE_TREE INTO_SYMBOL882_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    REPLACE_SYMBOL880       = NULL;
    set881       = NULL;
    INTO_SYMBOL882       = NULL;
    table_ref883.tree = NULL;

    use_partition884.tree = NULL;

    insert_field_spec885.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    REPLACE_SYMBOL880_tree   = NULL;
    set881_tree   = NULL;
    INTO_SYMBOL882_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1221:18: ( REPLACE_SYMBOL ^ ( LOW_PRIORITY_SYMBOL | DELAYED_SYMBOL )? ( INTO_SYMBOL )? table_ref ( use_partition )? insert_field_spec )
        // MySQL.g:1222: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_SYMBOL880 = (pANTLR3_COMMON_TOKEN) MATCHT(REPLACE_SYMBOL, &FOLLOW_REPLACE_SYMBOL_in_replace_statement4822);
            if  (HASEXCEPTION())
            {
                goto rulereplace_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            REPLACE_SYMBOL880_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REPLACE_SYMBOL880))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, REPLACE_SYMBOL880_tree, root_0));
            }

            // MySQL.g:1222: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:
            	    {
            	        set881=(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, set881))
            	            );
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

            	        }
            	        else
            	        {
            	            if (BACKTRACKING>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:1222:58: ( INTO_SYMBOL )?
            {
                int alt296=2;
                switch ( LA(1) )
                {
                    case INTO_SYMBOL:
                    	{
                    		alt296=1;
                    	}
                        break;
                }

                switch (alt296)
                {
            	case 1:
            	    // MySQL.g:1222:58: INTO_SYMBOL
            	    {
            	        INTO_SYMBOL882 = (pANTLR3_COMMON_TOKEN) MATCHT(INTO_SYMBOL, &FOLLOW_INTO_SYMBOL_in_replace_statement4834);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulereplace_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        INTO_SYMBOL882_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTO_SYMBOL882));
            	        ADAPTOR->addChild(ADAPTOR, root_0, INTO_SYMBOL882_tree);
            	        }

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_table_ref_in_replace_statement4837);
            table_ref883=table_ref(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulereplace_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref883.tree);

            // MySQL.g:1223: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:1223:3: use_partition
            	    {
            	        FOLLOWPUSH(FOLLOW_use_partition_in_replace_statement4841);
            	        use_partition884=use_partition(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulereplace_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, use_partition884.tree);

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_insert_field_spec_in_replace_statement4844);
            insert_field_spec885=insert_field_spec(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulereplace_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, insert_field_spec885.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:1228: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_SYMBOL886;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL889;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL891;
    MySQLParser_select_part2_return select_part2887;
    #undef	RETURN_TYPE_select_part2887
    #define	RETURN_TYPE_select_part2887 MySQLParser_select_part2_return

    MySQLParser_union_clause_return union_clause888;
    #undef	RETURN_TYPE_union_clause888
    #define	RETURN_TYPE_union_clause888 MySQLParser_union_clause_return

    MySQLParser_select_paren_return select_paren890;
    #undef	RETURN_TYPE_select_paren890
    #define	RETURN_TYPE_select_paren890 MySQLParser_select_paren_return

    MySQLParser_union_or_order_by_or_limit_return union_or_order_by_or_limit892;
    #undef	RETURN_TYPE_union_or_order_by_or_limit892
    #define	RETURN_TYPE_union_or_order_by_or_limit892 MySQLParser_union_or_order_by_or_limit_return

    pANTLR3_BASE_TREE SELECT_SYMBOL886_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL889_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL891_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SELECT_SYMBOL886       = NULL;
    OPEN_PAR_SYMBOL889       = NULL;
    CLOSE_PAR_SYMBOL891       = NULL;
    select_part2887.tree = NULL;

    union_clause888.tree = NULL;

    select_paren890.tree = NULL;

    union_or_order_by_or_limit892.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SELECT_SYMBOL886_tree   = NULL;
    OPEN_PAR_SYMBOL889_tree   = NULL;
    CLOSE_PAR_SYMBOL891_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1228: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:1229:2: SELECT_SYMBOL ^ select_part2 ( union_clause )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SELECT_SYMBOL886 = (pANTLR3_COMMON_TOKEN) MATCHT(SELECT_SYMBOL, &FOLLOW_SELECT_SYMBOL_in_select_statement4855);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SELECT_SYMBOL886_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SELECT_SYMBOL886))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, SELECT_SYMBOL886_tree, root_0));
        	        }

        	        FOLLOWPUSH(FOLLOW_select_part2_in_select_statement4858);
        	        select_part2887=select_part2(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_part2887.tree);

        	        // MySQL.g:1229:30: ( union_clause )?
        	        {
        	            int alt298=2;
        	            switch ( LA(1) )
        	            {
        	                case UNION_SYMBOL:
        	                	{
        	                		alt298=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt298)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1229:30: union_clause
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_union_clause_in_select_statement4860);
        	        	        union_clause888=union_clause(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleselect_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, union_clause888.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1230: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_SYMBOL889 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_select_statement4866);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL889_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL889));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL889_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_select_paren_in_select_statement4868);
        	        select_paren890=select_paren(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_paren890.tree);

        	        CLOSE_PAR_SYMBOL891 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_select_statement4870);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL891_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL891));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL891_tree);
        	        }

        	        // MySQL.g:1230: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:1230:50: union_or_order_by_or_limit
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_union_or_order_by_or_limit_in_select_statement4872);
        	        	        union_or_order_by_or_limit892=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_limit892.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:1233: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_SYMBOL893;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL895;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL897;
    MySQLParser_select_part2_return select_part2894;
    #undef	RETURN_TYPE_select_part2894
    #define	RETURN_TYPE_select_part2894 MySQLParser_select_part2_return

    MySQLParser_select_paren_return select_paren896;
    #undef	RETURN_TYPE_select_paren896
    #define	RETURN_TYPE_select_paren896 MySQLParser_select_paren_return

    pANTLR3_BASE_TREE SELECT_SYMBOL893_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL895_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL897_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SELECT_SYMBOL893       = NULL;
    OPEN_PAR_SYMBOL895       = NULL;
    CLOSE_PAR_SYMBOL897       = NULL;
    select_part2894.tree = NULL;

    select_paren896.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SELECT_SYMBOL893_tree   = NULL;
    OPEN_PAR_SYMBOL895_tree   = NULL;
    CLOSE_PAR_SYMBOL897_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1233: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:1234:2: SELECT_SYMBOL ^ select_part2
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SELECT_SYMBOL893 = (pANTLR3_COMMON_TOKEN) MATCHT(SELECT_SYMBOL, &FOLLOW_SELECT_SYMBOL_in_select_paren4882);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_parenEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SELECT_SYMBOL893_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SELECT_SYMBOL893))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, SELECT_SYMBOL893_tree, root_0));
        	        }

        	        FOLLOWPUSH(FOLLOW_select_part2_in_select_paren4885);
        	        select_part2894=select_part2(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_parenEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_part2894.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1235:4: OPEN_PAR_SYMBOL select_paren CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        OPEN_PAR_SYMBOL895 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_select_paren4890);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_parenEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL895_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL895));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL895_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_select_paren_in_select_paren4892);
        	        select_paren896=select_paren(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_parenEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_paren896.tree);

        	        CLOSE_PAR_SYMBOL897 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_select_paren4894);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_parenEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL897_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL897));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL897_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:1238: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_clause898;
    #undef	RETURN_TYPE_from_clause898
    #define	RETURN_TYPE_from_clause898 MySQLParser_from_clause_return

    MySQLParser_where_clause_return where_clause899;
    #undef	RETURN_TYPE_where_clause899
    #define	RETURN_TYPE_where_clause899 MySQLParser_where_clause_return

    MySQLParser_group_by_clause_return group_by_clause900;
    #undef	RETURN_TYPE_group_by_clause900
    #define	RETURN_TYPE_group_by_clause900 MySQLParser_group_by_clause_return

    MySQLParser_having_clause_return having_clause901;
    #undef	RETURN_TYPE_having_clause901
    #define	RETURN_TYPE_having_clause901 MySQLParser_having_clause_return

    MySQLParser_order_by_clause_return order_by_clause902;
    #undef	RETURN_TYPE_order_by_clause902
    #define	RETURN_TYPE_order_by_clause902 MySQLParser_order_by_clause_return

    MySQLParser_limit_clause_return limit_clause903;
    #undef	RETURN_TYPE_limit_clause903
    #define	RETURN_TYPE_limit_clause903 MySQLParser_limit_clause_return

    MySQLParser_procedure_analyse_clause_return procedure_analyse_clause904;
    #undef	RETURN_TYPE_procedure_analyse_clause904
    #define	RETURN_TYPE_procedure_analyse_clause904 MySQLParser_procedure_analyse_clause_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    from_clause898.tree = NULL;

    where_clause899.tree = NULL;

    group_by_clause900.tree = NULL;

    having_clause901.tree = NULL;

    order_by_clause902.tree = NULL;

    limit_clause903.tree = NULL;

    procedure_analyse_clause904.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:1238:12: ( from_clause ( where_clause )? ( group_by_clause )? ( having_clause )? ( order_by_clause )? ( limit_clause )? ( procedure_analyse_clause )? )
        // MySQL.g:1239: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_from4903);
            from_clause898=from_clause(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleselect_fromEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, from_clause898.tree);

            // MySQL.g:1239:14: ( where_clause )?
            {
                int alt302=2;
                switch ( LA(1) )
                {
                    case WHERE_SYMBOL:
                    	{
                    		alt302=1;
                    	}
                        break;
                }

                switch (alt302)
                {
            	case 1:
            	    // MySQL.g:1239:14: where_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_where_clause_in_select_from4905);
            	        where_clause899=where_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_fromEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, where_clause899.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1239:28: ( group_by_clause )?
            {
                int alt303=2;
                switch ( LA(1) )
                {
                    case GROUP_SYMBOL:
                    	{
                    		alt303=1;
                    	}
                        break;
                }

                switch (alt303)
                {
            	case 1:
            	    // MySQL.g:1239:28: group_by_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_group_by_clause_in_select_from4908);
            	        group_by_clause900=group_by_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_fromEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, group_by_clause900.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1239:45: ( having_clause )?
            {
                int alt304=2;
                switch ( LA(1) )
                {
                    case HAVING_SYMBOL:
                    	{
                    		alt304=1;
                    	}
                        break;
                }

                switch (alt304)
                {
            	case 1:
            	    // MySQL.g:1239:45: having_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_having_clause_in_select_from4911);
            	        having_clause901=having_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_fromEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, having_clause901.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1239:60: ( order_by_clause )?
            {
                int alt305=2;
                switch ( LA(1) )
                {
                    case ORDER_SYMBOL:
                    	{
                    		alt305=1;
                    	}
                        break;
                }

                switch (alt305)
                {
            	case 1:
            	    // MySQL.g:1239:60: order_by_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_order_by_clause_in_select_from4914);
            	        order_by_clause902=order_by_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_fromEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, order_by_clause902.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1239:77: ( limit_clause )?
            {
                int alt306=2;
                switch ( LA(1) )
                {
                    case LIMIT_SYMBOL:
                    	{
                    		alt306=1;
                    	}
                        break;
                }

                switch (alt306)
                {
            	case 1:
            	    // MySQL.g:1239:77: limit_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_limit_clause_in_select_from4917);
            	        limit_clause903=limit_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_fromEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, limit_clause903.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1239:91: ( procedure_analyse_clause )?
            {
                int alt307=2;
                switch ( LA(1) )
                {
                    case PROCEDURE_SYMBOL:
                    	{
                    		alt307=1;
                    	}
                        break;
                }

                switch (alt307)
                {
            	case 1:
            	    // MySQL.g:1239:91: procedure_analyse_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_procedure_analyse_clause_in_select_from4920);
            	        procedure_analyse_clause904=procedure_analyse_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_fromEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, procedure_analyse_clause904.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:1242: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_option905;
    #undef	RETURN_TYPE_select_option905
    #define	RETURN_TYPE_select_option905 MySQLParser_select_option_return

    MySQLParser_select_item_list_return select_item_list906;
    #undef	RETURN_TYPE_select_item_list906
    #define	RETURN_TYPE_select_item_list906 MySQLParser_select_item_list_return

    MySQLParser_order_by_clause_return order_by_clause907;
    #undef	RETURN_TYPE_order_by_clause907
    #define	RETURN_TYPE_order_by_clause907 MySQLParser_order_by_clause_return

    MySQLParser_limit_clause_return limit_clause908;
    #undef	RETURN_TYPE_limit_clause908
    #define	RETURN_TYPE_limit_clause908 MySQLParser_limit_clause_return

    MySQLParser_into_clause_return into_clause909;
    #undef	RETURN_TYPE_into_clause909
    #define	RETURN_TYPE_into_clause909 MySQLParser_into_clause_return

    MySQLParser_select_from_return select_from910;
    #undef	RETURN_TYPE_select_from910
    #define	RETURN_TYPE_select_from910 MySQLParser_select_from_return

    MySQLParser_select_from_return select_from911;
    #undef	RETURN_TYPE_select_from911
    #define	RETURN_TYPE_select_from911 MySQLParser_select_from_return

    MySQLParser_into_clause_return into_clause912;
    #undef	RETURN_TYPE_into_clause912
    #define	RETURN_TYPE_into_clause912 MySQLParser_into_clause_return

    MySQLParser_select_lock_type_return select_lock_type913;
    #undef	RETURN_TYPE_select_lock_type913
    #define	RETURN_TYPE_select_lock_type913 MySQLParser_select_lock_type_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    select_option905.tree = NULL;

    select_item_list906.tree = NULL;

    order_by_clause907.tree = NULL;

    limit_clause908.tree = NULL;

    into_clause909.tree = NULL;

    select_from910.tree = NULL;

    select_from911.tree = NULL;

    into_clause912.tree = NULL;

    select_lock_type913.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:1242: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:1243: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:1243: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 == 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 == INTERVAL_SYMBOL || LA308_96 == NCHAR_TEXT || LA308_96 == NOT2_SYMBOL || LA308_96 == SINGLE_QUOTED_TEXT || LA308_96 == BITWISE_NOT_OPERATOR || LA308_96 == LOGICAL_NOT_OPERATOR || 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 == CHAR_SYMBOL || LA308_96 == CURRENT_USER_SYMBOL || LA308_96 == BIN_NUMBER))
                		    {
                		        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 == COUNT_SYMBOL || LA308_96 == EXISTS_SYMBOL || LA308_96 == GROUP_CONCAT_SYMBOL || LA308_96 == MAX_SYMBOL || LA308_96 == MIN_SYMBOL || LA308_96 == OPEN_PAR_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 || ((LA308_96 >= AT_AT_SIGN_SYMBOL) && (LA308_96 <= AT_TEXT_SUFFIX)) || ((LA308_96 >= BIT_AND_SYMBOL) && (LA308_96 <= BIT_XOR_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 == 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 == INTERVAL_SYMBOL || LA308_104 == NCHAR_TEXT || LA308_104 == NOT2_SYMBOL || LA308_104 == SINGLE_QUOTED_TEXT || LA308_104 == BITWISE_NOT_OPERATOR || LA308_104 == LOGICAL_NOT_OPERATOR || 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 == CHAR_SYMBOL || LA308_104 == CURRENT_USER_SYMBOL || LA308_104 == BIN_NUMBER))
                		    {
                		        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 == COUNT_SYMBOL || LA308_104 == EXISTS_SYMBOL || LA308_104 == GROUP_CONCAT_SYMBOL || LA308_104 == MAX_SYMBOL || LA308_104 == MIN_SYMBOL || LA308_104 == OPEN_PAR_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 || ((LA308_104 >= AT_AT_SIGN_SYMBOL) && (LA308_104 <= AT_TEXT_SUFFIX)) || ((LA308_104 >= BIT_AND_SYMBOL) && (LA308_104 <= BIT_XOR_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 == 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 == INTERVAL_SYMBOL || LA308_106 == NCHAR_TEXT || LA308_106 == NOT2_SYMBOL || LA308_106 == SINGLE_QUOTED_TEXT || LA308_106 == BITWISE_NOT_OPERATOR || LA308_106 == LOGICAL_NOT_OPERATOR || 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 == CHAR_SYMBOL || LA308_106 == CURRENT_USER_SYMBOL || LA308_106 == BIN_NUMBER))
                		    {
                		        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 == COUNT_SYMBOL || LA308_106 == EXISTS_SYMBOL || LA308_106 == GROUP_CONCAT_SYMBOL || LA308_106 == MAX_SYMBOL || LA308_106 == MIN_SYMBOL || LA308_106 == OPEN_PAR_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 || ((LA308_106 >= AT_AT_SIGN_SYMBOL) && (LA308_106 <= AT_TEXT_SUFFIX)) || ((LA308_106 >= BIT_AND_SYMBOL) && (LA308_106 <= BIT_XOR_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_535 = LA(3);
                				    if ( ((SERVER_VERSION >= 50704 && SERVER_VERSION < 50708)))
                				    {
                				        alt308=1;
                				    }

                				}
                			}
                		    break;

                		}

                	}
                    break;

                }

                switch (alt308)
                {
            	case 1:
            	    // MySQL.g:1243:32: select_option
            	    {
            	        FOLLOWPUSH(FOLLOW_select_option_in_select_part24944);
            	        select_option905=select_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_part2Ex;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_option905.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_part24948);
            select_item_list906=select_item_list(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleselect_part2Ex;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_item_list906.tree);

            // MySQL.g:1244:3: ( ( order_by_clause )? ( limit_clause )? | into_clause ( select_from )? | select_from ( into_clause )? )
            {
                int alt313=3;
                switch ( LA(1) )
                {
                case EOF:
                case FOR_SYMBOL:
                case LIMIT_SYMBOL:
                case LOCK_SYMBOL:
                case ON_SYMBOL:
                case ORDER_SYMBOL:
                case SEMICOLON_SYMBOL:
                case UNION_SYMBOL:
                case WITH_SYMBOL:
                case CLOSE_PAR_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:1245:4: ( order_by_clause )? ( limit_clause )?
            	    {
            	        // MySQL.g:1245:4: ( order_by_clause )?
            	        {
            	            int alt309=2;
            	            switch ( LA(1) )
            	            {
            	                case ORDER_SYMBOL:
            	                	{
            	                		alt309=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt309)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1245:4: order_by_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_order_by_clause_in_select_part24957);
            	        	        order_by_clause907=order_by_clause(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleselect_part2Ex;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, order_by_clause907.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:1245:21: ( limit_clause )?
            	        {
            	            int alt310=2;
            	            switch ( LA(1) )
            	            {
            	                case LIMIT_SYMBOL:
            	                	{
            	                		alt310=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt310)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1245:21: limit_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_limit_clause_in_select_part24960);
            	        	        limit_clause908=limit_clause(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleselect_part2Ex;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, limit_clause908.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1246:6: into_clause ( select_from )?
            	    {
            	        FOLLOWPUSH(FOLLOW_into_clause_in_select_part24968);
            	        into_clause909=into_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_part2Ex;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, into_clause909.tree);

            	        // MySQL.g:1246:18: ( select_from )?
            	        {
            	            int alt311=2;
            	            switch ( LA(1) )
            	            {
            	                case FROM_SYMBOL:
            	                	{
            	                		alt311=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt311)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1246:18: select_from
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_select_from_in_select_part24970);
            	        	        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);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:1247:6: select_from ( into_clause )?
            	    {
            	        FOLLOWPUSH(FOLLOW_select_from_in_select_part24978);
            	        select_from911=select_from(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_part2Ex;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_from911.tree);

            	        // MySQL.g:1247:18: ( into_clause )?
            	        {
            	            int alt312=2;
            	            switch ( LA(1) )
            	            {
            	                case INTO_SYMBOL:
            	                	{
            	                		alt312=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt312)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1247:18: into_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_into_clause_in_select_part24980);
            	        	        into_clause912=into_clause(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleselect_part2Ex;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, into_clause912.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:1249: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:1249:3: select_lock_type
            	    {
            	        FOLLOWPUSH(FOLLOW_select_lock_type_in_select_part24989);
            	        select_lock_type913=select_lock_type(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_part2Ex;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_lock_type913.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:1252: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_clause914;
    #undef	RETURN_TYPE_from_clause914
    #define	RETURN_TYPE_from_clause914 MySQLParser_from_clause_return

    MySQLParser_where_clause_return where_clause915;
    #undef	RETURN_TYPE_where_clause915
    #define	RETURN_TYPE_where_clause915 MySQLParser_where_clause_return

    MySQLParser_group_by_clause_return group_by_clause916;
    #undef	RETURN_TYPE_group_by_clause916
    #define	RETURN_TYPE_group_by_clause916 MySQLParser_group_by_clause_return

    MySQLParser_having_clause_return having_clause917;
    #undef	RETURN_TYPE_having_clause917
    #define	RETURN_TYPE_having_clause917 MySQLParser_having_clause_return

    MySQLParser_order_by_clause_return order_by_clause918;
    #undef	RETURN_TYPE_order_by_clause918
    #define	RETURN_TYPE_order_by_clause918 MySQLParser_order_by_clause_return

    MySQLParser_limit_clause_return limit_clause919;
    #undef	RETURN_TYPE_limit_clause919
    #define	RETURN_TYPE_limit_clause919 MySQLParser_limit_clause_return

    MySQLParser_procedure_analyse_clause_return procedure_analyse_clause920;
    #undef	RETURN_TYPE_procedure_analyse_clause920
    #define	RETURN_TYPE_procedure_analyse_clause920 MySQLParser_procedure_analyse_clause_return

    MySQLParser_select_lock_type_return select_lock_type921;
    #undef	RETURN_TYPE_select_lock_type921
    #define	RETURN_TYPE_select_lock_type921 MySQLParser_select_lock_type_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    from_clause914.tree = NULL;

    where_clause915.tree = NULL;

    group_by_clause916.tree = NULL;

    having_clause917.tree = NULL;

    order_by_clause918.tree = NULL;

    limit_clause919.tree = NULL;

    procedure_analyse_clause920.tree = NULL;

    select_lock_type921.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:1252: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:1253: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:1253:2: ( from_clause )?
            {
                int alt315=2;
                switch ( LA(1) )
                {
                    case FROM_SYMBOL:
                    	{
                    		alt315=1;
                    	}
                        break;
                }

                switch (alt315)
                {
            	case 1:
            	    // MySQL.g:1253:2: from_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_from_clause_in_table_expression4999);
            	        from_clause914=from_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, from_clause914.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1254:2: ( options {greedy=true; } : where_clause )?
            {
                int alt316=2;
                switch ( LA(1) )
                {
                    case WHERE_SYMBOL:
                    	{
                    		alt316=1;
                    	}
                        break;
                }

                switch (alt316)
                {
            	case 1:
            	    // MySQL.g:1254:32: where_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_where_clause_in_table_expression5017);
            	        where_clause915=where_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, where_clause915.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1255: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:1255:32: group_by_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_group_by_clause_in_table_expression5036);
            	        group_by_clause916=group_by_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, group_by_clause916.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1256:2: ( options {greedy=true; } : having_clause )?
            {
                int alt318=2;
                switch ( LA(1) )
                {
                    case HAVING_SYMBOL:
                    	{
                    		alt318=1;
                    	}
                        break;
                }

                switch (alt318)
                {
            	case 1:
            	    // MySQL.g:1256:32: having_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_having_clause_in_table_expression5055);
            	        having_clause917=having_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, having_clause917.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1257: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:1257:32: order_by_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_order_by_clause_in_table_expression5074);
            	        order_by_clause918=order_by_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, order_by_clause918.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1258:2: ( options {greedy=true; } : limit_clause )?
            {
                int alt320=2;
                switch ( LA(1) )
                {
                    case LIMIT_SYMBOL:
                    	{
                    		alt320=1;
                    	}
                        break;
                }

                switch (alt320)
                {
            	case 1:
            	    // MySQL.g:1258:32: limit_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_limit_clause_in_table_expression5093);
            	        limit_clause919=limit_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, limit_clause919.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1259: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:1259:32: procedure_analyse_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_procedure_analyse_clause_in_table_expression5112);
            	        procedure_analyse_clause920=procedure_analyse_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, procedure_analyse_clause920.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1260: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:1260:32: select_lock_type
            	    {
            	        FOLLOWPUSH(FOLLOW_select_lock_type_in_table_expression5131);
            	        select_lock_type921=select_lock_type(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_lock_type921.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:1263: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_SYMBOL922;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL924;
    MySQLParser_query_expression_body_return query_expression_body923;
    #undef	RETURN_TYPE_query_expression_body923
    #define	RETURN_TYPE_query_expression_body923 MySQLParser_query_expression_body_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL922_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL924_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_SYMBOL922       = NULL;
    CLOSE_PAR_SYMBOL924       = NULL;
    query_expression_body923.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL922_tree   = NULL;
    CLOSE_PAR_SYMBOL924_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:1263:9: ( OPEN_PAR_SYMBOL query_expression_body CLOSE_PAR_SYMBOL -> ^( SUBQUERY_TOKEN OPEN_PAR_SYMBOL query_expression_body CLOSE_PAR_SYMBOL ) )
        // MySQL.g:1264:2: OPEN_PAR_SYMBOL query_expression_body CLOSE_PAR_SYMBOL
        {
            OPEN_PAR_SYMBOL922 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_subquery5143);
            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_SYMBOL922, NULL); }


            FOLLOWPUSH(FOLLOW_query_expression_body_in_subquery5145);
            query_expression_body923=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_body923.tree, NULL); }

            CLOSE_PAR_SYMBOL924 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_subquery5147);
            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_SYMBOL924, 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;
            	// 1265:3: -> ^( SUBQUERY_TOKEN OPEN_PAR_SYMBOL query_expression_body CLOSE_PAR_SYMBOL )
            	{
            	    // MySQL.g:1265: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:1268: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_SYMBOL926;
    MySQLParser_query_specification_return query_specification925;
    #undef	RETURN_TYPE_query_specification925
    #define	RETURN_TYPE_query_specification925 MySQLParser_query_specification_return

    MySQLParser_union_option_return union_option927;
    #undef	RETURN_TYPE_union_option927
    #define	RETURN_TYPE_union_option927 MySQLParser_union_option_return

    MySQLParser_query_specification_return query_specification928;
    #undef	RETURN_TYPE_query_specification928
    #define	RETURN_TYPE_query_specification928 MySQLParser_query_specification_return

    pANTLR3_BASE_TREE UNION_SYMBOL926_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    UNION_SYMBOL926       = NULL;
    query_specification925.tree = NULL;

    union_option927.tree = NULL;

    query_specification928.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    UNION_SYMBOL926_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1268:22: ( query_specification ( UNION_SYMBOL union_option query_specification )* )
        // MySQL.g:1269:2: query_specification ( UNION_SYMBOL union_option query_specification )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_query_specification_in_query_expression_body5170);
            query_specification925=query_specification(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulequery_expression_bodyEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, query_specification925.tree);

            // MySQL.g:1269: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:1269:23: UNION_SYMBOL union_option query_specification
            	    {
            	        UNION_SYMBOL926 = (pANTLR3_COMMON_TOKEN) MATCHT(UNION_SYMBOL, &FOLLOW_UNION_SYMBOL_in_query_expression_body5173);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulequery_expression_bodyEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        UNION_SYMBOL926_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNION_SYMBOL926));
            	        ADAPTOR->addChild(ADAPTOR, root_0, UNION_SYMBOL926_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_union_option_in_query_expression_body5175);
            	        union_option927=union_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulequery_expression_bodyEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, union_option927.tree);

            	        FOLLOWPUSH(FOLLOW_query_specification_in_query_expression_body5177);
            	        query_specification928=query_specification(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulequery_expression_bodyEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, query_specification928.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:1272: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    set930;
    MySQLParser_query_spec_option_return query_spec_option929;
    #undef	RETURN_TYPE_query_spec_option929
    #define	RETURN_TYPE_query_spec_option929 MySQLParser_query_spec_option_return

    MySQLParser_select_item_list_return select_item_list931;
    #undef	RETURN_TYPE_select_item_list931
    #define	RETURN_TYPE_select_item_list931 MySQLParser_select_item_list_return

    pANTLR3_BASE_TREE set930_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set930       = NULL;
    query_spec_option929.tree = NULL;

    select_item_list931.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set930_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1272:21: ( ( options {greedy=true; } : query_spec_option |{...}? ( SQL_NO_CACHE_SYMBOL | SQL_CACHE_SYMBOL ) )* select_item_list )
        // MySQL.g:1273: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:1273: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 == 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 == INTERVAL_SYMBOL || LA324_96 == NCHAR_TEXT || LA324_96 == NOT2_SYMBOL || LA324_96 == SINGLE_QUOTED_TEXT || LA324_96 == BITWISE_NOT_OPERATOR || LA324_96 == LOGICAL_NOT_OPERATOR || 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 == CHAR_SYMBOL || LA324_96 == CURRENT_USER_SYMBOL || LA324_96 == BIN_NUMBER))
                		    {
                		        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 == COUNT_SYMBOL || LA324_96 == EXISTS_SYMBOL || LA324_96 == GROUP_CONCAT_SYMBOL || LA324_96 == MAX_SYMBOL || LA324_96 == MIN_SYMBOL || LA324_96 == OPEN_PAR_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 || ((LA324_96 >= AT_AT_SIGN_SYMBOL) && (LA324_96 <= AT_TEXT_SUFFIX)) || ((LA324_96 >= BIT_AND_SYMBOL) && (LA324_96 <= BIT_XOR_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_246 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == MOD_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_252 = 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_253 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == NOT_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_257 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == SOUNDS_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_262 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == IDENTIFIER))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_269 = 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_270 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == DOUBLE_QUOTED_TEXT))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_271 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == DATE_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_272 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == ASCII_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_273 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == SINGLE_QUOTED_TEXT))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_274 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == ALL_SYMBOL || LA324_104 == BINARY_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 == DISTINCT_SYMBOL || LA324_104 == EXISTS_SYMBOL || ((LA324_104 >= EXTRACT_SYMBOL) && (LA324_104 <= FALSE_SYMBOL)) || LA324_104 == GROUP_CONCAT_SYMBOL || LA324_104 == HIGH_PRIORITY_SYMBOL || LA324_104 == IF_SYMBOL || LA324_104 == INSERT_SYMBOL || LA324_104 == INTERVAL_SYMBOL || LA324_104 == LEFT_SYMBOL || 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 <= OPEN_PAR_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 >= UTC_DATE_SYMBOL) && (LA324_104 <= UTC_TIME_SYMBOL)) || LA324_104 == VALUES_SYMBOL || LA324_104 == VARIANCE_SYMBOL || LA324_104 == VAR_SAMP_SYMBOL || ((LA324_104 >= AT_AT_SIGN_SYMBOL) && (LA324_104 <= AT_TEXT_SUFFIX)) || LA324_104 == BITWISE_NOT_OPERATOR || ((LA324_104 >= BIT_AND_SYMBOL) && (LA324_104 <= BIT_XOR_SYMBOL)) || LA324_104 == DECIMAL_NUMBER || LA324_104 == FLOAT_NUMBER || LA324_104 == INT_NUMBER || LA324_104 == LOGICAL_NOT_OPERATOR || LA324_104 == LONG_NUMBER || ((LA324_104 >= ULONGLONG_NUMBER) && (LA324_104 <= UNDERSCORE_CHARSET))))
                		    {
                		        alt324=2;
                		    }
                		    else if ( (LA324_104 == HEX_NUMBER))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_292 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == TIME_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_294 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == TIMESTAMP_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_295 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == DAY_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_296 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == BIN_NUMBER))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_299 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == HOUR_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_302 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == MINUTE_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_303 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == MONTH_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_306 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == SECOND_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_307 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == USER_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_309 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == YEAR_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_311 = 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_313 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == GET_FORMAT_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_314 = 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_319 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == COALESCE_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_324 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == CHARSET_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_328 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == FORMAT_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_329 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == COLLATION_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_330 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == MICROSECOND_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_331 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == TRUNCATE_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_334 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == OLD_PASSWORD_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_335 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == MULT_OPERATOR))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_336 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == PASSWORD_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_337 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == QUARTER_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_338 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == REVERSE_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_339 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == ROW_COUNT_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_342 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == WEEK_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_343 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == CONTAINS_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_344 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == WEIGHT_STRING_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_345 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == GEOMETRYCOLLECTION_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_346 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == LINESTRING_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_347 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == MULTILINESTRING_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_348 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == MULTIPOINT_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_349 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == MULTIPOLYGON_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_350 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == POINT_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_351 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == POLYGON_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_352 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == AVG_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_353 = 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_354 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == ROW_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_355 = 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_374 = 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_382 = 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_384 = 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:1274:3: query_spec_option
            	    {
            	        FOLLOWPUSH(FOLLOW_query_spec_option_in_select_part2_derived5205);
            	        query_spec_option929=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_option929.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1275: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";


            	        }

            	        set930=(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, set930))
            	            );
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

            	        }
            	        else
            	        {
            	            if (BACKTRACKING>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_derived5225);
            select_item_list931=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_list931.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:1279: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_SYMBOL933;
    pANTLR3_COMMON_TOKEN    SQL_CACHE_SYMBOL934;
    pANTLR3_COMMON_TOKEN    MAX_STATEMENT_TIME_SYMBOL935;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR936;
    MySQLParser_query_spec_option_return query_spec_option932;
    #undef	RETURN_TYPE_query_spec_option932
    #define	RETURN_TYPE_query_spec_option932 MySQLParser_query_spec_option_return

    MySQLParser_real_ulong_number_return real_ulong_number937;
    #undef	RETURN_TYPE_real_ulong_number937
    #define	RETURN_TYPE_real_ulong_number937 MySQLParser_real_ulong_number_return

    pANTLR3_BASE_TREE SQL_NO_CACHE_SYMBOL933_tree;
    pANTLR3_BASE_TREE SQL_CACHE_SYMBOL934_tree;
    pANTLR3_BASE_TREE MAX_STATEMENT_TIME_SYMBOL935_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR936_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SQL_NO_CACHE_SYMBOL933       = NULL;
    SQL_CACHE_SYMBOL934       = NULL;
    MAX_STATEMENT_TIME_SYMBOL935       = NULL;
    EQUAL_OPERATOR936       = NULL;
    query_spec_option932.tree = NULL;

    real_ulong_number937.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SQL_NO_CACHE_SYMBOL933_tree   = NULL;
    SQL_CACHE_SYMBOL934_tree   = NULL;
    MAX_STATEMENT_TIME_SYMBOL935_tree   = NULL;
    EQUAL_OPERATOR936_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1279: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:1280:2: query_spec_option
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_query_spec_option_in_select_option5234);
        	        query_spec_option932=query_spec_option(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, query_spec_option932.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1281:4: SQL_NO_CACHE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SQL_NO_CACHE_SYMBOL933 = (pANTLR3_COMMON_TOKEN) MATCHT(SQL_NO_CACHE_SYMBOL, &FOLLOW_SQL_NO_CACHE_SYMBOL_in_select_option5239);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SQL_NO_CACHE_SYMBOL933_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SQL_NO_CACHE_SYMBOL933));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SQL_NO_CACHE_SYMBOL933_tree);
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1282:4: SQL_CACHE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SQL_CACHE_SYMBOL934 = (pANTLR3_COMMON_TOKEN) MATCHT(SQL_CACHE_SYMBOL, &FOLLOW_SQL_CACHE_SYMBOL_in_select_option5244);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SQL_CACHE_SYMBOL934_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SQL_CACHE_SYMBOL934));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SQL_CACHE_SYMBOL934_tree);
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1283: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_SYMBOL935 = (pANTLR3_COMMON_TOKEN) MATCHT(MAX_STATEMENT_TIME_SYMBOL, &FOLLOW_MAX_STATEMENT_TIME_SYMBOL_in_select_option5251);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MAX_STATEMENT_TIME_SYMBOL935_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MAX_STATEMENT_TIME_SYMBOL935));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MAX_STATEMENT_TIME_SYMBOL935_tree);
        	        }

        	        EQUAL_OPERATOR936 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_select_option5253);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR936_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR936));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR936_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_real_ulong_number_in_select_option5255);
        	        real_ulong_number937=real_ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, real_ulong_number937.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:1286: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    set938;

    pANTLR3_BASE_TREE set938_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set938       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set938_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1286: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));


            set938=(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, set938))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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:1296: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_OPERATOR940;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL941;
    MySQLParser_select_item_return select_item939;
    #undef	RETURN_TYPE_select_item939
    #define	RETURN_TYPE_select_item939 MySQLParser_select_item_return

    MySQLParser_select_item_return select_item942;
    #undef	RETURN_TYPE_select_item942
    #define	RETURN_TYPE_select_item942 MySQLParser_select_item_return

    pANTLR3_BASE_TREE MULT_OPERATOR940_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL941_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    MULT_OPERATOR940       = NULL;
    COMMA_SYMBOL941       = NULL;
    select_item939.tree = NULL;

    select_item942.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    MULT_OPERATOR940_tree   = NULL;
    COMMA_SYMBOL941_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1296:17: ( ( select_item | MULT_OPERATOR ) ( options {greedy=true; } : COMMA_SYMBOL select_item )* )
        // MySQL.g:1297:2: ( select_item | MULT_OPERATOR ) ( options {greedy=true; } : COMMA_SYMBOL select_item )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:1297:2: ( select_item | MULT_OPERATOR )
            {
                int alt326=2;
                {
                    int LA326_0 = LA(1);
                    if ( (((LA326_0 >= ACCOUNT_SYMBOL) && (LA326_0 <= YEAR_SYMBOL)) || LA326_0 == BINARY_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 == EXISTS_SYMBOL || ((LA326_0 >= EXTRACT_SYMBOL) && (LA326_0 <= FALSE_SYMBOL)) || LA326_0 == GROUP_CONCAT_SYMBOL || LA326_0 == IF_SYMBOL || LA326_0 == INSERT_SYMBOL || LA326_0 == INTERVAL_SYMBOL || LA326_0 == LEFT_SYMBOL || LA326_0 == MATCH_SYMBOL || LA326_0 == MAX_SYMBOL || LA326_0 == MIN_SYMBOL || LA326_0 == MOD_SYMBOL || LA326_0 == NCHAR_TEXT || ((LA326_0 >= NOT2_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 <= 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 >= UTC_DATE_SYMBOL) && (LA326_0 <= UTC_TIME_SYMBOL)) || LA326_0 == VALUES_SYMBOL || LA326_0 == VARIANCE_SYMBOL || LA326_0 == VAR_SAMP_SYMBOL || ((LA326_0 >= AT_AT_SIGN_SYMBOL) && (LA326_0 <= AT_TEXT_SUFFIX)) || ((LA326_0 >= BACK_TICK_QUOTED_ID) && (LA326_0 <= BIN_NUMBER)) || LA326_0 == BITWISE_NOT_OPERATOR || ((LA326_0 >= BIT_AND_SYMBOL) && (LA326_0 <= BIT_XOR_SYMBOL)) || LA326_0 == DECIMAL_NUMBER || LA326_0 == DOT_SYMBOL || LA326_0 == DOUBLE_QUOTED_TEXT || LA326_0 == FLOAT_NUMBER || ((LA326_0 >= HEX_NUMBER) && (LA326_0 <= IDENTIFIER)) || LA326_0 == INT_NUMBER || LA326_0 == LOGICAL_NOT_OPERATOR || ((LA326_0 >= LONG_NUMBER) && (LA326_0 <= MINUS_OPERATOR)) || LA326_0 == PLUS_OPERATOR || ((LA326_0 >= ULONGLONG_NUMBER) && (LA326_0 <= UNDERSCORE_CHARSET))))
                    {
                        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:1297:3: select_item
            	    {
            	        FOLLOWPUSH(FOLLOW_select_item_in_select_item_list5310);
            	        select_item939=select_item(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_item_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_item939.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1297:17: MULT_OPERATOR
            	    {
            	        MULT_OPERATOR940 = (pANTLR3_COMMON_TOKEN) MATCHT(MULT_OPERATOR, &FOLLOW_MULT_OPERATOR_in_select_item_list5314);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_item_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        MULT_OPERATOR940_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MULT_OPERATOR940));
            	        ADAPTOR->addChild(ADAPTOR, root_0, MULT_OPERATOR940_tree);
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:1297: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 == INTERVAL_SYMBOL || LA327_22 == NCHAR_TEXT || ((LA327_22 >= NOT2_SYMBOL) && (LA327_22 <= NOT_SYMBOL)) || LA327_22 == SINGLE_QUOTED_TEXT || LA327_22 == BITWISE_NOT_OPERATOR || LA327_22 == DECIMAL_NUMBER || LA327_22 == FLOAT_NUMBER || LA327_22 == INT_NUMBER || LA327_22 == LOGICAL_NOT_OPERATOR || ((LA327_22 >= LONG_NUMBER) && (LA327_22 <= MINUS_OPERATOR)) || LA327_22 == PLUS_OPERATOR || ((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 == CHAR_SYMBOL || LA327_22 == CURRENT_USER_SYMBOL || LA327_22 == FALSE_SYMBOL || ((LA327_22 >= NULL2_SYMBOL) && (LA327_22 <= NULL_SYMBOL)) || LA327_22 == TRUE_SYMBOL || LA327_22 == BIN_NUMBER || LA327_22 == HEX_NUMBER))
                		    {
                		        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 == 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 || ((LA327_22 >= AT_AT_SIGN_SYMBOL) && (LA327_22 <= AT_TEXT_SUFFIX)) || ((LA327_22 >= BIT_AND_SYMBOL) && (LA327_22 <= BIT_XOR_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:1297:62: COMMA_SYMBOL select_item
            	    {
            	        COMMA_SYMBOL941 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_select_item_list5331);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_item_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL941_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL941));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL941_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_select_item_in_select_item_list5333);
            	        select_item942=select_item(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_item_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_item942.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:1300:1: select_item : ( ( table_wild )=> 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_wild943;
    #undef	RETURN_TYPE_table_wild943
    #define	RETURN_TYPE_table_wild943 MySQLParser_table_wild_return

    MySQLParser_expression_return expression944;
    #undef	RETURN_TYPE_expression944
    #define	RETURN_TYPE_expression944 MySQLParser_expression_return

    MySQLParser_select_alias_return select_alias945;
    #undef	RETURN_TYPE_select_alias945
    #define	RETURN_TYPE_select_alias945 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_wild943.tree = NULL;

    expression944.tree = NULL;

    select_alias945.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:1300:12: ( ( table_wild )=> 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 == DOT_SYMBOL))
                        {
                            {
                                int LA329_103 = LA(3);
                                if ( (synpred1_MySQL(ctx)))
                                {
                                    alt329=1;
                                }
                                else if ( (ANTLR3_TRUE))
                                {
                                    alt329=2;
                                }
                                else
                                {
                                    if (BACKTRACKING>0)
                                    {
                                        FAILEDFLAG = ANTLR3_TRUE;
                                        return retval;
                                    }


                                    CONSTRUCTEX();
                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                    EXCEPTION->message      = (void *)"";
                                    EXCEPTION->decisionNum  = 329;
                                    EXCEPTION->state        = 103;


                                    goto ruleselect_itemEx;

                                }
                            }
                        }
                        else if ( (LA329_1 == EOF || ((LA329_1 >= ACCOUNT_SYMBOL) && (LA329_1 <= YEAR_SYMBOL)) || LA329_1 == AND_SYMBOL || LA329_1 == BETWEEN_SYMBOL || LA329_1 == COLLATE_SYMBOL || LA329_1 == CROSS_SYMBOL || LA329_1 == FOR_SYMBOL || LA329_1 == FROM_SYMBOL || ((LA329_1 >= GROUP_SYMBOL) && (LA329_1 <= HAVING_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA329_1 == LOCK_SYMBOL || ((LA329_1 >= MOD_SYMBOL) && (LA329_1 <= NATURAL_SYMBOL)) || LA329_1 == NOT_SYMBOL || LA329_1 == ON_SYMBOL || LA329_1 == OPEN_PAR_SYMBOL || ((LA329_1 >= ORDER_SYMBOL) && (LA329_1 <= OR_SYMBOL)) || LA329_1 == PROCEDURE_SYMBOL || LA329_1 == REGEXP_SYMBOL || LA329_1 == RIGHT_SYMBOL || LA329_1 == SEMICOLON_SYMBOL || LA329_1 == SET_SYMBOL || 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 || LA329_1 == AS_SYMBOL || ((LA329_1 >= BACK_TICK_QUOTED_ID) && (LA329_1 <= BITWISE_AND_OPERATOR)) || ((LA329_1 >= BITWISE_OR_OPERATOR) && (LA329_1 <= BITWISE_XOR_OPERATOR)) || ((LA329_1 >= CLOSE_CURLY_SYMBOL) && (LA329_1 <= CLOSE_PAR_SYMBOL)) || ((LA329_1 >= COMMA_SYMBOL) && (LA329_1 <= CONCAT_PIPES_SYMBOL)) || ((LA329_1 >= DIV_OPERATOR) && (LA329_1 <= DIV_SYMBOL)) || LA329_1 == DOUBLE_QUOTED_TEXT || LA329_1 == EQUAL_OPERATOR || ((LA329_1 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_1 <= GREATER_THAN_OPERATOR)) || ((LA329_1 >= HEX_NUMBER) && (LA329_1 <= IDENTIFIER)) || LA329_1 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA329_1 >= LESS_OR_EQUAL_OPERATOR) && (LA329_1 <= LESS_THAN_OPERATOR)) || LA329_1 == LOGICAL_AND_OPERATOR || LA329_1 == LOGICAL_OR_OPERATOR || ((LA329_1 >= MINUS_OPERATOR) && (LA329_1 <= MOD_OPERATOR)) || ((LA329_1 >= MULT_OPERATOR) && (LA329_1 <= NULL_SAFE_EQUAL_OPERATOR)) || LA329_1 == PLUS_OPERATOR || ((LA329_1 >= SHIFT_LEFT_OPERATOR) && (LA329_1 <= SHIFT_RIGHT_OPERATOR))))
                        {
                            alt329=2;
                        }
                        else
                        {
                            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 == DOT_SYMBOL))
                        {
                            {
                                int LA329_158 = LA(3);
                                if ( (synpred1_MySQL(ctx)))
                                {
                                    alt329=1;
                                }
                                else if ( (ANTLR3_TRUE))
                                {
                                    alt329=2;
                                }
                                else
                                {
                                    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 ( (LA329_2 == EOF || ((LA329_2 >= ACCOUNT_SYMBOL) && (LA329_2 <= YEAR_SYMBOL)) || LA329_2 == AND_SYMBOL || LA329_2 == BETWEEN_SYMBOL || LA329_2 == COLLATE_SYMBOL || LA329_2 == CROSS_SYMBOL || LA329_2 == FOR_SYMBOL || LA329_2 == FROM_SYMBOL || ((LA329_2 >= GROUP_SYMBOL) && (LA329_2 <= HAVING_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA329_2 == LOCK_SYMBOL || ((LA329_2 >= MOD_SYMBOL) && (LA329_2 <= NATURAL_SYMBOL)) || LA329_2 == NOT_SYMBOL || LA329_2 == ON_SYMBOL || LA329_2 == OPEN_PAR_SYMBOL || ((LA329_2 >= ORDER_SYMBOL) && (LA329_2 <= OR_SYMBOL)) || LA329_2 == PROCEDURE_SYMBOL || LA329_2 == REGEXP_SYMBOL || LA329_2 == RIGHT_SYMBOL || LA329_2 == SEMICOLON_SYMBOL || LA329_2 == SET_SYMBOL || 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 || LA329_2 == AS_SYMBOL || ((LA329_2 >= BACK_TICK_QUOTED_ID) && (LA329_2 <= BITWISE_AND_OPERATOR)) || ((LA329_2 >= BITWISE_OR_OPERATOR) && (LA329_2 <= BITWISE_XOR_OPERATOR)) || ((LA329_2 >= CLOSE_CURLY_SYMBOL) && (LA329_2 <= CLOSE_PAR_SYMBOL)) || ((LA329_2 >= COMMA_SYMBOL) && (LA329_2 <= CONCAT_PIPES_SYMBOL)) || ((LA329_2 >= DIV_OPERATOR) && (LA329_2 <= DIV_SYMBOL)) || LA329_2 == DOUBLE_QUOTED_TEXT || LA329_2 == EQUAL_OPERATOR || ((LA329_2 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2 <= GREATER_THAN_OPERATOR)) || ((LA329_2 >= HEX_NUMBER) && (LA329_2 <= IDENTIFIER)) || LA329_2 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA329_2 >= LESS_OR_EQUAL_OPERATOR) && (LA329_2 <= LESS_THAN_OPERATOR)) || LA329_2 == LOGICAL_AND_OPERATOR || LA329_2 == LOGICAL_OR_OPERATOR || ((LA329_2 >= MINUS_OPERATOR) && (LA329_2 <= MOD_OPERATOR)) || ((LA329_2 >= MULT_OPERATOR) && (LA329_2 <= NULL_SAFE_EQUAL_OPERATOR)) || LA329_2 == PLUS_OPERATOR || ((LA329_2 >= SHIFT_LEFT_OPERATOR) && (LA329_2 <= SHIFT_RIGHT_OPERATOR))))
                        {
                            alt329=2;
                        }
                        else
                        {
                            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_213 = LA(3);
                                if ( (( (( (synpred1_MySQL(ctx)) && (synpred1_MySQL(ctx)) )) && ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) )))
                                {
                                    alt329=1;
                                }
                                else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))
                                {
                                    alt329=2;
                                }
                                else
                                {
                                    if (BACKTRACKING>0)
                                    {
                                        FAILEDFLAG = ANTLR3_TRUE;
                                        return retval;
                                    }


                                    CONSTRUCTEX();
                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                    EXCEPTION->message      = (void *)"";
                                    EXCEPTION->decisionNum  = 329;
                                    EXCEPTION->state        = 213;


                                    goto ruleselect_itemEx;

                                }
                            }
                        }
                        else if ( (LA329_3 == EOF || ((LA329_3 >= ACCOUNT_SYMBOL) && (LA329_3 <= YEAR_SYMBOL)) || LA329_3 == AND_SYMBOL || LA329_3 == BETWEEN_SYMBOL || LA329_3 == COLLATE_SYMBOL || LA329_3 == CROSS_SYMBOL || LA329_3 == FOR_SYMBOL || LA329_3 == FROM_SYMBOL || ((LA329_3 >= GROUP_SYMBOL) && (LA329_3 <= HAVING_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA329_3 == LOCK_SYMBOL || ((LA329_3 >= MOD_SYMBOL) && (LA329_3 <= NATURAL_SYMBOL)) || LA329_3 == NOT_SYMBOL || LA329_3 == ON_SYMBOL || LA329_3 == OPEN_PAR_SYMBOL || ((LA329_3 >= ORDER_SYMBOL) && (LA329_3 <= OR_SYMBOL)) || LA329_3 == PROCEDURE_SYMBOL || LA329_3 == REGEXP_SYMBOL || LA329_3 == RIGHT_SYMBOL || LA329_3 == SEMICOLON_SYMBOL || LA329_3 == SET_SYMBOL || 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 || LA329_3 == AS_SYMBOL || ((LA329_3 >= BACK_TICK_QUOTED_ID) && (LA329_3 <= BITWISE_AND_OPERATOR)) || ((LA329_3 >= BITWISE_OR_OPERATOR) && (LA329_3 <= BITWISE_XOR_OPERATOR)) || ((LA329_3 >= CLOSE_CURLY_SYMBOL) && (LA329_3 <= CLOSE_PAR_SYMBOL)) || ((LA329_3 >= COMMA_SYMBOL) && (LA329_3 <= CONCAT_PIPES_SYMBOL)) || ((LA329_3 >= DIV_OPERATOR) && (LA329_3 <= DIV_SYMBOL)) || LA329_3 == DOUBLE_QUOTED_TEXT || LA329_3 == EQUAL_OPERATOR || ((LA329_3 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_3 <= GREATER_THAN_OPERATOR)) || ((LA329_3 >= HEX_NUMBER) && (LA329_3 <= IDENTIFIER)) || LA329_3 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA329_3 >= LESS_OR_EQUAL_OPERATOR) && (LA329_3 <= LESS_THAN_OPERATOR)) || LA329_3 == LOGICAL_AND_OPERATOR || LA329_3 == LOGICAL_OR_OPERATOR || ((LA329_3 >= MINUS_OPERATOR) && (LA329_3 <= MOD_OPERATOR)) || ((LA329_3 >= MULT_OPERATOR) && (LA329_3 <= NULL_SAFE_EQUAL_OPERATOR)) || LA329_3 == PLUS_OPERATOR || ((LA329_3 >= SHIFT_LEFT_OPERATOR) && (LA329_3 <= SHIFT_RIGHT_OPERATOR))))
                        {
                            alt329=2;
                        }
                        else
                        {
                            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 == BETWEEN_SYMBOL || LA329_4 == COLLATE_SYMBOL || LA329_4 == CROSS_SYMBOL || LA329_4 == FOR_SYMBOL || LA329_4 == FROM_SYMBOL || ((LA329_4 >= GROUP_SYMBOL) && (LA329_4 <= HAVING_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA329_4 == LOCK_SYMBOL || ((LA329_4 >= MOD_SYMBOL) && (LA329_4 <= NATURAL_SYMBOL)) || LA329_4 == NOT_SYMBOL || LA329_4 == ON_SYMBOL || LA329_4 == OPEN_PAR_SYMBOL || ((LA329_4 >= ORDER_SYMBOL) && (LA329_4 <= OR_SYMBOL)) || LA329_4 == PROCEDURE_SYMBOL || LA329_4 == REGEXP_SYMBOL || LA329_4 == RIGHT_SYMBOL || LA329_4 == SEMICOLON_SYMBOL || LA329_4 == SET_SYMBOL || 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 || LA329_4 == AS_SYMBOL || ((LA329_4 >= BACK_TICK_QUOTED_ID) && (LA329_4 <= BITWISE_AND_OPERATOR)) || ((LA329_4 >= BITWISE_OR_OPERATOR) && (LA329_4 <= BITWISE_XOR_OPERATOR)) || ((LA329_4 >= CLOSE_CURLY_SYMBOL) && (LA329_4 <= CLOSE_PAR_SYMBOL)) || ((LA329_4 >= COMMA_SYMBOL) && (LA329_4 <= CONCAT_PIPES_SYMBOL)) || ((LA329_4 >= DIV_OPERATOR) && (LA329_4 <= DIV_SYMBOL)) || LA329_4 == DOUBLE_QUOTED_TEXT || LA329_4 == EQUAL_OPERATOR || ((LA329_4 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_4 <= GREATER_THAN_OPERATOR)) || ((LA329_4 >= HEX_NUMBER) && (LA329_4 <= IDENTIFIER)) || LA329_4 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA329_4 >= LESS_OR_EQUAL_OPERATOR) && (LA329_4 <= LESS_THAN_OPERATOR)) || LA329_4 == LOGICAL_AND_OPERATOR || LA329_4 == LOGICAL_OR_OPERATOR || ((LA329_4 >= MINUS_OPERATOR) && (LA329_4 <= MOD_OPERATOR)) || ((LA329_4 >= MULT_OPERATOR) && (LA329_4 <= NULL_SAFE_EQUAL_OPERATOR)) || LA329_4 == PLUS_OPERATOR || ((LA329_4 >= SHIFT_LEFT_OPERATOR) && (LA329_4 <= SHIFT_RIGHT_OPERATOR))))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_4 == DOT_SYMBOL))
                        {
                            {
                                int LA329_271 = LA(3);
                                if ( (synpred1_MySQL(ctx)))
                                {
                                    alt329=1;
                                }
                                else if ( (ANTLR3_TRUE))
                                {
                                    alt329=2;
                                }
                                else
                                {
                                    if (BACKTRACKING>0)
                                    {
                                        FAILEDFLAG = ANTLR3_TRUE;
                                        return retval;
                                    }


                                    CONSTRUCTEX();
                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                    EXCEPTION->message      = (void *)"";
                                    EXCEPTION->decisionNum  = 329;
                                    EXCEPTION->state        = 271;


                                    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 == BETWEEN_SYMBOL || LA329_5 == COLLATE_SYMBOL || LA329_5 == CROSS_SYMBOL || LA329_5 == FOR_SYMBOL || LA329_5 == FROM_SYMBOL || ((LA329_5 >= GROUP_SYMBOL) && (LA329_5 <= HAVING_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA329_5 == LOCK_SYMBOL || ((LA329_5 >= MOD_SYMBOL) && (LA329_5 <= NATURAL_SYMBOL)) || LA329_5 == NOT_SYMBOL || LA329_5 == ON_SYMBOL || LA329_5 == OPEN_PAR_SYMBOL || ((LA329_5 >= ORDER_SYMBOL) && (LA329_5 <= OR_SYMBOL)) || LA329_5 == PROCEDURE_SYMBOL || LA329_5 == REGEXP_SYMBOL || LA329_5 == RIGHT_SYMBOL || LA329_5 == SEMICOLON_SYMBOL || LA329_5 == SET_SYMBOL || 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 || LA329_5 == AS_SYMBOL || ((LA329_5 >= BACK_TICK_QUOTED_ID) && (LA329_5 <= BITWISE_AND_OPERATOR)) || ((LA329_5 >= BITWISE_OR_OPERATOR) && (LA329_5 <= BITWISE_XOR_OPERATOR)) || ((LA329_5 >= CLOSE_CURLY_SYMBOL) && (LA329_5 <= CLOSE_PAR_SYMBOL)) || ((LA329_5 >= COMMA_SYMBOL) && (LA329_5 <= CONCAT_PIPES_SYMBOL)) || ((LA329_5 >= DIV_OPERATOR) && (LA329_5 <= DIV_SYMBOL)) || LA329_5 == DOUBLE_QUOTED_TEXT || LA329_5 == EQUAL_OPERATOR || ((LA329_5 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_5 <= GREATER_THAN_OPERATOR)) || ((LA329_5 >= HEX_NUMBER) && (LA329_5 <= IDENTIFIER)) || LA329_5 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA329_5 >= LESS_OR_EQUAL_OPERATOR) && (LA329_5 <= LESS_THAN_OPERATOR)) || LA329_5 == LOGICAL_AND_OPERATOR || LA329_5 == LOGICAL_OR_OPERATOR || ((LA329_5 >= MINUS_OPERATOR) && (LA329_5 <= MOD_OPERATOR)) || ((LA329_5 >= MULT_OPERATOR) && (LA329_5 <= NULL_SAFE_EQUAL_OPERATOR)) || LA329_5 == PLUS_OPERATOR || ((LA329_5 >= SHIFT_LEFT_OPERATOR) && (LA329_5 <= SHIFT_RIGHT_OPERATOR))))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_5 == DOT_SYMBOL))
                        {
                            {
                                int LA329_326 = LA(3);
                                if ( (synpred1_MySQL(ctx)))
                                {
                                    alt329=1;
                                }
                                else if ( (ANTLR3_TRUE))
                                {
                                    alt329=2;
                                }
                                else
                                {
                                    if (BACKTRACKING>0)
                                    {
                                        FAILEDFLAG = ANTLR3_TRUE;
                                        return retval;
                                    }


                                    CONSTRUCTEX();
                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                    EXCEPTION->message      = (void *)"";
                                    EXCEPTION->decisionNum  = 329;
                                    EXCEPTION->state        = 326;


                                    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 == BINARY_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 == EXISTS_SYMBOL || ((LA329_0 >= EXTRACT_SYMBOL) && (LA329_0 <= FALSE_SYMBOL)) || LA329_0 == GROUP_CONCAT_SYMBOL || LA329_0 == IF_SYMBOL || LA329_0 == INSERT_SYMBOL || LA329_0 == INTERVAL_SYMBOL || LA329_0 == LEFT_SYMBOL || LA329_0 == MATCH_SYMBOL || LA329_0 == MAX_SYMBOL || LA329_0 == MIN_SYMBOL || LA329_0 == MOD_SYMBOL || LA329_0 == NCHAR_TEXT || ((LA329_0 >= NOT2_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 <= 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 >= UTC_DATE_SYMBOL) && (LA329_0 <= UTC_TIME_SYMBOL)) || LA329_0 == VALUES_SYMBOL || LA329_0 == VARIANCE_SYMBOL || LA329_0 == VAR_SAMP_SYMBOL || ((LA329_0 >= AT_AT_SIGN_SYMBOL) && (LA329_0 <= AT_TEXT_SUFFIX)) || LA329_0 == BIN_NUMBER || LA329_0 == BITWISE_NOT_OPERATOR || ((LA329_0 >= BIT_AND_SYMBOL) && (LA329_0 <= BIT_XOR_SYMBOL)) || LA329_0 == DECIMAL_NUMBER || LA329_0 == DOT_SYMBOL || LA329_0 == FLOAT_NUMBER || LA329_0 == HEX_NUMBER || LA329_0 == INT_NUMBER || LA329_0 == LOGICAL_NOT_OPERATOR || ((LA329_0 >= LONG_NUMBER) && (LA329_0 <= MINUS_OPERATOR)) || LA329_0 == PLUS_OPERATOR || ((LA329_0 >= ULONGLONG_NUMBER) && (LA329_0 <= UNDERSCORE_CHARSET))))
                {
                    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 == BETWEEN_SYMBOL || LA329_14 == COLLATE_SYMBOL || LA329_14 == CROSS_SYMBOL || LA329_14 == FOR_SYMBOL || LA329_14 == FROM_SYMBOL || ((LA329_14 >= GROUP_SYMBOL) && (LA329_14 <= HAVING_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA329_14 == LOCK_SYMBOL || ((LA329_14 >= MOD_SYMBOL) && (LA329_14 <= NATURAL_SYMBOL)) || LA329_14 == NOT_SYMBOL || LA329_14 == ON_SYMBOL || LA329_14 == OPEN_PAR_SYMBOL || ((LA329_14 >= ORDER_SYMBOL) && (LA329_14 <= OR_SYMBOL)) || LA329_14 == PROCEDURE_SYMBOL || LA329_14 == REGEXP_SYMBOL || LA329_14 == RIGHT_SYMBOL || LA329_14 == SEMICOLON_SYMBOL || LA329_14 == SET_SYMBOL || 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 || LA329_14 == AS_SYMBOL || ((LA329_14 >= BACK_TICK_QUOTED_ID) && (LA329_14 <= BITWISE_AND_OPERATOR)) || ((LA329_14 >= BITWISE_OR_OPERATOR) && (LA329_14 <= BITWISE_XOR_OPERATOR)) || ((LA329_14 >= CLOSE_CURLY_SYMBOL) && (LA329_14 <= CLOSE_PAR_SYMBOL)) || ((LA329_14 >= COMMA_SYMBOL) && (LA329_14 <= CONCAT_PIPES_SYMBOL)) || ((LA329_14 >= DIV_OPERATOR) && (LA329_14 <= DIV_SYMBOL)) || LA329_14 == DOUBLE_QUOTED_TEXT || LA329_14 == EQUAL_OPERATOR || ((LA329_14 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_14 <= GREATER_THAN_OPERATOR)) || ((LA329_14 >= HEX_NUMBER) && (LA329_14 <= IDENTIFIER)) || LA329_14 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA329_14 >= LESS_OR_EQUAL_OPERATOR) && (LA329_14 <= LESS_THAN_OPERATOR)) || LA329_14 == LOGICAL_AND_OPERATOR || LA329_14 == LOGICAL_OR_OPERATOR || ((LA329_14 >= MINUS_OPERATOR) && (LA329_14 <= MOD_OPERATOR)) || ((LA329_14 >= MULT_OPERATOR) && (LA329_14 <= NULL_SAFE_EQUAL_OPERATOR)) || LA329_14 == PLUS_OPERATOR || ((LA329_14 >= SHIFT_LEFT_OPERATOR) && (LA329_14 <= SHIFT_RIGHT_OPERATOR))))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_14 == DOT_SYMBOL))
                        {
                            {
                                int LA329_382 = LA(3);
                                if ( (synpred1_MySQL(ctx)))
                                {
                                    alt329=1;
                                }
                                else if ( (ANTLR3_TRUE))
                                {
                                    alt329=2;
                                }
                                else
                                {
                                    if (BACKTRACKING>0)
                                    {
                                        FAILEDFLAG = ANTLR3_TRUE;
                                        return retval;
                                    }


                                    CONSTRUCTEX();
                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                    EXCEPTION->message      = (void *)"";
                                    EXCEPTION->decisionNum  = 329;
                                    EXCEPTION->state        = 382;


                                    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 == BETWEEN_SYMBOL || LA329_15 == COLLATE_SYMBOL || LA329_15 == CROSS_SYMBOL || LA329_15 == FOR_SYMBOL || LA329_15 == FROM_SYMBOL || ((LA329_15 >= GROUP_SYMBOL) && (LA329_15 <= HAVING_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA329_15 == LOCK_SYMBOL || ((LA329_15 >= MOD_SYMBOL) && (LA329_15 <= NATURAL_SYMBOL)) || LA329_15 == NOT_SYMBOL || LA329_15 == ON_SYMBOL || LA329_15 == OPEN_PAR_SYMBOL || ((LA329_15 >= ORDER_SYMBOL) && (LA329_15 <= OR_SYMBOL)) || LA329_15 == PROCEDURE_SYMBOL || LA329_15 == REGEXP_SYMBOL || LA329_15 == RIGHT_SYMBOL || LA329_15 == SEMICOLON_SYMBOL || LA329_15 == SET_SYMBOL || 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 || LA329_15 == AS_SYMBOL || ((LA329_15 >= BACK_TICK_QUOTED_ID) && (LA329_15 <= BITWISE_AND_OPERATOR)) || ((LA329_15 >= BITWISE_OR_OPERATOR) && (LA329_15 <= BITWISE_XOR_OPERATOR)) || ((LA329_15 >= CLOSE_CURLY_SYMBOL) && (LA329_15 <= CLOSE_PAR_SYMBOL)) || ((LA329_15 >= COMMA_SYMBOL) && (LA329_15 <= CONCAT_PIPES_SYMBOL)) || ((LA329_15 >= DIV_OPERATOR) && (LA329_15 <= DIV_SYMBOL)) || LA329_15 == DOUBLE_QUOTED_TEXT || LA329_15 == EQUAL_OPERATOR || ((LA329_15 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_15 <= GREATER_THAN_OPERATOR)) || ((LA329_15 >= HEX_NUMBER) && (LA329_15 <= IDENTIFIER)) || LA329_15 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA329_15 >= LESS_OR_EQUAL_OPERATOR) && (LA329_15 <= LESS_THAN_OPERATOR)) || LA329_15 == LOGICAL_AND_OPERATOR || LA329_15 == LOGICAL_OR_OPERATOR || ((LA329_15 >= MINUS_OPERATOR) && (LA329_15 <= MOD_OPERATOR)) || ((LA329_15 >= MULT_OPERATOR) && (LA329_15 <= NULL_SAFE_EQUAL_OPERATOR)) || LA329_15 == PLUS_OPERATOR || ((LA329_15 >= SHIFT_LEFT_OPERATOR) && (LA329_15 <= SHIFT_RIGHT_OPERATOR))))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_15 == DOT_SYMBOL))
                        {
                            {
                                int LA329_438 = LA(3);
                                if ( (synpred1_MySQL(ctx)))
                                {
                                    alt329=1;
                                }
                                else if ( (ANTLR3_TRUE))
                                {
                                    alt329=2;
                                }
                                else
                                {
                                    if (BACKTRACKING>0)
                                    {
                                        FAILEDFLAG = ANTLR3_TRUE;
                                        return retval;
                                    }


                                    CONSTRUCTEX();
                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                    EXCEPTION->message      = (void *)"";
                                    EXCEPTION->decisionNum  = 329;
                                    EXCEPTION->state        = 438;


                                    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 == BETWEEN_SYMBOL || LA329_16 == COLLATE_SYMBOL || LA329_16 == CROSS_SYMBOL || LA329_16 == FOR_SYMBOL || LA329_16 == FROM_SYMBOL || ((LA329_16 >= GROUP_SYMBOL) && (LA329_16 <= HAVING_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA329_16 == LOCK_SYMBOL || ((LA329_16 >= MOD_SYMBOL) && (LA329_16 <= NATURAL_SYMBOL)) || LA329_16 == NOT_SYMBOL || LA329_16 == ON_SYMBOL || LA329_16 == OPEN_PAR_SYMBOL || ((LA329_16 >= ORDER_SYMBOL) && (LA329_16 <= OR_SYMBOL)) || LA329_16 == PROCEDURE_SYMBOL || LA329_16 == REGEXP_SYMBOL || LA329_16 == RIGHT_SYMBOL || LA329_16 == SEMICOLON_SYMBOL || LA329_16 == SET_SYMBOL || 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 || LA329_16 == AS_SYMBOL || ((LA329_16 >= BACK_TICK_QUOTED_ID) && (LA329_16 <= BITWISE_AND_OPERATOR)) || ((LA329_16 >= BITWISE_OR_OPERATOR) && (LA329_16 <= BITWISE_XOR_OPERATOR)) || ((LA329_16 >= CLOSE_CURLY_SYMBOL) && (LA329_16 <= CLOSE_PAR_SYMBOL)) || ((LA329_16 >= COMMA_SYMBOL) && (LA329_16 <= CONCAT_PIPES_SYMBOL)) || ((LA329_16 >= DIV_OPERATOR) && (LA329_16 <= DIV_SYMBOL)) || LA329_16 == DOUBLE_QUOTED_TEXT || LA329_16 == EQUAL_OPERATOR || ((LA329_16 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_16 <= GREATER_THAN_OPERATOR)) || ((LA329_16 >= HEX_NUMBER) && (LA329_16 <= IDENTIFIER)) || LA329_16 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA329_16 >= LESS_OR_EQUAL_OPERATOR) && (LA329_16 <= LESS_THAN_OPERATOR)) || LA329_16 == LOGICAL_AND_OPERATOR || LA329_16 == LOGICAL_OR_OPERATOR || ((LA329_16 >= MINUS_OPERATOR) && (LA329_16 <= MOD_OPERATOR)) || ((LA329_16 >= MULT_OPERATOR) && (LA329_16 <= NULL_SAFE_EQUAL_OPERATOR)) || LA329_16 == PLUS_OPERATOR || ((LA329_16 >= SHIFT_LEFT_OPERATOR) && (LA329_16 <= SHIFT_RIGHT_OPERATOR))))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_16 == DOT_SYMBOL))
                        {
                            {
                                int LA329_493 = LA(3);
                                if ( (synpred1_MySQL(ctx)))
                                {
                                    alt329=1;
                                }
                                else if ( (ANTLR3_TRUE))
                                {
                                    alt329=2;
                                }
                                else
                                {
                                    if (BACKTRACKING>0)
                                    {
                                        FAILEDFLAG = ANTLR3_TRUE;
                                        return retval;
                                    }


                                    CONSTRUCTEX();
                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                    EXCEPTION->message      = (void *)"";
                                    EXCEPTION->decisionNum  = 329;
                                    EXCEPTION->state        = 493;


                                    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 == BETWEEN_SYMBOL || LA329_23 == COLLATE_SYMBOL || LA329_23 == CROSS_SYMBOL || LA329_23 == FOR_SYMBOL || LA329_23 == FROM_SYMBOL || ((LA329_23 >= GROUP_SYMBOL) && (LA329_23 <= HAVING_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA329_23 == LOCK_SYMBOL || ((LA329_23 >= MOD_SYMBOL) && (LA329_23 <= NATURAL_SYMBOL)) || LA329_23 == NOT_SYMBOL || LA329_23 == ON_SYMBOL || LA329_23 == OPEN_PAR_SYMBOL || ((LA329_23 >= ORDER_SYMBOL) && (LA329_23 <= OR_SYMBOL)) || LA329_23 == PROCEDURE_SYMBOL || LA329_23 == REGEXP_SYMBOL || LA329_23 == RIGHT_SYMBOL || LA329_23 == SEMICOLON_SYMBOL || LA329_23 == SET_SYMBOL || 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 || LA329_23 == AS_SYMBOL || ((LA329_23 >= BACK_TICK_QUOTED_ID) && (LA329_23 <= BITWISE_AND_OPERATOR)) || ((LA329_23 >= BITWISE_OR_OPERATOR) && (LA329_23 <= BITWISE_XOR_OPERATOR)) || ((LA329_23 >= CLOSE_CURLY_SYMBOL) && (LA329_23 <= CLOSE_PAR_SYMBOL)) || ((LA329_23 >= COMMA_SYMBOL) && (LA329_23 <= CONCAT_PIPES_SYMBOL)) || ((LA329_23 >= DIV_OPERATOR) && (LA329_23 <= DIV_SYMBOL)) || LA329_23 == DOUBLE_QUOTED_TEXT || LA329_23 == EQUAL_OPERATOR || ((LA329_23 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_23 <= GREATER_THAN_OPERATOR)) || ((LA329_23 >= HEX_NUMBER) && (LA329_23 <= IDENTIFIER)) || LA329_23 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA329_23 >= LESS_OR_EQUAL_OPERATOR) && (LA329_23 <= LESS_THAN_OPERATOR)) || LA329_23 == LOGICAL_AND_OPERATOR || LA329_23 == LOGICAL_OR_OPERATOR || ((LA329_23 >= MINUS_OPERATOR) && (LA329_23 <= MOD_OPERATOR)) || ((LA329_23 >= MULT_OPERATOR) && (LA329_23 <= NULL_SAFE_EQUAL_OPERATOR)) || LA329_23 == PLUS_OPERATOR || ((LA329_23 >= SHIFT_LEFT_OPERATOR) && (LA329_23 <= SHIFT_RIGHT_OPERATOR))))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_23 == DOT_SYMBOL))
                        {
                            {
                                int LA329_548 = LA(3);
                                if ( (synpred1_MySQL(ctx)))
                                {
                                    alt329=1;
                                }
                                else if ( (ANTLR3_TRUE))
                                {
                                    alt329=2;
                                }
                                else
                                {
                                    if (BACKTRACKING>0)
                                    {
                                        FAILEDFLAG = ANTLR3_TRUE;
                                        return retval;
                                    }


                                    CONSTRUCTEX();
                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                    EXCEPTION->message      = (void *)"";
                                    EXCEPTION->decisionNum  = 329;
                                    EXCEPTION->state        = 548;


                                    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 == BETWEEN_SYMBOL || LA329_24 == COLLATE_SYMBOL || LA329_24 == CROSS_SYMBOL || LA329_24 == FOR_SYMBOL || LA329_24 == FROM_SYMBOL || ((LA329_24 >= GROUP_SYMBOL) && (LA329_24 <= HAVING_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA329_24 == LOCK_SYMBOL || ((LA329_24 >= MOD_SYMBOL) && (LA329_24 <= NATURAL_SYMBOL)) || LA329_24 == NOT_SYMBOL || LA329_24 == ON_SYMBOL || LA329_24 == OPEN_PAR_SYMBOL || ((LA329_24 >= ORDER_SYMBOL) && (LA329_24 <= OR_SYMBOL)) || LA329_24 == PROCEDURE_SYMBOL || LA329_24 == REGEXP_SYMBOL || LA329_24 == RIGHT_SYMBOL || LA329_24 == SEMICOLON_SYMBOL || LA329_24 == SET_SYMBOL || 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 || LA329_24 == AS_SYMBOL || ((LA329_24 >= BACK_TICK_QUOTED_ID) && (LA329_24 <= BITWISE_AND_OPERATOR)) || ((LA329_24 >= BITWISE_OR_OPERATOR) && (LA329_24 <= BITWISE_XOR_OPERATOR)) || ((LA329_24 >= CLOSE_CURLY_SYMBOL) && (LA329_24 <= CLOSE_PAR_SYMBOL)) || ((LA329_24 >= COMMA_SYMBOL) && (LA329_24 <= CONCAT_PIPES_SYMBOL)) || ((LA329_24 >= DIV_OPERATOR) && (LA329_24 <= DIV_SYMBOL)) || LA329_24 == DOUBLE_QUOTED_TEXT || LA329_24 == EQUAL_OPERATOR || ((LA329_24 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_24 <= GREATER_THAN_OPERATOR)) || ((LA329_24 >= HEX_NUMBER) && (LA329_24 <= IDENTIFIER)) || LA329_24 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA329_24 >= LESS_OR_EQUAL_OPERATOR) && (LA329_24 <= LESS_THAN_OPERATOR)) || LA329_24 == LOGICAL_AND_OPERATOR || LA329_24 == LOGICAL_OR_OPERATOR || ((LA329_24 >= MINUS_OPERATOR) && (LA329_24 <= MOD_OPERATOR)) || ((LA329_24 >= MULT_OPERATOR) && (LA329_24 <= NULL_SAFE_EQUAL_OPERATOR)) || LA329_24 == PLUS_OPERATOR || ((LA329_24 >= SHIFT_LEFT_OPERATOR) && (LA329_24 <= SHIFT_RIGHT_OPERATOR))))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_24 == DOT_SYMBOL))
                        {
                            {
                                int LA329_603 = LA(3);
                                if ( (synpred1_MySQL(ctx)))
                                {
                                    alt329=1;
                                }
                                else if ( (ANTLR3_TRUE))
                                {
                                    alt329=2;
                                }
                                else
                                {
                                    if (BACKTRACKING>0)
                                    {
                                        FAILEDFLAG = ANTLR3_TRUE;
                                        return retval;
                                    }


                                    CONSTRUCTEX();
                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                    EXCEPTION->message      = (void *)"";
                                    EXCEPTION->decisionNum  = 329;
                                    EXCEPTION->state        = 603;


                                    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 == BETWEEN_SYMBOL || LA329_27 == COLLATE_SYMBOL || LA329_27 == CROSS_SYMBOL || LA329_27 == FOR_SYMBOL || LA329_27 == FROM_SYMBOL || ((LA329_27 >= GROUP_SYMBOL) && (LA329_27 <= HAVING_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA329_27 == LOCK_SYMBOL || ((LA329_27 >= MOD_SYMBOL) && (LA329_27 <= NATURAL_SYMBOL)) || LA329_27 == NOT_SYMBOL || LA329_27 == ON_SYMBOL || LA329_27 == OPEN_PAR_SYMBOL || ((LA329_27 >= ORDER_SYMBOL) && (LA329_27 <= OR_SYMBOL)) || LA329_27 == PROCEDURE_SYMBOL || LA329_27 == REGEXP_SYMBOL || LA329_27 == RIGHT_SYMBOL || LA329_27 == SEMICOLON_SYMBOL || LA329_27 == SET_SYMBOL || 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 || LA329_27 == AS_SYMBOL || ((LA329_27 >= BACK_TICK_QUOTED_ID) && (LA329_27 <= BITWISE_AND_OPERATOR)) || ((LA329_27 >= BITWISE_OR_OPERATOR) && (LA329_27 <= BITWISE_XOR_OPERATOR)) || ((LA329_27 >= CLOSE_CURLY_SYMBOL) && (LA329_27 <= CLOSE_PAR_SYMBOL)) || ((LA329_27 >= COMMA_SYMBOL) && (LA329_27 <= CONCAT_PIPES_SYMBOL)) || ((LA329_27 >= DIV_OPERATOR) && (LA329_27 <= DIV_SYMBOL)) || LA329_27 == DOUBLE_QUOTED_TEXT || LA329_27 == EQUAL_OPERATOR || ((LA329_27 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_27 <= GREATER_THAN_OPERATOR)) || ((LA329_27 >= HEX_NUMBER) && (LA329_27 <= IDENTIFIER)) || LA329_27 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA329_27 >= LESS_OR_EQUAL_OPERATOR) && (LA329_27 <= LESS_THAN_OPERATOR)) || LA329_27 == LOGICAL_AND_OPERATOR || LA329_27 == LOGICAL_OR_OPERATOR || ((LA329_27 >= MINUS_OPERATOR) && (LA329_27 <= MOD_OPERATOR)) || ((LA329_27 >= MULT_OPERATOR) && (LA329_27 <= NULL_SAFE_EQUAL_OPERATOR)) || LA329_27 == PLUS_OPERATOR || ((LA329_27 >= SHIFT_LEFT_OPERATOR) && (LA329_27 <= SHIFT_RIGHT_OPERATOR))))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_27 == DOT_SYMBOL))
                        {
                            {
                                int LA329_658 = LA(3);
                                if ( (synpred1_MySQL(ctx)))
                                {
                                    alt329=1;
                                }
                                else if ( (ANTLR3_TRUE))
                                {
                                    alt329=2;
                                }
                                else
                                {
                                    if (BACKTRACKING>0)
                                    {
                                        FAILEDFLAG = ANTLR3_TRUE;
                                        return retval;
                                    }


                                    CONSTRUCTEX();
                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                    EXCEPTION->message      = (void *)"";
                                    EXCEPTION->decisionNum  = 329;
                                    EXCEPTION->state        = 658;


                                    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 == BETWEEN_SYMBOL || LA329_28 == COLLATE_SYMBOL || LA329_28 == CROSS_SYMBOL || LA329_28 == FOR_SYMBOL || LA329_28 == FROM_SYMBOL || ((LA329_28 >= GROUP_SYMBOL) && (LA329_28 <= HAVING_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA329_28 == LOCK_SYMBOL || ((LA329_28 >= MOD_SYMBOL) && (LA329_28 <= NATURAL_SYMBOL)) || LA329_28 == NOT_SYMBOL || LA329_28 == ON_SYMBOL || LA329_28 == OPEN_PAR_SYMBOL || ((LA329_28 >= ORDER_SYMBOL) && (LA329_28 <= OR_SYMBOL)) || LA329_28 == PROCEDURE_SYMBOL || LA329_28 == REGEXP_SYMBOL || LA329_28 == RIGHT_SYMBOL || LA329_28 == SEMICOLON_SYMBOL || LA329_28 == SET_SYMBOL || 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 || LA329_28 == AS_SYMBOL || ((LA329_28 >= BACK_TICK_QUOTED_ID) && (LA329_28 <= BITWISE_AND_OPERATOR)) || ((LA329_28 >= BITWISE_OR_OPERATOR) && (LA329_28 <= BITWISE_XOR_OPERATOR)) || ((LA329_28 >= CLOSE_CURLY_SYMBOL) && (LA329_28 <= CLOSE_PAR_SYMBOL)) || ((LA329_28 >= COMMA_SYMBOL) && (LA329_28 <= CONCAT_PIPES_SYMBOL)) || ((LA329_28 >= DIV_OPERATOR) && (LA329_28 <= DIV_SYMBOL)) || LA329_28 == DOUBLE_QUOTED_TEXT || LA329_28 == EQUAL_OPERATOR || ((LA329_28 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_28 <= GREATER_THAN_OPERATOR)) || ((LA329_28 >= HEX_NUMBER) && (LA329_28 <= IDENTIFIER)) || LA329_28 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA329_28 >= LESS_OR_EQUAL_OPERATOR) && (LA329_28 <= LESS_THAN_OPERATOR)) || LA329_28 == LOGICAL_AND_OPERATOR || LA329_28 == LOGICAL_OR_OPERATOR || ((LA329_28 >= MINUS_OPERATOR) && (LA329_28 <= MOD_OPERATOR)) || ((LA329_28 >= MULT_OPERATOR) && (LA329_28 <= NULL_SAFE_EQUAL_OPERATOR)) || LA329_28 == PLUS_OPERATOR || ((LA329_28 >= SHIFT_LEFT_OPERATOR) && (LA329_28 <= SHIFT_RIGHT_OPERATOR))))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_28 == DOT_SYMBOL))
                        {
                            {
                                int LA329_713 = LA(3);
                                if ( (synpred1_MySQL(ctx)))
                                {
                                    alt329=1;
                                }
                                else if ( (ANTLR3_TRUE))
                                {
                                    alt329=2;
                                }
                                else
                                {
                                    if (BACKTRACKING>0)
                                    {
                                        FAILEDFLAG = ANTLR3_TRUE;
                                        return retval;
                                    }


                                    CONSTRUCTEX();
                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                    EXCEPTION->message      = (void *)"";
                                    EXCEPTION->decisionNum  = 329;
                                    EXCEPTION->state        = 713;


                                    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_767 = LA(3);
                                if ( (synpred1_MySQL(ctx)))
                                {
                                    alt329=1;
                                }
                                else if ( (ANTLR3_TRUE))
                                {
                                    alt329=2;
                                }
                                else
                                {
                                    if (BACKTRACKING>0)
                                    {
                                        FAILEDFLAG = ANTLR3_TRUE;
                                        return retval;
                                    }


                                    CONSTRUCTEX();
                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                    EXCEPTION->message      = (void *)"";
                                    EXCEPTION->decisionNum  = 329;
                                    EXCEPTION->state        = 767;


                                    goto ruleselect_itemEx;

                                }
                            }
                        }
                        else if ( (LA329_30 == EOF || ((LA329_30 >= ACCOUNT_SYMBOL) && (LA329_30 <= YEAR_SYMBOL)) || LA329_30 == AND_SYMBOL || LA329_30 == BETWEEN_SYMBOL || LA329_30 == COLLATE_SYMBOL || LA329_30 == CROSS_SYMBOL || LA329_30 == FOR_SYMBOL || LA329_30 == FROM_SYMBOL || ((LA329_30 >= GROUP_SYMBOL) && (LA329_30 <= HAVING_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA329_30 == LOCK_SYMBOL || ((LA329_30 >= MOD_SYMBOL) && (LA329_30 <= NATURAL_SYMBOL)) || LA329_30 == NOT_SYMBOL || LA329_30 == ON_SYMBOL || LA329_30 == OPEN_PAR_SYMBOL || ((LA329_30 >= ORDER_SYMBOL) && (LA329_30 <= OR_SYMBOL)) || LA329_30 == PROCEDURE_SYMBOL || LA329_30 == REGEXP_SYMBOL || LA329_30 == RIGHT_SYMBOL || LA329_30 == SEMICOLON_SYMBOL || LA329_30 == SET_SYMBOL || 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 || LA329_30 == AS_SYMBOL || ((LA329_30 >= BACK_TICK_QUOTED_ID) && (LA329_30 <= BITWISE_AND_OPERATOR)) || ((LA329_30 >= BITWISE_OR_OPERATOR) && (LA329_30 <= BITWISE_XOR_OPERATOR)) || ((LA329_30 >= CLOSE_CURLY_SYMBOL) && (LA329_30 <= CLOSE_PAR_SYMBOL)) || ((LA329_30 >= COMMA_SYMBOL) && (LA329_30 <= CONCAT_PIPES_SYMBOL)) || ((LA329_30 >= DIV_OPERATOR) && (LA329_30 <= DIV_SYMBOL)) || LA329_30 == DOUBLE_QUOTED_TEXT || LA329_30 == EQUAL_OPERATOR || ((LA329_30 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_30 <= GREATER_THAN_OPERATOR)) || ((LA329_30 >= HEX_NUMBER) && (LA329_30 <= IDENTIFIER)) || LA329_30 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA329_30 >= LESS_OR_EQUAL_OPERATOR) && (LA329_30 <= LESS_THAN_OPERATOR)) || LA329_30 == LOGICAL_AND_OPERATOR || LA329_30 == LOGICAL_OR_OPERATOR || ((LA329_30 >= MINUS_OPERATOR) && (LA329_30 <= MOD_OPERATOR)) || ((LA329_30 >= MULT_OPERATOR) && (LA329_30 <= NULL_SAFE_EQUAL_OPERATOR)) || LA329_30 == PLUS_OPERATOR || ((LA329_30 >= SHIFT_LEFT_OPERATOR) && (LA329_30 <= SHIFT_RIGHT_OPERATOR))))
                        {
                            alt329=2;
                        }
                        else
                        {
                            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 == BETWEEN_SYMBOL || LA329_32 == COLLATE_SYMBOL || LA329_32 == CROSS_SYMBOL || LA329_32 == FOR_SYMBOL || LA329_32 == FROM_SYMBOL || ((LA329_32 >= GROUP_SYMBOL) && (LA329_32 <= HAVING_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA329_32 == LOCK_SYMBOL || ((LA329_32 >= MOD_SYMBOL) && (LA329_32 <= NATURAL_SYMBOL)) || LA329_32 == NOT_SYMBOL || LA329_32 == ON_SYMBOL || LA329_32 == OPEN_PAR_SYMBOL || ((LA329_32 >= ORDER_SYMBOL) && (LA329_32 <= OR_SYMBOL)) || LA329_32 == PROCEDURE_SYMBOL || LA329_32 == REGEXP_SYMBOL || LA329_32 == RIGHT_SYMBOL || LA329_32 == SEMICOLON_SYMBOL || LA329_32 == SET_SYMBOL || 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 || LA329_32 == AS_SYMBOL || ((LA329_32 >= BACK_TICK_QUOTED_ID) && (LA329_32 <= BITWISE_AND_OPERATOR)) || ((LA329_32 >= BITWISE_OR_OPERATOR) && (LA329_32 <= BITWISE_XOR_OPERATOR)) || ((LA329_32 >= CLOSE_CURLY_SYMBOL) && (LA329_32 <= CLOSE_PAR_SYMBOL)) || ((LA329_32 >= COMMA_SYMBOL) && (LA329_32 <= CONCAT_PIPES_SYMBOL)) || ((LA329_32 >= DIV_OPERATOR) && (LA329_32 <= DIV_SYMBOL)) || LA329_32 == DOUBLE_QUOTED_TEXT || LA329_32 == EQUAL_OPERATOR || ((LA329_32 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_32 <= GREATER_THAN_OPERATOR)) || ((LA329_32 >= HEX_NUMBER) && (LA329_32 <= IDENTIFIER)) || LA329_32 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA329_32 >= LESS_OR_EQUAL_OPERATOR) && (LA329_32 <= LESS_THAN_OPERATOR)) || LA329_32 == LOGICAL_AND_OPERATOR || LA329_32 == LOGICAL_OR_OPERATOR || ((LA329_32 >= MINUS_OPERATOR) && (LA329_32 <= MOD_OPERATOR)) || ((LA329_32 >= MULT_OPERATOR) && (LA329_32 <= NULL_SAFE_EQUAL_OPERATOR)) || LA329_32 == PLUS_OPERATOR || ((LA329_32 >= SHIFT_LEFT_OPERATOR) && (LA329_32 <= SHIFT_RIGHT_OPERATOR))))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_32 == DOT_SYMBOL))
                        {
                            {
                                int LA329_823 = LA(3);
                                if ( (synpred1_MySQL(ctx)))
                                {
                                    alt329=1;
                                }
                                else if ( (ANTLR3_TRUE))
                                {
                                    alt329=2;
                                }
                                else
                                {
                                    if (BACKTRACKING>0)
                                    {
                                        FAILEDFLAG = ANTLR3_TRUE;
                                        return retval;
                                    }


                                    CONSTRUCTEX();
                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                    EXCEPTION->message      = (void *)"";
                                    EXCEPTION->decisionNum  = 329;
                                    EXCEPTION->state        = 823;


                                    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 == BETWEEN_SYMBOL || LA329_34 == COLLATE_SYMBOL || LA329_34 == CROSS_SYMBOL || LA329_34 == FOR_SYMBOL || LA329_34 == FROM_SYMBOL || ((LA329_34 >= GROUP_SYMBOL) && (LA329_34 <= HAVING_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA329_34 == LOCK_SYMBOL || ((LA329_34 >= MOD_SYMBOL) && (LA329_34 <= NATURAL_SYMBOL)) || LA329_34 == NOT_SYMBOL || LA329_34 == ON_SYMBOL || LA329_34 == OPEN_PAR_SYMBOL || ((LA329_34 >= ORDER_SYMBOL) && (LA329_34 <= OR_SYMBOL)) || LA329_34 == PROCEDURE_SYMBOL || LA329_34 == REGEXP_SYMBOL || LA329_34 == RIGHT_SYMBOL || LA329_34 == SEMICOLON_SYMBOL || LA329_34 == SET_SYMBOL || 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 || LA329_34 == AS_SYMBOL || ((LA329_34 >= BACK_TICK_QUOTED_ID) && (LA329_34 <= BITWISE_AND_OPERATOR)) || ((LA329_34 >= BITWISE_OR_OPERATOR) && (LA329_34 <= BITWISE_XOR_OPERATOR)) || ((LA329_34 >= CLOSE_CURLY_SYMBOL) && (LA329_34 <= CLOSE_PAR_SYMBOL)) || ((LA329_34 >= COMMA_SYMBOL) && (LA329_34 <= CONCAT_PIPES_SYMBOL)) || ((LA329_34 >= DIV_OPERATOR) && (LA329_34 <= DIV_SYMBOL)) || LA329_34 == DOUBLE_QUOTED_TEXT || LA329_34 == EQUAL_OPERATOR || ((LA329_34 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_34 <= GREATER_THAN_OPERATOR)) || ((LA329_34 >= HEX_NUMBER) && (LA329_34 <= IDENTIFIER)) || LA329_34 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA329_34 >= LESS_OR_EQUAL_OPERATOR) && (LA329_34 <= LESS_THAN_OPERATOR)) || LA329_34 == LOGICAL_AND_OPERATOR || LA329_34 == LOGICAL_OR_OPERATOR || ((LA329_34 >= MINUS_OPERATOR) && (LA329_34 <= MOD_OPERATOR)) || ((LA329_34 >= MULT_OPERATOR) && (LA329_34 <= NULL_SAFE_EQUAL_OPERATOR)) || LA329_34 == PLUS_OPERATOR || ((LA329_34 >= SHIFT_LEFT_OPERATOR) && (LA329_34 <= SHIFT_RIGHT_OPERATOR))))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_34 == DOT_SYMBOL))
                        {
                            {
                                int LA329_878 = LA(3);
                                if ( (synpred1_MySQL(ctx)))
                                {
                                    alt329=1;
                                }
                                else if ( (ANTLR3_TRUE))
                                {
                                    alt329=2;
                                }
                                else
                                {
                                    if (BACKTRACKING>0)
                                    {
                                        FAILEDFLAG = ANTLR3_TRUE;
                                        return retval;
                                    }


                                    CONSTRUCTEX();
                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                    EXCEPTION->message      = (void *)"";
                                    EXCEPTION->decisionNum  = 329;
                                    EXCEPTION->state        = 878;


                                    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 == BETWEEN_SYMBOL || LA329_35 == COLLATE_SYMBOL || LA329_35 == CROSS_SYMBOL || LA329_35 == FOR_SYMBOL || LA329_35 == FROM_SYMBOL || ((LA329_35 >= GROUP_SYMBOL) && (LA329_35 <= HAVING_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA329_35 == LOCK_SYMBOL || ((LA329_35 >= MOD_SYMBOL) && (LA329_35 <= NATURAL_SYMBOL)) || LA329_35 == NOT_SYMBOL || LA329_35 == ON_SYMBOL || LA329_35 == OPEN_PAR_SYMBOL || ((LA329_35 >= ORDER_SYMBOL) && (LA329_35 <= OR_SYMBOL)) || LA329_35 == PROCEDURE_SYMBOL || LA329_35 == REGEXP_SYMBOL || LA329_35 == RIGHT_SYMBOL || LA329_35 == SEMICOLON_SYMBOL || LA329_35 == SET_SYMBOL || 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 || LA329_35 == AS_SYMBOL || ((LA329_35 >= BACK_TICK_QUOTED_ID) && (LA329_35 <= BITWISE_AND_OPERATOR)) || ((LA329_35 >= BITWISE_OR_OPERATOR) && (LA329_35 <= BITWISE_XOR_OPERATOR)) || ((LA329_35 >= CLOSE_CURLY_SYMBOL) && (LA329_35 <= CLOSE_PAR_SYMBOL)) || ((LA329_35 >= COMMA_SYMBOL) && (LA329_35 <= CONCAT_PIPES_SYMBOL)) || ((LA329_35 >= DIV_OPERATOR) && (LA329_35 <= DIV_SYMBOL)) || LA329_35 == DOUBLE_QUOTED_TEXT || LA329_35 == EQUAL_OPERATOR || ((LA329_35 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_35 <= GREATER_THAN_OPERATOR)) || ((LA329_35 >= HEX_NUMBER) && (LA329_35 <= IDENTIFIER)) || LA329_35 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA329_35 >= LESS_OR_EQUAL_OPERATOR) && (LA329_35 <= LESS_THAN_OPERATOR)) || LA329_35 == LOGICAL_AND_OPERATOR || LA329_35 == LOGICAL_OR_OPERATOR || ((LA329_35 >= MINUS_OPERATOR) && (LA329_35 <= MOD_OPERATOR)) || ((LA329_35 >= MULT_OPERATOR) && (LA329_35 <= NULL_SAFE_EQUAL_OPERATOR)) || LA329_35 == PLUS_OPERATOR || ((LA329_35 >= SHIFT_LEFT_OPERATOR) && (LA329_35 <= SHIFT_RIGHT_OPERATOR))))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_35 == DOT_SYMBOL))
                        {
                            {
                                int LA329_933 = LA(3);
                                if ( (synpred1_MySQL(ctx)))
                                {
                                    alt329=1;
                                }
                                else if ( (ANTLR3_TRUE))
                                {
                                    alt329=2;
                                }
                                else
                                {
                                    if (BACKTRACKING>0)
                                    {
                                        FAILEDFLAG = ANTLR3_TRUE;
                                        return retval;
                                    }


                                    CONSTRUCTEX();
                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                    EXCEPTION->message      = (void *)"";
                                    EXCEPTION->decisionNum  = 329;
                                    EXCEPTION->state        = 933;


                                    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 == BETWEEN_SYMBOL || LA329_40 == COLLATE_SYMBOL || LA329_40 == CROSS_SYMBOL || LA329_40 == FOR_SYMBOL || LA329_40 == FROM_SYMBOL || ((LA329_40 >= GROUP_SYMBOL) && (LA329_40 <= HAVING_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA329_40 == LOCK_SYMBOL || ((LA329_40 >= MOD_SYMBOL) && (LA329_40 <= NATURAL_SYMBOL)) || LA329_40 == NOT_SYMBOL || LA329_40 == ON_SYMBOL || LA329_40 == OPEN_PAR_SYMBOL || ((LA329_40 >= ORDER_SYMBOL) && (LA329_40 <= OR_SYMBOL)) || LA329_40 == PROCEDURE_SYMBOL || LA329_40 == REGEXP_SYMBOL || LA329_40 == RIGHT_SYMBOL || LA329_40 == SEMICOLON_SYMBOL || LA329_40 == SET_SYMBOL || 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 || LA329_40 == AS_SYMBOL || ((LA329_40 >= BACK_TICK_QUOTED_ID) && (LA329_40 <= BITWISE_AND_OPERATOR)) || ((LA329_40 >= BITWISE_OR_OPERATOR) && (LA329_40 <= BITWISE_XOR_OPERATOR)) || ((LA329_40 >= CLOSE_CURLY_SYMBOL) && (LA329_40 <= CLOSE_PAR_SYMBOL)) || ((LA329_40 >= COMMA_SYMBOL) && (LA329_40 <= CONCAT_PIPES_SYMBOL)) || ((LA329_40 >= DIV_OPERATOR) && (LA329_40 <= DIV_SYMBOL)) || LA329_40 == DOUBLE_QUOTED_TEXT || LA329_40 == EQUAL_OPERATOR || ((LA329_40 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_40 <= GREATER_THAN_OPERATOR)) || ((LA329_40 >= HEX_NUMBER) && (LA329_40 <= IDENTIFIER)) || LA329_40 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA329_40 >= LESS_OR_EQUAL_OPERATOR) && (LA329_40 <= LESS_THAN_OPERATOR)) || LA329_40 == LOGICAL_AND_OPERATOR || LA329_40 == LOGICAL_OR_OPERATOR || ((LA329_40 >= MINUS_OPERATOR) && (LA329_40 <= MOD_OPERATOR)) || ((LA329_40 >= MULT_OPERATOR) && (LA329_40 <= NULL_SAFE_EQUAL_OPERATOR)) || LA329_40 == PLUS_OPERATOR || ((LA329_40 >= SHIFT_LEFT_OPERATOR) && (LA329_40 <= SHIFT_RIGHT_OPERATOR))))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_40 == DOT_SYMBOL))
                        {
                            {
                                int LA329_988 = LA(3);
                                if ( (synpred1_MySQL(ctx)))
                                {
                                    alt329=1;
                                }
                                else if ( (ANTLR3_TRUE))
                                {
                                    alt329=2;
                                }
                                else
                                {
                                    if (BACKTRACKING>0)
                                    {
                                        FAILEDFLAG = ANTLR3_TRUE;
                                        return retval;
                                    }


                                    CONSTRUCTEX();
                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                    EXCEPTION->message      = (void *)"";
                                    EXCEPTION->decisionNum  = 329;
                                    EXCEPTION->state        = 988;


                                    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_1042 = LA(3);
                                if ( (synpred1_MySQL(ctx)))
                                {
                                    alt329=1;
                                }
                                else if ( (ANTLR3_TRUE))
                                {
                                    alt329=2;
                                }
                                else
                                {
                                    if (BACKTRACKING>0)
                                    {
                                        FAILEDFLAG = ANTLR3_TRUE;
                                        return retval;
                                    }


                                    CONSTRUCTEX();
                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                    EXCEPTION->message      = (void *)"";
                                    EXCEPTION->decisionNum  = 329;
                                    EXCEPTION->state        = 1042;


                                    goto ruleselect_itemEx;

                                }
                            }
                        }
                        else if ( (LA329_45 == EOF || ((LA329_45 >= ACCOUNT_SYMBOL) && (LA329_45 <= YEAR_SYMBOL)) || LA329_45 == AND_SYMBOL || LA329_45 == BETWEEN_SYMBOL || LA329_45 == COLLATE_SYMBOL || LA329_45 == CROSS_SYMBOL || LA329_45 == FOR_SYMBOL || LA329_45 == FROM_SYMBOL || ((LA329_45 >= GROUP_SYMBOL) && (LA329_45 <= HAVING_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA329_45 == LOCK_SYMBOL || ((LA329_45 >= MOD_SYMBOL) && (LA329_45 <= NATURAL_SYMBOL)) || LA329_45 == NOT_SYMBOL || LA329_45 == ON_SYMBOL || LA329_45 == OPEN_PAR_SYMBOL || ((LA329_45 >= ORDER_SYMBOL) && (LA329_45 <= OR_SYMBOL)) || LA329_45 == PROCEDURE_SYMBOL || LA329_45 == REGEXP_SYMBOL || LA329_45 == RIGHT_SYMBOL || LA329_45 == SEMICOLON_SYMBOL || LA329_45 == SET_SYMBOL || 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 || LA329_45 == AS_SYMBOL || ((LA329_45 >= BACK_TICK_QUOTED_ID) && (LA329_45 <= BITWISE_AND_OPERATOR)) || ((LA329_45 >= BITWISE_OR_OPERATOR) && (LA329_45 <= BITWISE_XOR_OPERATOR)) || ((LA329_45 >= CLOSE_CURLY_SYMBOL) && (LA329_45 <= CLOSE_PAR_SYMBOL)) || ((LA329_45 >= COMMA_SYMBOL) && (LA329_45 <= CONCAT_PIPES_SYMBOL)) || ((LA329_45 >= DIV_OPERATOR) && (LA329_45 <= DIV_SYMBOL)) || LA329_45 == DOUBLE_QUOTED_TEXT || LA329_45 == EQUAL_OPERATOR || ((LA329_45 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_45 <= GREATER_THAN_OPERATOR)) || ((LA329_45 >= HEX_NUMBER) && (LA329_45 <= IDENTIFIER)) || LA329_45 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA329_45 >= LESS_OR_EQUAL_OPERATOR) && (LA329_45 <= LESS_THAN_OPERATOR)) || LA329_45 == LOGICAL_AND_OPERATOR || LA329_45 == LOGICAL_OR_OPERATOR || ((LA329_45 >= MINUS_OPERATOR) && (LA329_45 <= MOD_OPERATOR)) || ((LA329_45 >= MULT_OPERATOR) && (LA329_45 <= NULL_SAFE_EQUAL_OPERATOR)) || LA329_45 == PLUS_OPERATOR || ((LA329_45 >= SHIFT_LEFT_OPERATOR) && (LA329_45 <= SHIFT_RIGHT_OPERATOR))))
                        {
                            alt329=2;
                        }
                        else
                        {
                            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 == BETWEEN_SYMBOL || LA329_49 == COLLATE_SYMBOL || LA329_49 == CROSS_SYMBOL || LA329_49 == FOR_SYMBOL || LA329_49 == FROM_SYMBOL || ((LA329_49 >= GROUP_SYMBOL) && (LA329_49 <= HAVING_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA329_49 == LOCK_SYMBOL || ((LA329_49 >= MOD_SYMBOL) && (LA329_49 <= NATURAL_SYMBOL)) || LA329_49 == NOT_SYMBOL || LA329_49 == ON_SYMBOL || LA329_49 == OPEN_PAR_SYMBOL || ((LA329_49 >= ORDER_SYMBOL) && (LA329_49 <= OR_SYMBOL)) || LA329_49 == PROCEDURE_SYMBOL || LA329_49 == REGEXP_SYMBOL || LA329_49 == RIGHT_SYMBOL || LA329_49 == SEMICOLON_SYMBOL || LA329_49 == SET_SYMBOL || 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 || LA329_49 == AS_SYMBOL || ((LA329_49 >= BACK_TICK_QUOTED_ID) && (LA329_49 <= BITWISE_AND_OPERATOR)) || ((LA329_49 >= BITWISE_OR_OPERATOR) && (LA329_49 <= BITWISE_XOR_OPERATOR)) || ((LA329_49 >= CLOSE_CURLY_SYMBOL) && (LA329_49 <= CLOSE_PAR_SYMBOL)) || ((LA329_49 >= COMMA_SYMBOL) && (LA329_49 <= CONCAT_PIPES_SYMBOL)) || ((LA329_49 >= DIV_OPERATOR) && (LA329_49 <= DIV_SYMBOL)) || LA329_49 == DOUBLE_QUOTED_TEXT || LA329_49 == EQUAL_OPERATOR || ((LA329_49 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_49 <= GREATER_THAN_OPERATOR)) || ((LA329_49 >= HEX_NUMBER) && (LA329_49 <= IDENTIFIER)) || LA329_49 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA329_49 >= LESS_OR_EQUAL_OPERATOR) && (LA329_49 <= LESS_THAN_OPERATOR)) || LA329_49 == LOGICAL_AND_OPERATOR || LA329_49 == LOGICAL_OR_OPERATOR || ((LA329_49 >= MINUS_OPERATOR) && (LA329_49 <= MOD_OPERATOR)) || ((LA329_49 >= MULT_OPERATOR) && (LA329_49 <= NULL_SAFE_EQUAL_OPERATOR)) || LA329_49 == PLUS_OPERATOR || ((LA329_49 >= SHIFT_LEFT_OPERATOR) && (LA329_49 <= SHIFT_RIGHT_OPERATOR))))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_49 == DOT_SYMBOL))
                        {
                            {
                                int LA329_1098 = LA(3);
                                if ( (synpred1_MySQL(ctx)))
                                {
                                    alt329=1;
                                }
                                else if ( (ANTLR3_TRUE))
                                {
                                    alt329=2;
                                }
                                else
                                {
                                    if (BACKTRACKING>0)
                                    {
                                        FAILEDFLAG = ANTLR3_TRUE;
                                        return retval;
                                    }


                                    CONSTRUCTEX();
                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                    EXCEPTION->message      = (void *)"";
                                    EXCEPTION->decisionNum  = 329;
                                    EXCEPTION->state        = 1098;


                                    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 == BETWEEN_SYMBOL || LA329_50 == COLLATE_SYMBOL || LA329_50 == CROSS_SYMBOL || LA329_50 == FOR_SYMBOL || LA329_50 == FROM_SYMBOL || ((LA329_50 >= GROUP_SYMBOL) && (LA329_50 <= HAVING_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA329_50 == LOCK_SYMBOL || ((LA329_50 >= MOD_SYMBOL) && (LA329_50 <= NATURAL_SYMBOL)) || LA329_50 == NOT_SYMBOL || LA329_50 == ON_SYMBOL || LA329_50 == OPEN_PAR_SYMBOL || ((LA329_50 >= ORDER_SYMBOL) && (LA329_50 <= OR_SYMBOL)) || LA329_50 == PROCEDURE_SYMBOL || LA329_50 == REGEXP_SYMBOL || LA329_50 == RIGHT_SYMBOL || LA329_50 == SEMICOLON_SYMBOL || LA329_50 == SET_SYMBOL || 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 || LA329_50 == AS_SYMBOL || ((LA329_50 >= BACK_TICK_QUOTED_ID) && (LA329_50 <= BITWISE_AND_OPERATOR)) || ((LA329_50 >= BITWISE_OR_OPERATOR) && (LA329_50 <= BITWISE_XOR_OPERATOR)) || ((LA329_50 >= CLOSE_CURLY_SYMBOL) && (LA329_50 <= CLOSE_PAR_SYMBOL)) || ((LA329_50 >= COMMA_SYMBOL) && (LA329_50 <= CONCAT_PIPES_SYMBOL)) || ((LA329_50 >= DIV_OPERATOR) && (LA329_50 <= DIV_SYMBOL)) || LA329_50 == DOUBLE_QUOTED_TEXT || LA329_50 == EQUAL_OPERATOR || ((LA329_50 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_50 <= GREATER_THAN_OPERATOR)) || ((LA329_50 >= HEX_NUMBER) && (LA329_50 <= IDENTIFIER)) || LA329_50 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA329_50 >= LESS_OR_EQUAL_OPERATOR) && (LA329_50 <= LESS_THAN_OPERATOR)) || LA329_50 == LOGICAL_AND_OPERATOR || LA329_50 == LOGICAL_OR_OPERATOR || ((LA329_50 >= MINUS_OPERATOR) && (LA329_50 <= MOD_OPERATOR)) || ((LA329_50 >= MULT_OPERATOR) && (LA329_50 <= NULL_SAFE_EQUAL_OPERATOR)) || LA329_50 == PLUS_OPERATOR || ((LA329_50 >= SHIFT_LEFT_OPERATOR) && (LA329_50 <= SHIFT_RIGHT_OPERATOR))))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_50 == DOT_SYMBOL))
                        {
                            {
                                int LA329_1153 = LA(3);
                                if ( (synpred1_MySQL(ctx)))
                                {
                                    alt329=1;
                                }
                                else if ( (ANTLR3_TRUE))
                                {
                                    alt329=2;
                                }
                                else
                                {
                                    if (BACKTRACKING>0)
                                    {
                                        FAILEDFLAG = ANTLR3_TRUE;
                                        return retval;
                                    }


                                    CONSTRUCTEX();
                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                    EXCEPTION->message      = (void *)"";
                                    EXCEPTION->decisionNum  = 329;
                                    EXCEPTION->state        = 1153;


                                    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 == BETWEEN_SYMBOL || LA329_51 == COLLATE_SYMBOL || LA329_51 == CROSS_SYMBOL || LA329_51 == FOR_SYMBOL || LA329_51 == FROM_SYMBOL || ((LA329_51 >= GROUP_SYMBOL) && (LA329_51 <= HAVING_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA329_51 == LOCK_SYMBOL || ((LA329_51 >= MOD_SYMBOL) && (LA329_51 <= NATURAL_SYMBOL)) || LA329_51 == NOT_SYMBOL || LA329_51 == ON_SYMBOL || LA329_51 == OPEN_PAR_SYMBOL || ((LA329_51 >= ORDER_SYMBOL) && (LA329_51 <= OR_SYMBOL)) || LA329_51 == PROCEDURE_SYMBOL || LA329_51 == REGEXP_SYMBOL || LA329_51 == RIGHT_SYMBOL || LA329_51 == SEMICOLON_SYMBOL || LA329_51 == SET_SYMBOL || 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 || LA329_51 == AS_SYMBOL || ((LA329_51 >= BACK_TICK_QUOTED_ID) && (LA329_51 <= BITWISE_AND_OPERATOR)) || ((LA329_51 >= BITWISE_OR_OPERATOR) && (LA329_51 <= BITWISE_XOR_OPERATOR)) || ((LA329_51 >= CLOSE_CURLY_SYMBOL) && (LA329_51 <= CLOSE_PAR_SYMBOL)) || ((LA329_51 >= COMMA_SYMBOL) && (LA329_51 <= CONCAT_PIPES_SYMBOL)) || ((LA329_51 >= DIV_OPERATOR) && (LA329_51 <= DIV_SYMBOL)) || LA329_51 == DOUBLE_QUOTED_TEXT || LA329_51 == EQUAL_OPERATOR || ((LA329_51 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_51 <= GREATER_THAN_OPERATOR)) || ((LA329_51 >= HEX_NUMBER) && (LA329_51 <= IDENTIFIER)) || LA329_51 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA329_51 >= LESS_OR_EQUAL_OPERATOR) && (LA329_51 <= LESS_THAN_OPERATOR)) || LA329_51 == LOGICAL_AND_OPERATOR || LA329_51 == LOGICAL_OR_OPERATOR || ((LA329_51 >= MINUS_OPERATOR) && (LA329_51 <= MOD_OPERATOR)) || ((LA329_51 >= MULT_OPERATOR) && (LA329_51 <= NULL_SAFE_EQUAL_OPERATOR)) || LA329_51 == PLUS_OPERATOR || ((LA329_51 >= SHIFT_LEFT_OPERATOR) && (LA329_51 <= SHIFT_RIGHT_OPERATOR))))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_51 == DOT_SYMBOL))
                        {
                            {
                                int LA329_1208 = LA(3);
                                if ( (synpred1_MySQL(ctx)))
                                {
                                    alt329=1;
                                }
                                else if ( (ANTLR3_TRUE))
                                {
                                    alt329=2;
                                }
                                else
                                {
                                    if (BACKTRACKING>0)
                                    {
                                        FAILEDFLAG = ANTLR3_TRUE;
                                        return retval;
                                    }


                                    CONSTRUCTEX();
                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                    EXCEPTION->message      = (void *)"";
                                    EXCEPTION->decisionNum  = 329;
                                    EXCEPTION->state        = 1208;


                                    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 == BETWEEN_SYMBOL || LA329_52 == COLLATE_SYMBOL || LA329_52 == CROSS_SYMBOL || LA329_52 == FOR_SYMBOL || LA329_52 == FROM_SYMBOL || ((LA329_52 >= GROUP_SYMBOL) && (LA329_52 <= HAVING_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA329_52 == LOCK_SYMBOL || ((LA329_52 >= MOD_SYMBOL) && (LA329_52 <= NATURAL_SYMBOL)) || LA329_52 == NOT_SYMBOL || LA329_52 == ON_SYMBOL || LA329_52 == OPEN_PAR_SYMBOL || ((LA329_52 >= ORDER_SYMBOL) && (LA329_52 <= OR_SYMBOL)) || LA329_52 == PROCEDURE_SYMBOL || LA329_52 == REGEXP_SYMBOL || LA329_52 == RIGHT_SYMBOL || LA329_52 == SEMICOLON_SYMBOL || LA329_52 == SET_SYMBOL || 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 || LA329_52 == AS_SYMBOL || ((LA329_52 >= BACK_TICK_QUOTED_ID) && (LA329_52 <= BITWISE_AND_OPERATOR)) || ((LA329_52 >= BITWISE_OR_OPERATOR) && (LA329_52 <= BITWISE_XOR_OPERATOR)) || ((LA329_52 >= CLOSE_CURLY_SYMBOL) && (LA329_52 <= CLOSE_PAR_SYMBOL)) || ((LA329_52 >= COMMA_SYMBOL) && (LA329_52 <= CONCAT_PIPES_SYMBOL)) || ((LA329_52 >= DIV_OPERATOR) && (LA329_52 <= DIV_SYMBOL)) || LA329_52 == DOUBLE_QUOTED_TEXT || LA329_52 == EQUAL_OPERATOR || ((LA329_52 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_52 <= GREATER_THAN_OPERATOR)) || ((LA329_52 >= HEX_NUMBER) && (LA329_52 <= IDENTIFIER)) || LA329_52 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA329_52 >= LESS_OR_EQUAL_OPERATOR) && (LA329_52 <= LESS_THAN_OPERATOR)) || LA329_52 == LOGICAL_AND_OPERATOR || LA329_52 == LOGICAL_OR_OPERATOR || ((LA329_52 >= MINUS_OPERATOR) && (LA329_52 <= MOD_OPERATOR)) || ((LA329_52 >= MULT_OPERATOR) && (LA329_52 <= NULL_SAFE_EQUAL_OPERATOR)) || LA329_52 == PLUS_OPERATOR || ((LA329_52 >= SHIFT_LEFT_OPERATOR) && (LA329_52 <= SHIFT_RIGHT_OPERATOR))))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_52 == DOT_SYMBOL))
                        {
                            {
                                int LA329_1263 = LA(3);
                                if ( (synpred1_MySQL(ctx)))
                                {
                                    alt329=1;
                                }
                                else if ( (ANTLR3_TRUE))
                                {
                                    alt329=2;
                                }
                                else
                                {
                                    if (BACKTRACKING>0)
                                    {
                                        FAILEDFLAG = ANTLR3_TRUE;
                                        return retval;
                                    }


                                    CONSTRUCTEX();
                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                    EXCEPTION->message      = (void *)"";
                                    EXCEPTION->decisionNum  = 329;
                                    EXCEPTION->state        = 1263;


                                    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 == BETWEEN_SYMBOL || LA329_55 == COLLATE_SYMBOL || LA329_55 == CROSS_SYMBOL || LA329_55 == FOR_SYMBOL || LA329_55 == FROM_SYMBOL || ((LA329_55 >= GROUP_SYMBOL) && (LA329_55 <= HAVING_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA329_55 == LOCK_SYMBOL || ((LA329_55 >= MOD_SYMBOL) && (LA329_55 <= NATURAL_SYMBOL)) || LA329_55 == NOT_SYMBOL || LA329_55 == ON_SYMBOL || LA329_55 == OPEN_PAR_SYMBOL || ((LA329_55 >= ORDER_SYMBOL) && (LA329_55 <= OR_SYMBOL)) || LA329_55 == PROCEDURE_SYMBOL || LA329_55 == REGEXP_SYMBOL || LA329_55 == RIGHT_SYMBOL || LA329_55 == SEMICOLON_SYMBOL || LA329_55 == SET_SYMBOL || 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 || LA329_55 == AS_SYMBOL || ((LA329_55 >= BACK_TICK_QUOTED_ID) && (LA329_55 <= BITWISE_AND_OPERATOR)) || ((LA329_55 >= BITWISE_OR_OPERATOR) && (LA329_55 <= BITWISE_XOR_OPERATOR)) || ((LA329_55 >= CLOSE_CURLY_SYMBOL) && (LA329_55 <= CLOSE_PAR_SYMBOL)) || ((LA329_55 >= COMMA_SYMBOL) && (LA329_55 <= CONCAT_PIPES_SYMBOL)) || ((LA329_55 >= DIV_OPERATOR) && (LA329_55 <= DIV_SYMBOL)) || LA329_55 == DOUBLE_QUOTED_TEXT || LA329_55 == EQUAL_OPERATOR || ((LA329_55 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_55 <= GREATER_THAN_OPERATOR)) || ((LA329_55 >= HEX_NUMBER) && (LA329_55 <= IDENTIFIER)) || LA329_55 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA329_55 >= LESS_OR_EQUAL_OPERATOR) && (LA329_55 <= LESS_THAN_OPERATOR)) || LA329_55 == LOGICAL_AND_OPERATOR || LA329_55 == LOGICAL_OR_OPERATOR || ((LA329_55 >= MINUS_OPERATOR) && (LA329_55 <= MOD_OPERATOR)) || ((LA329_55 >= MULT_OPERATOR) && (LA329_55 <= NULL_SAFE_EQUAL_OPERATOR)) || LA329_55 == PLUS_OPERATOR || ((LA329_55 >= SHIFT_LEFT_OPERATOR) && (LA329_55 <= SHIFT_RIGHT_OPERATOR))))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_55 == DOT_SYMBOL))
                        {
                            {
                                int LA329_1318 = LA(3);
                                if ( (synpred1_MySQL(ctx)))
                                {
                                    alt329=1;
                                }
                                else if ( (ANTLR3_TRUE))
                                {
                                    alt329=2;
                                }
                                else
                                {
                                    if (BACKTRACKING>0)
                                    {
                                        FAILEDFLAG = ANTLR3_TRUE;
                                        return retval;
                                    }


                                    CONSTRUCTEX();
                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                    EXCEPTION->message      = (void *)"";
                                    EXCEPTION->decisionNum  = 329;
                                    EXCEPTION->state        = 1318;


                                    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 == BETWEEN_SYMBOL || LA329_56 == COLLATE_SYMBOL || LA329_56 == CROSS_SYMBOL || LA329_56 == FOR_SYMBOL || LA329_56 == FROM_SYMBOL || ((LA329_56 >= GROUP_SYMBOL) && (LA329_56 <= HAVING_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA329_56 == LOCK_SYMBOL || ((LA329_56 >= MOD_SYMBOL) && (LA329_56 <= NATURAL_SYMBOL)) || LA329_56 == NOT_SYMBOL || LA329_56 == ON_SYMBOL || LA329_56 == OPEN_PAR_SYMBOL || ((LA329_56 >= ORDER_SYMBOL) && (LA329_56 <= OR_SYMBOL)) || LA329_56 == PROCEDURE_SYMBOL || LA329_56 == REGEXP_SYMBOL || LA329_56 == RIGHT_SYMBOL || LA329_56 == SEMICOLON_SYMBOL || LA329_56 == SET_SYMBOL || 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 || LA329_56 == AS_SYMBOL || ((LA329_56 >= BACK_TICK_QUOTED_ID) && (LA329_56 <= BITWISE_AND_OPERATOR)) || ((LA329_56 >= BITWISE_OR_OPERATOR) && (LA329_56 <= BITWISE_XOR_OPERATOR)) || ((LA329_56 >= CLOSE_CURLY_SYMBOL) && (LA329_56 <= CLOSE_PAR_SYMBOL)) || ((LA329_56 >= COMMA_SYMBOL) && (LA329_56 <= CONCAT_PIPES_SYMBOL)) || ((LA329_56 >= DIV_OPERATOR) && (LA329_56 <= DIV_SYMBOL)) || LA329_56 == DOUBLE_QUOTED_TEXT || LA329_56 == EQUAL_OPERATOR || ((LA329_56 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_56 <= GREATER_THAN_OPERATOR)) || ((LA329_56 >= HEX_NUMBER) && (LA329_56 <= IDENTIFIER)) || LA329_56 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA329_56 >= LESS_OR_EQUAL_OPERATOR) && (LA329_56 <= LESS_THAN_OPERATOR)) || LA329_56 == LOGICAL_AND_OPERATOR || LA329_56 == LOGICAL_OR_OPERATOR || ((LA329_56 >= MINUS_OPERATOR) && (LA329_56 <= MOD_OPERATOR)) || ((LA329_56 >= MULT_OPERATOR) && (LA329_56 <= NULL_SAFE_EQUAL_OPERATOR)) || LA329_56 == PLUS_OPERATOR || ((LA329_56 >= SHIFT_LEFT_OPERATOR) && (LA329_56 <= SHIFT_RIGHT_OPERATOR))))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_56 == DOT_SYMBOL))
                        {
                            {
                                int LA329_1373 = LA(3);
                                if ( (synpred1_MySQL(ctx)))
                                {
                                    alt329=1;
                                }
                                else if ( (ANTLR3_TRUE))
                                {
                                    alt329=2;
                                }
                                else
                                {
                                    if (BACKTRACKING>0)
                                    {
                                        FAILEDFLAG = ANTLR3_TRUE;
                                        return retval;
                                    }


                                    CONSTRUCTEX();
                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                    EXCEPTION->message      = (void *)"";
                                    EXCEPTION->decisionNum  = 329;
                                    EXCEPTION->state        = 1373;


                                    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 == BETWEEN_SYMBOL || LA329_58 == COLLATE_SYMBOL || LA329_58 == CROSS_SYMBOL || LA329_58 == FOR_SYMBOL || LA329_58 == FROM_SYMBOL || ((LA329_58 >= GROUP_SYMBOL) && (LA329_58 <= HAVING_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA329_58 == LOCK_SYMBOL || ((LA329_58 >= MOD_SYMBOL) && (LA329_58 <= NATURAL_SYMBOL)) || LA329_58 == NOT_SYMBOL || LA329_58 == ON_SYMBOL || LA329_58 == OPEN_PAR_SYMBOL || ((LA329_58 >= ORDER_SYMBOL) && (LA329_58 <= OR_SYMBOL)) || LA329_58 == PROCEDURE_SYMBOL || LA329_58 == REGEXP_SYMBOL || LA329_58 == RIGHT_SYMBOL || LA329_58 == SEMICOLON_SYMBOL || LA329_58 == SET_SYMBOL || 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 || LA329_58 == AS_SYMBOL || ((LA329_58 >= BACK_TICK_QUOTED_ID) && (LA329_58 <= BITWISE_AND_OPERATOR)) || ((LA329_58 >= BITWISE_OR_OPERATOR) && (LA329_58 <= BITWISE_XOR_OPERATOR)) || ((LA329_58 >= CLOSE_CURLY_SYMBOL) && (LA329_58 <= CLOSE_PAR_SYMBOL)) || ((LA329_58 >= COMMA_SYMBOL) && (LA329_58 <= CONCAT_PIPES_SYMBOL)) || ((LA329_58 >= DIV_OPERATOR) && (LA329_58 <= DIV_SYMBOL)) || LA329_58 == DOUBLE_QUOTED_TEXT || LA329_58 == EQUAL_OPERATOR || ((LA329_58 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_58 <= GREATER_THAN_OPERATOR)) || ((LA329_58 >= HEX_NUMBER) && (LA329_58 <= IDENTIFIER)) || LA329_58 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA329_58 >= LESS_OR_EQUAL_OPERATOR) && (LA329_58 <= LESS_THAN_OPERATOR)) || LA329_58 == LOGICAL_AND_OPERATOR || LA329_58 == LOGICAL_OR_OPERATOR || ((LA329_58 >= MINUS_OPERATOR) && (LA329_58 <= MOD_OPERATOR)) || ((LA329_58 >= MULT_OPERATOR) && (LA329_58 <= NULL_SAFE_EQUAL_OPERATOR)) || LA329_58 == PLUS_OPERATOR || ((LA329_58 >= SHIFT_LEFT_OPERATOR) && (LA329_58 <= SHIFT_RIGHT_OPERATOR))))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_58 == DOT_SYMBOL))
                        {
                            {
                                int LA329_1428 = LA(3);
                                if ( (synpred1_MySQL(ctx)))
                                {
                                    alt329=1;
                                }
                                else if ( (ANTLR3_TRUE))
                                {
                                    alt329=2;
                                }
                                else
                                {
                                    if (BACKTRACKING>0)
                                    {
                                        FAILEDFLAG = ANTLR3_TRUE;
                                        return retval;
                                    }


                                    CONSTRUCTEX();
                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                    EXCEPTION->message      = (void *)"";
                                    EXCEPTION->decisionNum  = 329;
                                    EXCEPTION->state        = 1428;


                                    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 == BETWEEN_SYMBOL || LA329_59 == COLLATE_SYMBOL || LA329_59 == CROSS_SYMBOL || LA329_59 == FOR_SYMBOL || LA329_59 == FROM_SYMBOL || ((LA329_59 >= GROUP_SYMBOL) && (LA329_59 <= HAVING_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA329_59 == LOCK_SYMBOL || ((LA329_59 >= MOD_SYMBOL) && (LA329_59 <= NATURAL_SYMBOL)) || LA329_59 == NOT_SYMBOL || LA329_59 == ON_SYMBOL || LA329_59 == OPEN_PAR_SYMBOL || ((LA329_59 >= ORDER_SYMBOL) && (LA329_59 <= OR_SYMBOL)) || LA329_59 == PROCEDURE_SYMBOL || LA329_59 == REGEXP_SYMBOL || LA329_59 == RIGHT_SYMBOL || LA329_59 == SEMICOLON_SYMBOL || LA329_59 == SET_SYMBOL || 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 || LA329_59 == AS_SYMBOL || ((LA329_59 >= BACK_TICK_QUOTED_ID) && (LA329_59 <= BITWISE_AND_OPERATOR)) || ((LA329_59 >= BITWISE_OR_OPERATOR) && (LA329_59 <= BITWISE_XOR_OPERATOR)) || ((LA329_59 >= CLOSE_CURLY_SYMBOL) && (LA329_59 <= CLOSE_PAR_SYMBOL)) || ((LA329_59 >= COMMA_SYMBOL) && (LA329_59 <= CONCAT_PIPES_SYMBOL)) || ((LA329_59 >= DIV_OPERATOR) && (LA329_59 <= DIV_SYMBOL)) || LA329_59 == DOUBLE_QUOTED_TEXT || LA329_59 == EQUAL_OPERATOR || ((LA329_59 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_59 <= GREATER_THAN_OPERATOR)) || ((LA329_59 >= HEX_NUMBER) && (LA329_59 <= IDENTIFIER)) || LA329_59 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA329_59 >= LESS_OR_EQUAL_OPERATOR) && (LA329_59 <= LESS_THAN_OPERATOR)) || LA329_59 == LOGICAL_AND_OPERATOR || LA329_59 == LOGICAL_OR_OPERATOR || ((LA329_59 >= MINUS_OPERATOR) && (LA329_59 <= MOD_OPERATOR)) || ((LA329_59 >= MULT_OPERATOR) && (LA329_59 <= NULL_SAFE_EQUAL_OPERATOR)) || LA329_59 == PLUS_OPERATOR || ((LA329_59 >= SHIFT_LEFT_OPERATOR) && (LA329_59 <= SHIFT_RIGHT_OPERATOR))))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_59 == DOT_SYMBOL))
                        {
                            {
                                int LA329_1483 = LA(3);
                                if ( (synpred1_MySQL(ctx)))
                                {
                                    alt329=1;
                                }
                                else if ( (ANTLR3_TRUE))
                                {
                                    alt329=2;
                                }
                                else
                                {
                                    if (BACKTRACKING>0)
                                    {
                                        FAILEDFLAG = ANTLR3_TRUE;
                                        return retval;
                                    }


                                    CONSTRUCTEX();
                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                    EXCEPTION->message      = (void *)"";
                                    EXCEPTION->decisionNum  = 329;
                                    EXCEPTION->state        = 1483;


                                    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 == BETWEEN_SYMBOL || LA329_60 == COLLATE_SYMBOL || LA329_60 == CROSS_SYMBOL || LA329_60 == FOR_SYMBOL || LA329_60 == FROM_SYMBOL || ((LA329_60 >= GROUP_SYMBOL) && (LA329_60 <= HAVING_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA329_60 == LOCK_SYMBOL || ((LA329_60 >= MOD_SYMBOL) && (LA329_60 <= NATURAL_SYMBOL)) || LA329_60 == NOT_SYMBOL || LA329_60 == ON_SYMBOL || LA329_60 == OPEN_PAR_SYMBOL || ((LA329_60 >= ORDER_SYMBOL) && (LA329_60 <= OR_SYMBOL)) || LA329_60 == PROCEDURE_SYMBOL || LA329_60 == REGEXP_SYMBOL || LA329_60 == RIGHT_SYMBOL || LA329_60 == SEMICOLON_SYMBOL || LA329_60 == SET_SYMBOL || 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 || LA329_60 == AS_SYMBOL || ((LA329_60 >= BACK_TICK_QUOTED_ID) && (LA329_60 <= BITWISE_AND_OPERATOR)) || ((LA329_60 >= BITWISE_OR_OPERATOR) && (LA329_60 <= BITWISE_XOR_OPERATOR)) || ((LA329_60 >= CLOSE_CURLY_SYMBOL) && (LA329_60 <= CLOSE_PAR_SYMBOL)) || ((LA329_60 >= COMMA_SYMBOL) && (LA329_60 <= CONCAT_PIPES_SYMBOL)) || ((LA329_60 >= DIV_OPERATOR) && (LA329_60 <= DIV_SYMBOL)) || LA329_60 == DOUBLE_QUOTED_TEXT || LA329_60 == EQUAL_OPERATOR || ((LA329_60 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_60 <= GREATER_THAN_OPERATOR)) || ((LA329_60 >= HEX_NUMBER) && (LA329_60 <= IDENTIFIER)) || LA329_60 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA329_60 >= LESS_OR_EQUAL_OPERATOR) && (LA329_60 <= LESS_THAN_OPERATOR)) || LA329_60 == LOGICAL_AND_OPERATOR || LA329_60 == LOGICAL_OR_OPERATOR || ((LA329_60 >= MINUS_OPERATOR) && (LA329_60 <= MOD_OPERATOR)) || ((LA329_60 >= MULT_OPERATOR) && (LA329_60 <= NULL_SAFE_EQUAL_OPERATOR)) || LA329_60 == PLUS_OPERATOR || ((LA329_60 >= SHIFT_LEFT_OPERATOR) && (LA329_60 <= SHIFT_RIGHT_OPERATOR))))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_60 == DOT_SYMBOL))
                        {
                            {
                                int LA329_1538 = LA(3);
                                if ( (synpred1_MySQL(ctx)))
                                {
                                    alt329=1;
                                }
                                else if ( (ANTLR3_TRUE))
                                {
                                    alt329=2;
                                }
                                else
                                {
                                    if (BACKTRACKING>0)
                                    {
                                        FAILEDFLAG = ANTLR3_TRUE;
                                        return retval;
                                    }


                                    CONSTRUCTEX();
                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                    EXCEPTION->message      = (void *)"";
                                    EXCEPTION->decisionNum  = 329;
                                    EXCEPTION->state        = 1538;


                                    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_1592 = LA(3);
                                if ( (synpred1_MySQL(ctx)))
                                {
                                    alt329=1;
                                }
                                else if ( (ANTLR3_TRUE))
                                {
                                    alt329=2;
                                }
                                else
                                {
                                    if (BACKTRACKING>0)
                                    {
                                        FAILEDFLAG = ANTLR3_TRUE;
                                        return retval;
                                    }


                                    CONSTRUCTEX();
                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                    EXCEPTION->message      = (void *)"";
                                    EXCEPTION->decisionNum  = 329;
                                    EXCEPTION->state        = 1592;


                                    goto ruleselect_itemEx;

                                }
                            }
                        }
                        else if ( (LA329_63 == EOF || ((LA329_63 >= ACCOUNT_SYMBOL) && (LA329_63 <= YEAR_SYMBOL)) || LA329_63 == AND_SYMBOL || LA329_63 == BETWEEN_SYMBOL || LA329_63 == COLLATE_SYMBOL || LA329_63 == CROSS_SYMBOL || LA329_63 == FOR_SYMBOL || LA329_63 == FROM_SYMBOL || ((LA329_63 >= GROUP_SYMBOL) && (LA329_63 <= HAVING_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA329_63 == LOCK_SYMBOL || ((LA329_63 >= MOD_SYMBOL) && (LA329_63 <= NATURAL_SYMBOL)) || LA329_63 == NOT_SYMBOL || LA329_63 == ON_SYMBOL || LA329_63 == OPEN_PAR_SYMBOL || ((LA329_63 >= ORDER_SYMBOL) && (LA329_63 <= OR_SYMBOL)) || LA329_63 == PROCEDURE_SYMBOL || LA329_63 == REGEXP_SYMBOL || LA329_63 == RIGHT_SYMBOL || LA329_63 == SEMICOLON_SYMBOL || LA329_63 == SET_SYMBOL || 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 || LA329_63 == AS_SYMBOL || ((LA329_63 >= BACK_TICK_QUOTED_ID) && (LA329_63 <= BITWISE_AND_OPERATOR)) || ((LA329_63 >= BITWISE_OR_OPERATOR) && (LA329_63 <= BITWISE_XOR_OPERATOR)) || ((LA329_63 >= CLOSE_CURLY_SYMBOL) && (LA329_63 <= CLOSE_PAR_SYMBOL)) || ((LA329_63 >= COMMA_SYMBOL) && (LA329_63 <= CONCAT_PIPES_SYMBOL)) || ((LA329_63 >= DIV_OPERATOR) && (LA329_63 <= DIV_SYMBOL)) || LA329_63 == DOUBLE_QUOTED_TEXT || LA329_63 == EQUAL_OPERATOR || ((LA329_63 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_63 <= GREATER_THAN_OPERATOR)) || ((LA329_63 >= HEX_NUMBER) && (LA329_63 <= IDENTIFIER)) || LA329_63 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA329_63 >= LESS_OR_EQUAL_OPERATOR) && (LA329_63 <= LESS_THAN_OPERATOR)) || LA329_63 == LOGICAL_AND_OPERATOR || LA329_63 == LOGICAL_OR_OPERATOR || ((LA329_63 >= MINUS_OPERATOR) && (LA329_63 <= MOD_OPERATOR)) || ((LA329_63 >= MULT_OPERATOR) && (LA329_63 <= NULL_SAFE_EQUAL_OPERATOR)) || LA329_63 == PLUS_OPERATOR || ((LA329_63 >= SHIFT_LEFT_OPERATOR) && (LA329_63 <= SHIFT_RIGHT_OPERATOR))))
                        {
                            alt329=2;
                        }
                        else
                        {
                            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 == BETWEEN_SYMBOL || LA329_64 == COLLATE_SYMBOL || LA329_64 == CROSS_SYMBOL || LA329_64 == FOR_SYMBOL || LA329_64 == FROM_SYMBOL || ((LA329_64 >= GROUP_SYMBOL) && (LA329_64 <= HAVING_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA329_64 == LOCK_SYMBOL || ((LA329_64 >= MOD_SYMBOL) && (LA329_64 <= NATURAL_SYMBOL)) || LA329_64 == NOT_SYMBOL || LA329_64 == ON_SYMBOL || LA329_64 == OPEN_PAR_SYMBOL || ((LA329_64 >= ORDER_SYMBOL) && (LA329_64 <= OR_SYMBOL)) || LA329_64 == PROCEDURE_SYMBOL || LA329_64 == REGEXP_SYMBOL || LA329_64 == RIGHT_SYMBOL || LA329_64 == SEMICOLON_SYMBOL || LA329_64 == SET_SYMBOL || 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 || LA329_64 == AS_SYMBOL || ((LA329_64 >= BACK_TICK_QUOTED_ID) && (LA329_64 <= BITWISE_AND_OPERATOR)) || ((LA329_64 >= BITWISE_OR_OPERATOR) && (LA329_64 <= BITWISE_XOR_OPERATOR)) || ((LA329_64 >= CLOSE_CURLY_SYMBOL) && (LA329_64 <= CLOSE_PAR_SYMBOL)) || ((LA329_64 >= COMMA_SYMBOL) && (LA329_64 <= CONCAT_PIPES_SYMBOL)) || ((LA329_64 >= DIV_OPERATOR) && (LA329_64 <= DIV_SYMBOL)) || LA329_64 == DOUBLE_QUOTED_TEXT || LA329_64 == EQUAL_OPERATOR || ((LA329_64 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_64 <= GREATER_THAN_OPERATOR)) || ((LA329_64 >= HEX_NUMBER) && (LA329_64 <= IDENTIFIER)) || LA329_64 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA329_64 >= LESS_OR_EQUAL_OPERATOR) && (LA329_64 <= LESS_THAN_OPERATOR)) || LA329_64 == LOGICAL_AND_OPERATOR || LA329_64 == LOGICAL_OR_OPERATOR || ((LA329_64 >= MINUS_OPERATOR) && (LA329_64 <= MOD_OPERATOR)) || ((LA329_64 >= MULT_OPERATOR) && (LA329_64 <= NULL_SAFE_EQUAL_OPERATOR)) || LA329_64 == PLUS_OPERATOR || ((LA329_64 >= SHIFT_LEFT_OPERATOR) && (LA329_64 <= SHIFT_RIGHT_OPERATOR))))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_64 == DOT_SYMBOL))
                        {
                            {
                                int LA329_1648 = LA(3);
                                if ( (synpred1_MySQL(ctx)))
                                {
                                    alt329=1;
                                }
                                else if ( (ANTLR3_TRUE))
                                {
                                    alt329=2;
                                }
                                else
                                {
                                    if (BACKTRACKING>0)
                                    {
                                        FAILEDFLAG = ANTLR3_TRUE;
                                        return retval;
                                    }


                                    CONSTRUCTEX();
                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                    EXCEPTION->message      = (void *)"";
                                    EXCEPTION->decisionNum  = 329;
                                    EXCEPTION->state        = 1648;


                                    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 == BETWEEN_SYMBOL || LA329_65 == COLLATE_SYMBOL || LA329_65 == CROSS_SYMBOL || LA329_65 == FOR_SYMBOL || LA329_65 == FROM_SYMBOL || ((LA329_65 >= GROUP_SYMBOL) && (LA329_65 <= HAVING_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA329_65 == LOCK_SYMBOL || ((LA329_65 >= MOD_SYMBOL) && (LA329_65 <= NATURAL_SYMBOL)) || LA329_65 == NOT_SYMBOL || LA329_65 == ON_SYMBOL || LA329_65 == OPEN_PAR_SYMBOL || ((LA329_65 >= ORDER_SYMBOL) && (LA329_65 <= OR_SYMBOL)) || LA329_65 == PROCEDURE_SYMBOL || LA329_65 == REGEXP_SYMBOL || LA329_65 == RIGHT_SYMBOL || LA329_65 == SEMICOLON_SYMBOL || LA329_65 == SET_SYMBOL || 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 || LA329_65 == AS_SYMBOL || ((LA329_65 >= BACK_TICK_QUOTED_ID) && (LA329_65 <= BITWISE_AND_OPERATOR)) || ((LA329_65 >= BITWISE_OR_OPERATOR) && (LA329_65 <= BITWISE_XOR_OPERATOR)) || ((LA329_65 >= CLOSE_CURLY_SYMBOL) && (LA329_65 <= CLOSE_PAR_SYMBOL)) || ((LA329_65 >= COMMA_SYMBOL) && (LA329_65 <= CONCAT_PIPES_SYMBOL)) || ((LA329_65 >= DIV_OPERATOR) && (LA329_65 <= DIV_SYMBOL)) || LA329_65 == DOUBLE_QUOTED_TEXT || LA329_65 == EQUAL_OPERATOR || ((LA329_65 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_65 <= GREATER_THAN_OPERATOR)) || ((LA329_65 >= HEX_NUMBER) && (LA329_65 <= IDENTIFIER)) || LA329_65 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA329_65 >= LESS_OR_EQUAL_OPERATOR) && (LA329_65 <= LESS_THAN_OPERATOR)) || LA329_65 == LOGICAL_AND_OPERATOR || LA329_65 == LOGICAL_OR_OPERATOR || ((LA329_65 >= MINUS_OPERATOR) && (LA329_65 <= MOD_OPERATOR)) || ((LA329_65 >= MULT_OPERATOR) && (LA329_65 <= NULL_SAFE_EQUAL_OPERATOR)) || LA329_65 == PLUS_OPERATOR || ((LA329_65 >= SHIFT_LEFT_OPERATOR) && (LA329_65 <= SHIFT_RIGHT_OPERATOR))))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_65 == DOT_SYMBOL))
                        {
                            {
                                int LA329_1703 = LA(3);
                                if ( (synpred1_MySQL(ctx)))
                                {
                                    alt329=1;
                                }
                                else if ( (ANTLR3_TRUE))
                                {
                                    alt329=2;
                                }
                                else
                                {
                                    if (BACKTRACKING>0)
                                    {
                                        FAILEDFLAG = ANTLR3_TRUE;
                                        return retval;
                                    }


                                    CONSTRUCTEX();
                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                    EXCEPTION->message      = (void *)"";
                                    EXCEPTION->decisionNum  = 329;
                                    EXCEPTION->state        = 1703;


                                    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 == BETWEEN_SYMBOL || LA329_66 == COLLATE_SYMBOL || LA329_66 == CROSS_SYMBOL || LA329_66 == FOR_SYMBOL || LA329_66 == FROM_SYMBOL || ((LA329_66 >= GROUP_SYMBOL) && (LA329_66 <= HAVING_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA329_66 == LOCK_SYMBOL || ((LA329_66 >= MOD_SYMBOL) && (LA329_66 <= NATURAL_SYMBOL)) || LA329_66 == NOT_SYMBOL || LA329_66 == ON_SYMBOL || LA329_66 == OPEN_PAR_SYMBOL || ((LA329_66 >= ORDER_SYMBOL) && (LA329_66 <= OR_SYMBOL)) || LA329_66 == PROCEDURE_SYMBOL || LA329_66 == REGEXP_SYMBOL || LA329_66 == RIGHT_SYMBOL || LA329_66 == SEMICOLON_SYMBOL || LA329_66 == SET_SYMBOL || 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 || LA329_66 == AS_SYMBOL || ((LA329_66 >= BACK_TICK_QUOTED_ID) && (LA329_66 <= BITWISE_AND_OPERATOR)) || ((LA329_66 >= BITWISE_OR_OPERATOR) && (LA329_66 <= BITWISE_XOR_OPERATOR)) || ((LA329_66 >= CLOSE_CURLY_SYMBOL) && (LA329_66 <= CLOSE_PAR_SYMBOL)) || ((LA329_66 >= COMMA_SYMBOL) && (LA329_66 <= CONCAT_PIPES_SYMBOL)) || ((LA329_66 >= DIV_OPERATOR) && (LA329_66 <= DIV_SYMBOL)) || LA329_66 == DOUBLE_QUOTED_TEXT || LA329_66 == EQUAL_OPERATOR || ((LA329_66 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_66 <= GREATER_THAN_OPERATOR)) || ((LA329_66 >= HEX_NUMBER) && (LA329_66 <= IDENTIFIER)) || LA329_66 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA329_66 >= LESS_OR_EQUAL_OPERATOR) && (LA329_66 <= LESS_THAN_OPERATOR)) || LA329_66 == LOGICAL_AND_OPERATOR || LA329_66 == LOGICAL_OR_OPERATOR || ((LA329_66 >= MINUS_OPERATOR) && (LA329_66 <= MOD_OPERATOR)) || ((LA329_66 >= MULT_OPERATOR) && (LA329_66 <= NULL_SAFE_EQUAL_OPERATOR)) || LA329_66 == PLUS_OPERATOR || ((LA329_66 >= SHIFT_LEFT_OPERATOR) && (LA329_66 <= SHIFT_RIGHT_OPERATOR))))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_66 == DOT_SYMBOL))
                        {
                            {
                                int LA329_1758 = LA(3);
                                if ( (synpred1_MySQL(ctx)))
                                {
                                    alt329=1;
                                }
                                else if ( (ANTLR3_TRUE))
                                {
                                    alt329=2;
                                }
                                else
                                {
                                    if (BACKTRACKING>0)
                                    {
                                        FAILEDFLAG = ANTLR3_TRUE;
                                        return retval;
                                    }


                                    CONSTRUCTEX();
                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                    EXCEPTION->message      = (void *)"";
                                    EXCEPTION->decisionNum  = 329;
                                    EXCEPTION->state        = 1758;


                                    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_1812 = LA(3);
                                if ( (synpred1_MySQL(ctx)))
                                {
                                    alt329=1;
                                }
                                else if ( (ANTLR3_TRUE))
                                {
                                    alt329=2;
                                }
                                else
                                {
                                    if (BACKTRACKING>0)
                                    {
                                        FAILEDFLAG = ANTLR3_TRUE;
                                        return retval;
                                    }


                                    CONSTRUCTEX();
                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                    EXCEPTION->message      = (void *)"";
                                    EXCEPTION->decisionNum  = 329;
                                    EXCEPTION->state        = 1812;


                                    goto ruleselect_itemEx;

                                }
                            }
                        }
                        else if ( (LA329_67 == EOF || ((LA329_67 >= ACCOUNT_SYMBOL) && (LA329_67 <= YEAR_SYMBOL)) || LA329_67 == AND_SYMBOL || LA329_67 == BETWEEN_SYMBOL || LA329_67 == COLLATE_SYMBOL || LA329_67 == CROSS_SYMBOL || LA329_67 == FOR_SYMBOL || LA329_67 == FROM_SYMBOL || ((LA329_67 >= GROUP_SYMBOL) && (LA329_67 <= HAVING_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA329_67 == LOCK_SYMBOL || ((LA329_67 >= MOD_SYMBOL) && (LA329_67 <= NATURAL_SYMBOL)) || LA329_67 == NOT_SYMBOL || LA329_67 == ON_SYMBOL || LA329_67 == OPEN_PAR_SYMBOL || ((LA329_67 >= ORDER_SYMBOL) && (LA329_67 <= OR_SYMBOL)) || LA329_67 == PROCEDURE_SYMBOL || LA329_67 == REGEXP_SYMBOL || LA329_67 == RIGHT_SYMBOL || LA329_67 == SEMICOLON_SYMBOL || LA329_67 == SET_SYMBOL || 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 || LA329_67 == AS_SYMBOL || ((LA329_67 >= BACK_TICK_QUOTED_ID) && (LA329_67 <= BITWISE_AND_OPERATOR)) || ((LA329_67 >= BITWISE_OR_OPERATOR) && (LA329_67 <= BITWISE_XOR_OPERATOR)) || ((LA329_67 >= CLOSE_CURLY_SYMBOL) && (LA329_67 <= CLOSE_PAR_SYMBOL)) || ((LA329_67 >= COMMA_SYMBOL) && (LA329_67 <= CONCAT_PIPES_SYMBOL)) || ((LA329_67 >= DIV_OPERATOR) && (LA329_67 <= DIV_SYMBOL)) || LA329_67 == DOUBLE_QUOTED_TEXT || LA329_67 == EQUAL_OPERATOR || ((LA329_67 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_67 <= GREATER_THAN_OPERATOR)) || ((LA329_67 >= HEX_NUMBER) && (LA329_67 <= IDENTIFIER)) || LA329_67 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA329_67 >= LESS_OR_EQUAL_OPERATOR) && (LA329_67 <= LESS_THAN_OPERATOR)) || LA329_67 == LOGICAL_AND_OPERATOR || LA329_67 == LOGICAL_OR_OPERATOR || ((LA329_67 >= MINUS_OPERATOR) && (LA329_67 <= MOD_OPERATOR)) || ((LA329_67 >= MULT_OPERATOR) && (LA329_67 <= NULL_SAFE_EQUAL_OPERATOR)) || LA329_67 == PLUS_OPERATOR || ((LA329_67 >= SHIFT_LEFT_OPERATOR) && (LA329_67 <= SHIFT_RIGHT_OPERATOR))))
                        {
                            alt329=2;
                        }
                        else
                        {
                            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_1867 = LA(3);
                                if ( (synpred1_MySQL(ctx)))
                                {
                                    alt329=1;
                                }
                                else if ( (ANTLR3_TRUE))
                                {
                                    alt329=2;
                                }
                                else
                                {
                                    if (BACKTRACKING>0)
                                    {
                                        FAILEDFLAG = ANTLR3_TRUE;
                                        return retval;
                                    }


                                    CONSTRUCTEX();
                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                    EXCEPTION->message      = (void *)"";
                                    EXCEPTION->decisionNum  = 329;
                                    EXCEPTION->state        = 1867;


                                    goto ruleselect_itemEx;

                                }
                            }
                        }
                        else if ( (LA329_68 == EOF || ((LA329_68 >= ACCOUNT_SYMBOL) && (LA329_68 <= YEAR_SYMBOL)) || LA329_68 == AND_SYMBOL || LA329_68 == BETWEEN_SYMBOL || LA329_68 == COLLATE_SYMBOL || LA329_68 == CROSS_SYMBOL || LA329_68 == FOR_SYMBOL || LA329_68 == FROM_SYMBOL || ((LA329_68 >= GROUP_SYMBOL) && (LA329_68 <= HAVING_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA329_68 == LOCK_SYMBOL || ((LA329_68 >= MOD_SYMBOL) && (LA329_68 <= NATURAL_SYMBOL)) || LA329_68 == NOT_SYMBOL || LA329_68 == ON_SYMBOL || LA329_68 == OPEN_PAR_SYMBOL || ((LA329_68 >= ORDER_SYMBOL) && (LA329_68 <= OR_SYMBOL)) || LA329_68 == PROCEDURE_SYMBOL || LA329_68 == REGEXP_SYMBOL || LA329_68 == RIGHT_SYMBOL || LA329_68 == SEMICOLON_SYMBOL || LA329_68 == SET_SYMBOL || 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 || LA329_68 == AS_SYMBOL || ((LA329_68 >= BACK_TICK_QUOTED_ID) && (LA329_68 <= BITWISE_AND_OPERATOR)) || ((LA329_68 >= BITWISE_OR_OPERATOR) && (LA329_68 <= BITWISE_XOR_OPERATOR)) || ((LA329_68 >= CLOSE_CURLY_SYMBOL) && (LA329_68 <= CLOSE_PAR_SYMBOL)) || ((LA329_68 >= COMMA_SYMBOL) && (LA329_68 <= CONCAT_PIPES_SYMBOL)) || ((LA329_68 >= DIV_OPERATOR) && (LA329_68 <= DIV_SYMBOL)) || LA329_68 == DOUBLE_QUOTED_TEXT || LA329_68 == EQUAL_OPERATOR || ((LA329_68 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_68 <= GREATER_THAN_OPERATOR)) || ((LA329_68 >= HEX_NUMBER) && (LA329_68 <= IDENTIFIER)) || LA329_68 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA329_68 >= LESS_OR_EQUAL_OPERATOR) && (LA329_68 <= LESS_THAN_OPERATOR)) || LA329_68 == LOGICAL_AND_OPERATOR || LA329_68 == LOGICAL_OR_OPERATOR || ((LA329_68 >= MINUS_OPERATOR) && (LA329_68 <= MOD_OPERATOR)) || ((LA329_68 >= MULT_OPERATOR) && (LA329_68 <= NULL_SAFE_EQUAL_OPERATOR)) || LA329_68 == PLUS_OPERATOR || ((LA329_68 >= SHIFT_LEFT_OPERATOR) && (LA329_68 <= SHIFT_RIGHT_OPERATOR))))
                        {
                            alt329=2;
                        }
                        else
                        {
                            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_1922 = LA(3);
                                if ( (synpred1_MySQL(ctx)))
                                {
                                    alt329=1;
                                }
                                else if ( (ANTLR3_TRUE))
                                {
                                    alt329=2;
                                }
                                else
                                {
                                    if (BACKTRACKING>0)
                                    {
                                        FAILEDFLAG = ANTLR3_TRUE;
                                        return retval;
                                    }


                                    CONSTRUCTEX();
                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                    EXCEPTION->message      = (void *)"";
                                    EXCEPTION->decisionNum  = 329;
                                    EXCEPTION->state        = 1922;


                                    goto ruleselect_itemEx;

                                }
                            }
                        }
                        else if ( (LA329_69 == EOF || ((LA329_69 >= ACCOUNT_SYMBOL) && (LA329_69 <= YEAR_SYMBOL)) || LA329_69 == AND_SYMBOL || LA329_69 == BETWEEN_SYMBOL || LA329_69 == COLLATE_SYMBOL || LA329_69 == CROSS_SYMBOL || LA329_69 == FOR_SYMBOL || LA329_69 == FROM_SYMBOL || ((LA329_69 >= GROUP_SYMBOL) && (LA329_69 <= HAVING_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA329_69 == LOCK_SYMBOL || ((LA329_69 >= MOD_SYMBOL) && (LA329_69 <= NATURAL_SYMBOL)) || LA329_69 == NOT_SYMBOL || LA329_69 == ON_SYMBOL || LA329_69 == OPEN_PAR_SYMBOL || ((LA329_69 >= ORDER_SYMBOL) && (LA329_69 <= OR_SYMBOL)) || LA329_69 == PROCEDURE_SYMBOL || LA329_69 == REGEXP_SYMBOL || LA329_69 == RIGHT_SYMBOL || LA329_69 == SEMICOLON_SYMBOL || LA329_69 == SET_SYMBOL || 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 || LA329_69 == AS_SYMBOL || ((LA329_69 >= BACK_TICK_QUOTED_ID) && (LA329_69 <= BITWISE_AND_OPERATOR)) || ((LA329_69 >= BITWISE_OR_OPERATOR) && (LA329_69 <= BITWISE_XOR_OPERATOR)) || ((LA329_69 >= CLOSE_CURLY_SYMBOL) && (LA329_69 <= CLOSE_PAR_SYMBOL)) || ((LA329_69 >= COMMA_SYMBOL) && (LA329_69 <= CONCAT_PIPES_SYMBOL)) || ((LA329_69 >= DIV_OPERATOR) && (LA329_69 <= DIV_SYMBOL)) || LA329_69 == DOUBLE_QUOTED_TEXT || LA329_69 == EQUAL_OPERATOR || ((LA329_69 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_69 <= GREATER_THAN_OPERATOR)) || ((LA329_69 >= HEX_NUMBER) && (LA329_69 <= IDENTIFIER)) || LA329_69 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA329_69 >= LESS_OR_EQUAL_OPERATOR) && (LA329_69 <= LESS_THAN_OPERATOR)) || LA329_69 == LOGICAL_AND_OPERATOR || LA329_69 == LOGICAL_OR_OPERATOR || ((LA329_69 >= MINUS_OPERATOR) && (LA329_69 <= MOD_OPERATOR)) || ((LA329_69 >= MULT_OPERATOR) && (LA329_69 <= NULL_SAFE_EQUAL_OPERATOR)) || LA329_69 == PLUS_OPERATOR || ((LA329_69 >= SHIFT_LEFT_OPERATOR) && (LA329_69 <= SHIFT_RIGHT_OPERATOR))))
                        {
                            alt329=2;
                        }
                        else
                        {
                            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_1977 = LA(3);
                                if ( (synpred1_MySQL(ctx)))
                                {
                                    alt329=1;
                                }
                                else if ( (ANTLR3_TRUE))
                                {
                                    alt329=2;
                                }
                                else
                                {
                                    if (BACKTRACKING>0)
                                    {
                                        FAILEDFLAG = ANTLR3_TRUE;
                                        return retval;
                                    }


                                    CONSTRUCTEX();
                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                    EXCEPTION->message      = (void *)"";
                                    EXCEPTION->decisionNum  = 329;
                                    EXCEPTION->state        = 1977;


                                    goto ruleselect_itemEx;

                                }
                            }
                        }
                        else if ( (LA329_70 == EOF || ((LA329_70 >= ACCOUNT_SYMBOL) && (LA329_70 <= YEAR_SYMBOL)) || LA329_70 == AND_SYMBOL || LA329_70 == BETWEEN_SYMBOL || LA329_70 == COLLATE_SYMBOL || LA329_70 == CROSS_SYMBOL || LA329_70 == FOR_SYMBOL || LA329_70 == FROM_SYMBOL || ((LA329_70 >= GROUP_SYMBOL) && (LA329_70 <= HAVING_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA329_70 == LOCK_SYMBOL || ((LA329_70 >= MOD_SYMBOL) && (LA329_70 <= NATURAL_SYMBOL)) || LA329_70 == NOT_SYMBOL || LA329_70 == ON_SYMBOL || LA329_70 == OPEN_PAR_SYMBOL || ((LA329_70 >= ORDER_SYMBOL) && (LA329_70 <= OR_SYMBOL)) || LA329_70 == PROCEDURE_SYMBOL || LA329_70 == REGEXP_SYMBOL || LA329_70 == RIGHT_SYMBOL || LA329_70 == SEMICOLON_SYMBOL || LA329_70 == SET_SYMBOL || 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 || LA329_70 == AS_SYMBOL || ((LA329_70 >= BACK_TICK_QUOTED_ID) && (LA329_70 <= BITWISE_AND_OPERATOR)) || ((LA329_70 >= BITWISE_OR_OPERATOR) && (LA329_70 <= BITWISE_XOR_OPERATOR)) || ((LA329_70 >= CLOSE_CURLY_SYMBOL) && (LA329_70 <= CLOSE_PAR_SYMBOL)) || ((LA329_70 >= COMMA_SYMBOL) && (LA329_70 <= CONCAT_PIPES_SYMBOL)) || ((LA329_70 >= DIV_OPERATOR) && (LA329_70 <= DIV_SYMBOL)) || LA329_70 == DOUBLE_QUOTED_TEXT || LA329_70 == EQUAL_OPERATOR || ((LA329_70 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_70 <= GREATER_THAN_OPERATOR)) || ((LA329_70 >= HEX_NUMBER) && (LA329_70 <= IDENTIFIER)) || LA329_70 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA329_70 >= LESS_OR_EQUAL_OPERATOR) && (LA329_70 <= LESS_THAN_OPERATOR)) || LA329_70 == LOGICAL_AND_OPERATOR || LA329_70 == LOGICAL_OR_OPERATOR || ((LA329_70 >= MINUS_OPERATOR) && (LA329_70 <= MOD_OPERATOR)) || ((LA329_70 >= MULT_OPERATOR) && (LA329_70 <= NULL_SAFE_EQUAL_OPERATOR)) || LA329_70 == PLUS_OPERATOR || ((LA329_70 >= SHIFT_LEFT_OPERATOR) && (LA329_70 <= SHIFT_RIGHT_OPERATOR))))
                        {
                            alt329=2;
                        }
                        else
                        {
                            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_2032 = LA(3);
                                if ( (synpred1_MySQL(ctx)))
                                {
                                    alt329=1;
                                }
                                else if ( (ANTLR3_TRUE))
                                {
                                    alt329=2;
                                }
                                else
                                {
                                    if (BACKTRACKING>0)
                                    {
                                        FAILEDFLAG = ANTLR3_TRUE;
                                        return retval;
                                    }


                                    CONSTRUCTEX();
                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                    EXCEPTION->message      = (void *)"";
                                    EXCEPTION->decisionNum  = 329;
                                    EXCEPTION->state        = 2032;


                                    goto ruleselect_itemEx;

                                }
                            }
                        }
                        else if ( (LA329_71 == EOF || ((LA329_71 >= ACCOUNT_SYMBOL) && (LA329_71 <= YEAR_SYMBOL)) || LA329_71 == AND_SYMBOL || LA329_71 == BETWEEN_SYMBOL || LA329_71 == COLLATE_SYMBOL || LA329_71 == CROSS_SYMBOL || LA329_71 == FOR_SYMBOL || LA329_71 == FROM_SYMBOL || ((LA329_71 >= GROUP_SYMBOL) && (LA329_71 <= HAVING_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA329_71 == LOCK_SYMBOL || ((LA329_71 >= MOD_SYMBOL) && (LA329_71 <= NATURAL_SYMBOL)) || LA329_71 == NOT_SYMBOL || LA329_71 == ON_SYMBOL || LA329_71 == OPEN_PAR_SYMBOL || ((LA329_71 >= ORDER_SYMBOL) && (LA329_71 <= OR_SYMBOL)) || LA329_71 == PROCEDURE_SYMBOL || LA329_71 == REGEXP_SYMBOL || LA329_71 == RIGHT_SYMBOL || LA329_71 == SEMICOLON_SYMBOL || LA329_71 == SET_SYMBOL || 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 || LA329_71 == AS_SYMBOL || ((LA329_71 >= BACK_TICK_QUOTED_ID) && (LA329_71 <= BITWISE_AND_OPERATOR)) || ((LA329_71 >= BITWISE_OR_OPERATOR) && (LA329_71 <= BITWISE_XOR_OPERATOR)) || ((LA329_71 >= CLOSE_CURLY_SYMBOL) && (LA329_71 <= CLOSE_PAR_SYMBOL)) || ((LA329_71 >= COMMA_SYMBOL) && (LA329_71 <= CONCAT_PIPES_SYMBOL)) || ((LA329_71 >= DIV_OPERATOR) && (LA329_71 <= DIV_SYMBOL)) || LA329_71 == DOUBLE_QUOTED_TEXT || LA329_71 == EQUAL_OPERATOR || ((LA329_71 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_71 <= GREATER_THAN_OPERATOR)) || ((LA329_71 >= HEX_NUMBER) && (LA329_71 <= IDENTIFIER)) || LA329_71 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA329_71 >= LESS_OR_EQUAL_OPERATOR) && (LA329_71 <= LESS_THAN_OPERATOR)) || LA329_71 == LOGICAL_AND_OPERATOR || LA329_71 == LOGICAL_OR_OPERATOR || ((LA329_71 >= MINUS_OPERATOR) && (LA329_71 <= MOD_OPERATOR)) || ((LA329_71 >= MULT_OPERATOR) && (LA329_71 <= NULL_SAFE_EQUAL_OPERATOR)) || LA329_71 == PLUS_OPERATOR || ((LA329_71 >= SHIFT_LEFT_OPERATOR) && (LA329_71 <= SHIFT_RIGHT_OPERATOR))))
                        {
                            alt329=2;
                        }
                        else
                        {
                            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 == BETWEEN_SYMBOL || LA329_72 == COLLATE_SYMBOL || LA329_72 == CROSS_SYMBOL || LA329_72 == FOR_SYMBOL || LA329_72 == FROM_SYMBOL || ((LA329_72 >= GROUP_SYMBOL) && (LA329_72 <= HAVING_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA329_72 == LOCK_SYMBOL || ((LA329_72 >= MOD_SYMBOL) && (LA329_72 <= NATURAL_SYMBOL)) || LA329_72 == NOT_SYMBOL || LA329_72 == ON_SYMBOL || LA329_72 == OPEN_PAR_SYMBOL || ((LA329_72 >= ORDER_SYMBOL) && (LA329_72 <= OR_SYMBOL)) || LA329_72 == PROCEDURE_SYMBOL || LA329_72 == REGEXP_SYMBOL || LA329_72 == RIGHT_SYMBOL || LA329_72 == SEMICOLON_SYMBOL || LA329_72 == SET_SYMBOL || 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 || LA329_72 == AS_SYMBOL || ((LA329_72 >= BACK_TICK_QUOTED_ID) && (LA329_72 <= BITWISE_AND_OPERATOR)) || ((LA329_72 >= BITWISE_OR_OPERATOR) && (LA329_72 <= BITWISE_XOR_OPERATOR)) || ((LA329_72 >= CLOSE_CURLY_SYMBOL) && (LA329_72 <= CLOSE_PAR_SYMBOL)) || ((LA329_72 >= COMMA_SYMBOL) && (LA329_72 <= CONCAT_PIPES_SYMBOL)) || ((LA329_72 >= DIV_OPERATOR) && (LA329_72 <= DIV_SYMBOL)) || LA329_72 == DOUBLE_QUOTED_TEXT || LA329_72 == EQUAL_OPERATOR || ((LA329_72 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_72 <= GREATER_THAN_OPERATOR)) || ((LA329_72 >= HEX_NUMBER) && (LA329_72 <= IDENTIFIER)) || LA329_72 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA329_72 >= LESS_OR_EQUAL_OPERATOR) && (LA329_72 <= LESS_THAN_OPERATOR)) || LA329_72 == LOGICAL_AND_OPERATOR || LA329_72 == LOGICAL_OR_OPERATOR || ((LA329_72 >= MINUS_OPERATOR) && (LA329_72 <= MOD_OPERATOR)) || ((LA329_72 >= MULT_OPERATOR) && (LA329_72 <= NULL_SAFE_EQUAL_OPERATOR)) || LA329_72 == PLUS_OPERATOR || ((LA329_72 >= SHIFT_LEFT_OPERATOR) && (LA329_72 <= SHIFT_RIGHT_OPERATOR))))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_72 == DOT_SYMBOL))
                        {
                            {
                                int LA329_2088 = LA(3);
                                if ( (synpred1_MySQL(ctx)))
                                {
                                    alt329=1;
                                }
                                else if ( (ANTLR3_TRUE))
                                {
                                    alt329=2;
                                }
                                else
                                {
                                    if (BACKTRACKING>0)
                                    {
                                        FAILEDFLAG = ANTLR3_TRUE;
                                        return retval;
                                    }


                                    CONSTRUCTEX();
                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                    EXCEPTION->message      = (void *)"";
                                    EXCEPTION->decisionNum  = 329;
                                    EXCEPTION->state        = 2088;


                                    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_2142 = LA(3);
                                if ( (synpred1_MySQL(ctx)))
                                {
                                    alt329=1;
                                }
                                else if ( (ANTLR3_TRUE))
                                {
                                    alt329=2;
                                }
                                else
                                {
                                    if (BACKTRACKING>0)
                                    {
                                        FAILEDFLAG = ANTLR3_TRUE;
                                        return retval;
                                    }


                                    CONSTRUCTEX();
                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                    EXCEPTION->message      = (void *)"";
                                    EXCEPTION->decisionNum  = 329;
                                    EXCEPTION->state        = 2142;


                                    goto ruleselect_itemEx;

                                }
                            }
                        }
                        else if ( (LA329_73 == EOF || ((LA329_73 >= ACCOUNT_SYMBOL) && (LA329_73 <= YEAR_SYMBOL)) || LA329_73 == AND_SYMBOL || LA329_73 == BETWEEN_SYMBOL || LA329_73 == COLLATE_SYMBOL || LA329_73 == CROSS_SYMBOL || LA329_73 == FOR_SYMBOL || LA329_73 == FROM_SYMBOL || ((LA329_73 >= GROUP_SYMBOL) && (LA329_73 <= HAVING_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA329_73 == LOCK_SYMBOL || ((LA329_73 >= MOD_SYMBOL) && (LA329_73 <= NATURAL_SYMBOL)) || LA329_73 == NOT_SYMBOL || LA329_73 == ON_SYMBOL || LA329_73 == OPEN_PAR_SYMBOL || ((LA329_73 >= ORDER_SYMBOL) && (LA329_73 <= OR_SYMBOL)) || LA329_73 == PROCEDURE_SYMBOL || LA329_73 == REGEXP_SYMBOL || LA329_73 == RIGHT_SYMBOL || LA329_73 == SEMICOLON_SYMBOL || LA329_73 == SET_SYMBOL || 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 || LA329_73 == AS_SYMBOL || ((LA329_73 >= BACK_TICK_QUOTED_ID) && (LA329_73 <= BITWISE_AND_OPERATOR)) || ((LA329_73 >= BITWISE_OR_OPERATOR) && (LA329_73 <= BITWISE_XOR_OPERATOR)) || ((LA329_73 >= CLOSE_CURLY_SYMBOL) && (LA329_73 <= CLOSE_PAR_SYMBOL)) || ((LA329_73 >= COMMA_SYMBOL) && (LA329_73 <= CONCAT_PIPES_SYMBOL)) || ((LA329_73 >= DIV_OPERATOR) && (LA329_73 <= DIV_SYMBOL)) || LA329_73 == DOUBLE_QUOTED_TEXT || LA329_73 == EQUAL_OPERATOR || ((LA329_73 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_73 <= GREATER_THAN_OPERATOR)) || ((LA329_73 >= HEX_NUMBER) && (LA329_73 <= IDENTIFIER)) || LA329_73 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA329_73 >= LESS_OR_EQUAL_OPERATOR) && (LA329_73 <= LESS_THAN_OPERATOR)) || LA329_73 == LOGICAL_AND_OPERATOR || LA329_73 == LOGICAL_OR_OPERATOR || ((LA329_73 >= MINUS_OPERATOR) && (LA329_73 <= MOD_OPERATOR)) || ((LA329_73 >= MULT_OPERATOR) && (LA329_73 <= NULL_SAFE_EQUAL_OPERATOR)) || LA329_73 == PLUS_OPERATOR || ((LA329_73 >= SHIFT_LEFT_OPERATOR) && (LA329_73 <= SHIFT_RIGHT_OPERATOR))))
                        {
                            alt329=2;
                        }
                        else
                        {
                            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 == BETWEEN_SYMBOL || LA329_74 == COLLATE_SYMBOL || LA329_74 == CROSS_SYMBOL || LA329_74 == FOR_SYMBOL || LA329_74 == FROM_SYMBOL || ((LA329_74 >= GROUP_SYMBOL) && (LA329_74 <= HAVING_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA329_74 == LOCK_SYMBOL || ((LA329_74 >= MOD_SYMBOL) && (LA329_74 <= NATURAL_SYMBOL)) || LA329_74 == NOT_SYMBOL || LA329_74 == ON_SYMBOL || LA329_74 == OPEN_PAR_SYMBOL || ((LA329_74 >= ORDER_SYMBOL) && (LA329_74 <= OR_SYMBOL)) || LA329_74 == PROCEDURE_SYMBOL || LA329_74 == REGEXP_SYMBOL || LA329_74 == RIGHT_SYMBOL || LA329_74 == SEMICOLON_SYMBOL || LA329_74 == SET_SYMBOL || 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 || LA329_74 == AS_SYMBOL || ((LA329_74 >= BACK_TICK_QUOTED_ID) && (LA329_74 <= BITWISE_AND_OPERATOR)) || ((LA329_74 >= BITWISE_OR_OPERATOR) && (LA329_74 <= BITWISE_XOR_OPERATOR)) || ((LA329_74 >= CLOSE_CURLY_SYMBOL) && (LA329_74 <= CLOSE_PAR_SYMBOL)) || ((LA329_74 >= COMMA_SYMBOL) && (LA329_74 <= CONCAT_PIPES_SYMBOL)) || ((LA329_74 >= DIV_OPERATOR) && (LA329_74 <= DIV_SYMBOL)) || LA329_74 == DOUBLE_QUOTED_TEXT || LA329_74 == EQUAL_OPERATOR || ((LA329_74 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_74 <= GREATER_THAN_OPERATOR)) || ((LA329_74 >= HEX_NUMBER) && (LA329_74 <= IDENTIFIER)) || LA329_74 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA329_74 >= LESS_OR_EQUAL_OPERATOR) && (LA329_74 <= LESS_THAN_OPERATOR)) || LA329_74 == LOGICAL_AND_OPERATOR || LA329_74 == LOGICAL_OR_OPERATOR || ((LA329_74 >= MINUS_OPERATOR) && (LA329_74 <= MOD_OPERATOR)) || ((LA329_74 >= MULT_OPERATOR) && (LA329_74 <= NULL_SAFE_EQUAL_OPERATOR)) || LA329_74 == PLUS_OPERATOR || ((LA329_74 >= SHIFT_LEFT_OPERATOR) && (LA329_74 <= SHIFT_RIGHT_OPERATOR))))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_74 == DOT_SYMBOL))
                        {
                            {
                                int LA329_2198 = LA(3);
                                if ( (synpred1_MySQL(ctx)))
                                {
                                    alt329=1;
                                }
                                else if ( (ANTLR3_TRUE))
                                {
                                    alt329=2;
                                }
                                else
                                {
                                    if (BACKTRACKING>0)
                                    {
                                        FAILEDFLAG = ANTLR3_TRUE;
                                        return retval;
                                    }


                                    CONSTRUCTEX();
                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                    EXCEPTION->message      = (void *)"";
                                    EXCEPTION->decisionNum  = 329;
                                    EXCEPTION->state        = 2198;


                                    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_2252 = LA(3);
                                if ( (synpred1_MySQL(ctx)))
                                {
                                    alt329=1;
                                }
                                else if ( (ANTLR3_TRUE))
                                {
                                    alt329=2;
                                }
                                else
                                {
                                    if (BACKTRACKING>0)
                                    {
                                        FAILEDFLAG = ANTLR3_TRUE;
                                        return retval;
                                    }


                                    CONSTRUCTEX();
                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                    EXCEPTION->message      = (void *)"";
                                    EXCEPTION->decisionNum  = 329;
                                    EXCEPTION->state        = 2252;


                                    goto ruleselect_itemEx;

                                }
                            }
                        }
                        else if ( (LA329_75 == EOF || ((LA329_75 >= ACCOUNT_SYMBOL) && (LA329_75 <= YEAR_SYMBOL)) || LA329_75 == AND_SYMBOL || LA329_75 == BETWEEN_SYMBOL || LA329_75 == COLLATE_SYMBOL || LA329_75 == CROSS_SYMBOL || LA329_75 == FOR_SYMBOL || LA329_75 == FROM_SYMBOL || ((LA329_75 >= GROUP_SYMBOL) && (LA329_75 <= HAVING_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA329_75 == LOCK_SYMBOL || ((LA329_75 >= MOD_SYMBOL) && (LA329_75 <= NATURAL_SYMBOL)) || LA329_75 == NOT_SYMBOL || LA329_75 == ON_SYMBOL || ((LA329_75 >= ORDER_SYMBOL) && (LA329_75 <= OR_SYMBOL)) || LA329_75 == PROCEDURE_SYMBOL || LA329_75 == REGEXP_SYMBOL || LA329_75 == RIGHT_SYMBOL || LA329_75 == SEMICOLON_SYMBOL || LA329_75 == SET_SYMBOL || 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 || LA329_75 == AS_SYMBOL || ((LA329_75 >= BACK_TICK_QUOTED_ID) && (LA329_75 <= BITWISE_AND_OPERATOR)) || ((LA329_75 >= BITWISE_OR_OPERATOR) && (LA329_75 <= BITWISE_XOR_OPERATOR)) || ((LA329_75 >= CLOSE_CURLY_SYMBOL) && (LA329_75 <= CLOSE_PAR_SYMBOL)) || ((LA329_75 >= COMMA_SYMBOL) && (LA329_75 <= CONCAT_PIPES_SYMBOL)) || ((LA329_75 >= DIV_OPERATOR) && (LA329_75 <= DIV_SYMBOL)) || LA329_75 == DOUBLE_QUOTED_TEXT || LA329_75 == EQUAL_OPERATOR || ((LA329_75 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_75 <= GREATER_THAN_OPERATOR)) || ((LA329_75 >= HEX_NUMBER) && (LA329_75 <= IDENTIFIER)) || LA329_75 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA329_75 >= LESS_OR_EQUAL_OPERATOR) && (LA329_75 <= LESS_THAN_OPERATOR)) || LA329_75 == LOGICAL_AND_OPERATOR || LA329_75 == LOGICAL_OR_OPERATOR || ((LA329_75 >= MINUS_OPERATOR) && (LA329_75 <= MOD_OPERATOR)) || ((LA329_75 >= MULT_OPERATOR) && (LA329_75 <= NULL_SAFE_EQUAL_OPERATOR)) || LA329_75 == PLUS_OPERATOR || ((LA329_75 >= SHIFT_LEFT_OPERATOR) && (LA329_75 <= SHIFT_RIGHT_OPERATOR))))
                        {
                            alt329=2;
                        }
                        else
                        {
                            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 == BETWEEN_SYMBOL || LA329_76 == COLLATE_SYMBOL || LA329_76 == CROSS_SYMBOL || LA329_76 == FOR_SYMBOL || LA329_76 == FROM_SYMBOL || ((LA329_76 >= GROUP_SYMBOL) && (LA329_76 <= HAVING_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA329_76 == LOCK_SYMBOL || ((LA329_76 >= MOD_SYMBOL) && (LA329_76 <= NATURAL_SYMBOL)) || LA329_76 == NOT_SYMBOL || LA329_76 == ON_SYMBOL || LA329_76 == OPEN_PAR_SYMBOL || ((LA329_76 >= ORDER_SYMBOL) && (LA329_76 <= OR_SYMBOL)) || LA329_76 == PROCEDURE_SYMBOL || LA329_76 == REGEXP_SYMBOL || LA329_76 == RIGHT_SYMBOL || LA329_76 == SEMICOLON_SYMBOL || LA329_76 == SET_SYMBOL || 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 || LA329_76 == AS_SYMBOL || ((LA329_76 >= BACK_TICK_QUOTED_ID) && (LA329_76 <= BITWISE_AND_OPERATOR)) || ((LA329_76 >= BITWISE_OR_OPERATOR) && (LA329_76 <= BITWISE_XOR_OPERATOR)) || ((LA329_76 >= CLOSE_CURLY_SYMBOL) && (LA329_76 <= CLOSE_PAR_SYMBOL)) || ((LA329_76 >= COMMA_SYMBOL) && (LA329_76 <= CONCAT_PIPES_SYMBOL)) || ((LA329_76 >= DIV_OPERATOR) && (LA329_76 <= DIV_SYMBOL)) || LA329_76 == DOUBLE_QUOTED_TEXT || LA329_76 == EQUAL_OPERATOR || ((LA329_76 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_76 <= GREATER_THAN_OPERATOR)) || ((LA329_76 >= HEX_NUMBER) && (LA329_76 <= IDENTIFIER)) || LA329_76 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA329_76 >= LESS_OR_EQUAL_OPERATOR) && (LA329_76 <= LESS_THAN_OPERATOR)) || LA329_76 == LOGICAL_AND_OPERATOR || LA329_76 == LOGICAL_OR_OPERATOR || ((LA329_76 >= MINUS_OPERATOR) && (LA329_76 <= MOD_OPERATOR)) || ((LA329_76 >= MULT_OPERATOR) && (LA329_76 <= NULL_SAFE_EQUAL_OPERATOR)) || LA329_76 == PLUS_OPERATOR || ((LA329_76 >= SHIFT_LEFT_OPERATOR) && (LA329_76 <= SHIFT_RIGHT_OPERATOR))))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_76 == DOT_SYMBOL))
                        {
                            {
                                int LA329_2307 = LA(3);
                                if ( (synpred1_MySQL(ctx)))
                                {
                                    alt329=1;
                                }
                                else if ( (ANTLR3_TRUE))
                                {
                                    alt329=2;
                                }
                                else
                                {
                                    if (BACKTRACKING>0)
                                    {
                                        FAILEDFLAG = ANTLR3_TRUE;
                                        return retval;
                                    }


                                    CONSTRUCTEX();
                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                    EXCEPTION->message      = (void *)"";
                                    EXCEPTION->decisionNum  = 329;
                                    EXCEPTION->state        = 2307;


                                    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_2361 = LA(3);
                                if ( (synpred1_MySQL(ctx)))
                                {
                                    alt329=1;
                                }
                                else if ( (ANTLR3_TRUE))
                                {
                                    alt329=2;
                                }
                                else
                                {
                                    if (BACKTRACKING>0)
                                    {
                                        FAILEDFLAG = ANTLR3_TRUE;
                                        return retval;
                                    }


                                    CONSTRUCTEX();
                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                    EXCEPTION->message      = (void *)"";
                                    EXCEPTION->decisionNum  = 329;
                                    EXCEPTION->state        = 2361;


                                    goto ruleselect_itemEx;

                                }
                            }
                        }
                        else if ( (LA329_96 == EOF || ((LA329_96 >= ACCOUNT_SYMBOL) && (LA329_96 <= YEAR_SYMBOL)) || LA329_96 == AND_SYMBOL || LA329_96 == BETWEEN_SYMBOL || LA329_96 == COLLATE_SYMBOL || LA329_96 == CROSS_SYMBOL || LA329_96 == FOR_SYMBOL || LA329_96 == FROM_SYMBOL || ((LA329_96 >= GROUP_SYMBOL) && (LA329_96 <= HAVING_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA329_96 == LOCK_SYMBOL || ((LA329_96 >= MOD_SYMBOL) && (LA329_96 <= NATURAL_SYMBOL)) || LA329_96 == NOT_SYMBOL || LA329_96 == ON_SYMBOL || ((LA329_96 >= ORDER_SYMBOL) && (LA329_96 <= OR_SYMBOL)) || LA329_96 == PROCEDURE_SYMBOL || LA329_96 == REGEXP_SYMBOL || LA329_96 == RIGHT_SYMBOL || LA329_96 == SEMICOLON_SYMBOL || LA329_96 == SET_SYMBOL || 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 || LA329_96 == AS_SYMBOL || ((LA329_96 >= BACK_TICK_QUOTED_ID) && (LA329_96 <= BITWISE_AND_OPERATOR)) || ((LA329_96 >= BITWISE_OR_OPERATOR) && (LA329_96 <= BITWISE_XOR_OPERATOR)) || ((LA329_96 >= CLOSE_CURLY_SYMBOL) && (LA329_96 <= CLOSE_PAR_SYMBOL)) || ((LA329_96 >= COMMA_SYMBOL) && (LA329_96 <= CONCAT_PIPES_SYMBOL)) || ((LA329_96 >= DIV_OPERATOR) && (LA329_96 <= DIV_SYMBOL)) || LA329_96 == DOUBLE_QUOTED_TEXT || LA329_96 == EQUAL_OPERATOR || ((LA329_96 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_96 <= GREATER_THAN_OPERATOR)) || ((LA329_96 >= HEX_NUMBER) && (LA329_96 <= IDENTIFIER)) || LA329_96 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA329_96 >= LESS_OR_EQUAL_OPERATOR) && (LA329_96 <= LESS_THAN_OPERATOR)) || LA329_96 == LOGICAL_AND_OPERATOR || LA329_96 == LOGICAL_OR_OPERATOR || ((LA329_96 >= MINUS_OPERATOR) && (LA329_96 <= MOD_OPERATOR)) || ((LA329_96 >= MULT_OPERATOR) && (LA329_96 <= NULL_SAFE_EQUAL_OPERATOR)) || LA329_96 == PLUS_OPERATOR || ((LA329_96 >= SHIFT_LEFT_OPERATOR) && (LA329_96 <= SHIFT_RIGHT_OPERATOR))))
                        {
                            alt329=2;
                        }
                        else
                        {
                            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:1301:2: ( table_wild )=> table_wild
        	    {
        	        FOLLOWPUSH(FOLLOW_table_wild_in_select_item5350);
        	        table_wild943=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_wild943.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;
        	        	// 1301:29: -> ^( COLUMN_REF_TOKEN table_wild )
        	        	{
        	        	    // MySQL.g:1301:32: ^( 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:1302:4: expression ( select_alias )?
        	    {
        	        FOLLOWPUSH(FOLLOW_expression_in_select_item5363);
        	        expression944=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_itemEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) { CREATE_stream_expression; stream_expression->add(stream_expression, expression944.tree, NULL); }

        	        // MySQL.g:1302:15: ( select_alias )?
        	        {
        	            int alt328=2;
        	            {
        	                int LA328_0 = LA(1);
        	                if ( (((LA328_0 >= ACCOUNT_SYMBOL) && (LA328_0 <= YEAR_SYMBOL)) || LA328_0 == SINGLE_QUOTED_TEXT || 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))))
        	                {
        	                    alt328=1;
        	                }
        	            }
        	            switch (alt328)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1302:15: select_alias
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_select_alias_in_select_item5365);
        	        	        select_alias945=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_alias945.tree, NULL); }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        /* AST REWRITE
        	         * elements          : expression, select_alias
        	         * token labels      : 
        	         * rule labels       : retval
        	         * token list labels : 
        	         * rule list labels  : 
        	         */
        	        if ( BACKTRACKING==0 ) 

        	        {
        	        	pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_retval;

        	        	stream_retval=antlr3RewriteRuleSubtreeStreamNewAEE(ADAPTOR,  RECOGNIZER, (pANTLR3_UINT8)"token retval", retval.tree != NULL ? retval.tree : NULL);

        	        	root_0			    = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));
        	        	retval.tree    = root_0;
        	        	// 1302:29: -> ^( SELECT_EXPR_TOKEN expression ( select_alias )? )
        	        	{
        	        	    // MySQL.g:1302: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:1302: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:1305: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_SYMBOL946;
    MySQLParser_identifier_return identifier947;
    #undef	RETURN_TYPE_identifier947
    #define	RETURN_TYPE_identifier947 MySQLParser_identifier_return

    MySQLParser_text_string_return text_string948;
    #undef	RETURN_TYPE_text_string948
    #define	RETURN_TYPE_text_string948 MySQLParser_text_string_return

    pANTLR3_BASE_TREE AS_SYMBOL946_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    AS_SYMBOL946       = NULL;
    identifier947.tree = NULL;

    text_string948.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    AS_SYMBOL946_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1305:13: ( ( AS_SYMBOL )? ( identifier | text_string ) )
        // MySQL.g:1306:2: ( AS_SYMBOL )? ( identifier | text_string )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:1306:2: ( AS_SYMBOL )?
            {
                int alt330=2;
                switch ( LA(1) )
                {
                    case AS_SYMBOL:
                    	{
                    		alt330=1;
                    	}
                        break;
                }

                switch (alt330)
                {
            	case 1:
            	    // MySQL.g:1306:2: AS_SYMBOL
            	    {
            	        AS_SYMBOL946 = (pANTLR3_COMMON_TOKEN) MATCHT(AS_SYMBOL, &FOLLOW_AS_SYMBOL_in_select_alias5386);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_aliasEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        AS_SYMBOL946_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AS_SYMBOL946));
            	        ADAPTOR->addChild(ADAPTOR, root_0, AS_SYMBOL946_tree);
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:1306: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 == SINGLE_QUOTED_TEXT || LA331_0 == BIN_NUMBER || LA331_0 == HEX_NUMBER))
                    {
                        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:1306:14: identifier
            	    {
            	        FOLLOWPUSH(FOLLOW_identifier_in_select_alias5390);
            	        identifier947=identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_aliasEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier947.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1306:27: text_string
            	    {
            	        FOLLOWPUSH(FOLLOW_text_string_in_select_alias5394);
            	        text_string948=text_string(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_aliasEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string948.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:1309: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_SYMBOL949;
    MySQLParser_limit_options_return limit_options950;
    #undef	RETURN_TYPE_limit_options950
    #define	RETURN_TYPE_limit_options950 MySQLParser_limit_options_return

    pANTLR3_BASE_TREE LIMIT_SYMBOL949_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    LIMIT_SYMBOL949       = NULL;
    limit_options950.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    LIMIT_SYMBOL949_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1309:13: ( LIMIT_SYMBOL limit_options )
        // MySQL.g:1310:2: LIMIT_SYMBOL limit_options
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            LIMIT_SYMBOL949 = (pANTLR3_COMMON_TOKEN) MATCHT(LIMIT_SYMBOL, &FOLLOW_LIMIT_SYMBOL_in_limit_clause5414);
            if  (HASEXCEPTION())
            {
                goto rulelimit_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            LIMIT_SYMBOL949_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LIMIT_SYMBOL949));
            ADAPTOR->addChild(ADAPTOR, root_0, LIMIT_SYMBOL949_tree);
            }

            FOLLOWPUSH(FOLLOW_limit_options_in_limit_clause5416);
            limit_options950=limit_options(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulelimit_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, limit_options950.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:1313: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_SYMBOL951;
    MySQLParser_limit_option_return limit_option952;
    #undef	RETURN_TYPE_limit_option952
    #define	RETURN_TYPE_limit_option952 MySQLParser_limit_option_return

    pANTLR3_BASE_TREE LIMIT_SYMBOL951_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    LIMIT_SYMBOL951       = NULL;
    limit_option952.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    LIMIT_SYMBOL951_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1313:20: ( LIMIT_SYMBOL limit_option )
        // MySQL.g:1314:2: LIMIT_SYMBOL limit_option
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            LIMIT_SYMBOL951 = (pANTLR3_COMMON_TOKEN) MATCHT(LIMIT_SYMBOL, &FOLLOW_LIMIT_SYMBOL_in_simple_limit_clause5425);
            if  (HASEXCEPTION())
            {
                goto rulesimple_limit_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            LIMIT_SYMBOL951_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LIMIT_SYMBOL951));
            ADAPTOR->addChild(ADAPTOR, root_0, LIMIT_SYMBOL951_tree);
            }

            FOLLOWPUSH(FOLLOW_limit_option_in_simple_limit_clause5427);
            limit_option952=limit_option(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulesimple_limit_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, limit_option952.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:1317: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    set954;
    MySQLParser_limit_option_return limit_option953;
    #undef	RETURN_TYPE_limit_option953
    #define	RETURN_TYPE_limit_option953 MySQLParser_limit_option_return

    MySQLParser_limit_option_return limit_option955;
    #undef	RETURN_TYPE_limit_option955
    #define	RETURN_TYPE_limit_option955 MySQLParser_limit_option_return

    pANTLR3_BASE_TREE set954_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set954       = NULL;
    limit_option953.tree = NULL;

    limit_option955.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set954_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1317:14: ( limit_option ( options {greedy=true; } : ( COMMA_SYMBOL | OFFSET_SYMBOL ) limit_option )? )
        // MySQL.g:1318: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_options5436);
            limit_option953=limit_option(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulelimit_optionsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, limit_option953.tree);

            // MySQL.g:1318: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 == PARAM_MARKER || LA332_1 == INT_NUMBER || LA332_1 == LONG_NUMBER || LA332_1 == ULONGLONG_NUMBER))
                    		    {
                    		        alt332=1;
                    		    }
                    		}
                    	}
                        break;
                    case OFFSET_SYMBOL:
                    	{
                    		alt332=1;
                    	}
                        break;
                }

                switch (alt332)
                {
            	case 1:
            	    // MySQL.g:1318:45: ( COMMA_SYMBOL | OFFSET_SYMBOL ) limit_option
            	    {
            	        set954=(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, set954))
            	            );
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

            	        }
            	        else
            	        {
            	            if (BACKTRACKING>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_options5460);
            	        limit_option955=limit_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulelimit_optionsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, limit_option955.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:1321: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_MARKER957;
    pANTLR3_COMMON_TOKEN    ULONGLONG_NUMBER958;
    pANTLR3_COMMON_TOKEN    LONG_NUMBER959;
    pANTLR3_COMMON_TOKEN    INT_NUMBER960;
    MySQLParser_identifier_return identifier956;
    #undef	RETURN_TYPE_identifier956
    #define	RETURN_TYPE_identifier956 MySQLParser_identifier_return

    pANTLR3_BASE_TREE PARAM_MARKER957_tree;
    pANTLR3_BASE_TREE ULONGLONG_NUMBER958_tree;
    pANTLR3_BASE_TREE LONG_NUMBER959_tree;
    pANTLR3_BASE_TREE INT_NUMBER960_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    PARAM_MARKER957       = NULL;
    ULONGLONG_NUMBER958       = NULL;
    LONG_NUMBER959       = NULL;
    INT_NUMBER960       = NULL;
    identifier956.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    PARAM_MARKER957_tree   = NULL;
    ULONGLONG_NUMBER958_tree   = NULL;
    LONG_NUMBER959_tree   = NULL;
    INT_NUMBER960_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1321: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:1322:2: identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_identifier_in_limit_option5471);
        	        identifier956=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelimit_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier956.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1323:4: PARAM_MARKER
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        PARAM_MARKER957 = (pANTLR3_COMMON_TOKEN) MATCHT(PARAM_MARKER, &FOLLOW_PARAM_MARKER_in_limit_option5476);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelimit_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PARAM_MARKER957_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARAM_MARKER957));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PARAM_MARKER957_tree);
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1324:4: ULONGLONG_NUMBER
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ULONGLONG_NUMBER958 = (pANTLR3_COMMON_TOKEN) MATCHT(ULONGLONG_NUMBER, &FOLLOW_ULONGLONG_NUMBER_in_limit_option5481);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelimit_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ULONGLONG_NUMBER958_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ULONGLONG_NUMBER958));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ULONGLONG_NUMBER958_tree);
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1325:4: LONG_NUMBER
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        LONG_NUMBER959 = (pANTLR3_COMMON_TOKEN) MATCHT(LONG_NUMBER, &FOLLOW_LONG_NUMBER_in_limit_option5486);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelimit_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LONG_NUMBER959_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LONG_NUMBER959));
        	        ADAPTOR->addChild(ADAPTOR, root_0, LONG_NUMBER959_tree);
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:1326:4: INT_NUMBER
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        INT_NUMBER960 = (pANTLR3_COMMON_TOKEN) MATCHT(INT_NUMBER, &FOLLOW_INT_NUMBER_in_limit_option5491);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelimit_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INT_NUMBER960_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INT_NUMBER960));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INT_NUMBER960_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:1329: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_SYMBOL961;
    pANTLR3_COMMON_TOKEN    OUTFILE_SYMBOL962;
    pANTLR3_COMMON_TOKEN    DUMPFILE_SYMBOL967;
    pANTLR3_COMMON_TOKEN    AT_SIGN_SYMBOL969;
    pANTLR3_COMMON_TOKEN    AT_TEXT_SUFFIX971;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL972;
    pANTLR3_COMMON_TOKEN    AT_SIGN_SYMBOL973;
    pANTLR3_COMMON_TOKEN    AT_TEXT_SUFFIX975;
    MySQLParser_string_literal_return string_literal963;
    #undef	RETURN_TYPE_string_literal963
    #define	RETURN_TYPE_string_literal963 MySQLParser_string_literal_return

    MySQLParser_charset_clause_return charset_clause964;
    #undef	RETURN_TYPE_charset_clause964
    #define	RETURN_TYPE_charset_clause964 MySQLParser_charset_clause_return

    MySQLParser_fields_clause_return fields_clause965;
    #undef	RETURN_TYPE_fields_clause965
    #define	RETURN_TYPE_fields_clause965 MySQLParser_fields_clause_return

    MySQLParser_lines_clause_return lines_clause966;
    #undef	RETURN_TYPE_lines_clause966
    #define	RETURN_TYPE_lines_clause966 MySQLParser_lines_clause_return

    MySQLParser_string_literal_return string_literal968;
    #undef	RETURN_TYPE_string_literal968
    #define	RETURN_TYPE_string_literal968 MySQLParser_string_literal_return

    MySQLParser_text_or_identifier_return text_or_identifier970;
    #undef	RETURN_TYPE_text_or_identifier970
    #define	RETURN_TYPE_text_or_identifier970 MySQLParser_text_or_identifier_return

    MySQLParser_text_or_identifier_return text_or_identifier974;
    #undef	RETURN_TYPE_text_or_identifier974
    #define	RETURN_TYPE_text_or_identifier974 MySQLParser_text_or_identifier_return

    pANTLR3_BASE_TREE INTO_SYMBOL961_tree;
    pANTLR3_BASE_TREE OUTFILE_SYMBOL962_tree;
    pANTLR3_BASE_TREE DUMPFILE_SYMBOL967_tree;
    pANTLR3_BASE_TREE AT_SIGN_SYMBOL969_tree;
    pANTLR3_BASE_TREE AT_TEXT_SUFFIX971_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL972_tree;
    pANTLR3_BASE_TREE AT_SIGN_SYMBOL973_tree;
    pANTLR3_BASE_TREE AT_TEXT_SUFFIX975_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    INTO_SYMBOL961       = NULL;
    OUTFILE_SYMBOL962       = NULL;
    DUMPFILE_SYMBOL967       = NULL;
    AT_SIGN_SYMBOL969       = NULL;
    AT_TEXT_SUFFIX971       = NULL;
    COMMA_SYMBOL972       = NULL;
    AT_SIGN_SYMBOL973       = NULL;
    AT_TEXT_SUFFIX975       = NULL;
    string_literal963.tree = NULL;

    charset_clause964.tree = NULL;

    fields_clause965.tree = NULL;

    lines_clause966.tree = NULL;

    string_literal968.tree = NULL;

    text_or_identifier970.tree = NULL;

    text_or_identifier974.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    INTO_SYMBOL961_tree   = NULL;
    OUTFILE_SYMBOL962_tree   = NULL;
    DUMPFILE_SYMBOL967_tree   = NULL;
    AT_SIGN_SYMBOL969_tree   = NULL;
    AT_TEXT_SUFFIX971_tree   = NULL;
    COMMA_SYMBOL972_tree   = NULL;
    AT_SIGN_SYMBOL973_tree   = NULL;
    AT_TEXT_SUFFIX975_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1329: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:1330: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_SYMBOL961 = (pANTLR3_COMMON_TOKEN) MATCHT(INTO_SYMBOL, &FOLLOW_INTO_SYMBOL_in_into_clause5500);
            if  (HASEXCEPTION())
            {
                goto ruleinto_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            INTO_SYMBOL961_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTO_SYMBOL961));
            ADAPTOR->addChild(ADAPTOR, root_0, INTO_SYMBOL961_tree);
            }

            // MySQL.g:1331: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 NCHAR_TEXT:
                        case SINGLE_QUOTED_TEXT:
                        case DOUBLE_QUOTED_TEXT:
                        case UNDERSCORE_CHARSET:
                        	{
                        		alt342=2;
                        	}
                            break;
                        case EOF:
                        case FOR_SYMBOL:
                        case FROM_SYMBOL:
                        case LOCK_SYMBOL:
                        case ON_SYMBOL:
                        case SEMICOLON_SYMBOL:
                        case UNION_SYMBOL:
                        case WITH_SYMBOL:
                        case CLOSE_PAR_SYMBOL:
                        case COMMA_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 == SINGLE_QUOTED_TEXT || ((LA342_0 >= AT_SIGN_SYMBOL) && (LA342_0 <= AT_TEXT_SUFFIX)) || LA342_0 == BACK_TICK_QUOTED_ID || LA342_0 == DOUBLE_QUOTED_TEXT || LA342_0 == IDENTIFIER))
                    {
                        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:1332:3: OUTFILE_SYMBOL string_literal ( charset_clause )? ( fields_clause )? ( lines_clause )?
            	    {
            	        OUTFILE_SYMBOL962 = (pANTLR3_COMMON_TOKEN) MATCHT(OUTFILE_SYMBOL, &FOLLOW_OUTFILE_SYMBOL_in_into_clause5507);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleinto_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OUTFILE_SYMBOL962_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OUTFILE_SYMBOL962));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OUTFILE_SYMBOL962_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_string_literal_in_into_clause5509);
            	        string_literal963=string_literal(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleinto_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal963.tree);

            	        // MySQL.g:1332:33: ( charset_clause )?
            	        {
            	            int alt334=2;
            	            switch ( LA(1) )
            	            {
            	                case CHARSET_SYMBOL:
            	                case CHAR_SYMBOL:
            	                	{
            	                		alt334=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt334)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1332:33: charset_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_charset_clause_in_into_clause5511);
            	        	        charset_clause964=charset_clause(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleinto_clauseEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset_clause964.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:1332:49: ( fields_clause )?
            	        {
            	            int alt335=2;
            	            switch ( LA(1) )
            	            {
            	                case COLUMNS_SYMBOL:
            	                	{
            	                		alt335=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt335)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1332:49: fields_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_fields_clause_in_into_clause5514);
            	        	        fields_clause965=fields_clause(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleinto_clauseEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, fields_clause965.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:1332:64: ( lines_clause )?
            	        {
            	            int alt336=2;
            	            switch ( LA(1) )
            	            {
            	                case LINES_SYMBOL:
            	                	{
            	                		alt336=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt336)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1332:64: lines_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_lines_clause_in_into_clause5517);
            	        	        lines_clause966=lines_clause(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleinto_clauseEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, lines_clause966.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1333:5: DUMPFILE_SYMBOL string_literal
            	    {
            	        DUMPFILE_SYMBOL967 = (pANTLR3_COMMON_TOKEN) MATCHT(DUMPFILE_SYMBOL, &FOLLOW_DUMPFILE_SYMBOL_in_into_clause5524);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleinto_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DUMPFILE_SYMBOL967_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DUMPFILE_SYMBOL967));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DUMPFILE_SYMBOL967_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_string_literal_in_into_clause5526);
            	        string_literal968=string_literal(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleinto_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal968.tree);

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:1334:5: ( AT_SIGN_SYMBOL )? ( text_or_identifier | AT_TEXT_SUFFIX ) ( COMMA_SYMBOL ( AT_SIGN_SYMBOL )? ( text_or_identifier | AT_TEXT_SUFFIX ) )*
            	    {
            	        // MySQL.g:1334:5: ( AT_SIGN_SYMBOL )?
            	        {
            	            int alt337=2;
            	            switch ( LA(1) )
            	            {
            	                case AT_SIGN_SYMBOL:
            	                	{
            	                		alt337=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt337)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1334:5: AT_SIGN_SYMBOL
            	        	    {
            	        	        AT_SIGN_SYMBOL969 = (pANTLR3_COMMON_TOKEN) MATCHT(AT_SIGN_SYMBOL, &FOLLOW_AT_SIGN_SYMBOL_in_into_clause5532);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleinto_clauseEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        AT_SIGN_SYMBOL969_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AT_SIGN_SYMBOL969));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, AT_SIGN_SYMBOL969_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:1334: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 == SINGLE_QUOTED_TEXT || LA338_0 == BACK_TICK_QUOTED_ID || LA338_0 == DOUBLE_QUOTED_TEXT || LA338_0 == IDENTIFIER))
            	                {
            	                    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:1334:22: text_or_identifier
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_text_or_identifier_in_into_clause5536);
            	        	        text_or_identifier970=text_or_identifier(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleinto_clauseEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_or_identifier970.tree);

            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:1334:43: AT_TEXT_SUFFIX
            	        	    {
            	        	        AT_TEXT_SUFFIX971 = (pANTLR3_COMMON_TOKEN) MATCHT(AT_TEXT_SUFFIX, &FOLLOW_AT_TEXT_SUFFIX_in_into_clause5540);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleinto_clauseEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        AT_TEXT_SUFFIX971_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AT_TEXT_SUFFIX971));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, AT_TEXT_SUFFIX971_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:1334: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:1334:60: COMMA_SYMBOL ( AT_SIGN_SYMBOL )? ( text_or_identifier | AT_TEXT_SUFFIX )
            	        	    {
            	        	        COMMA_SYMBOL972 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_into_clause5544);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleinto_clauseEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        COMMA_SYMBOL972_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL972));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL972_tree);
            	        	        }

            	        	        // MySQL.g:1334:73: ( AT_SIGN_SYMBOL )?
            	        	        {
            	        	            int alt339=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case AT_SIGN_SYMBOL:
            	        	                	{
            	        	                		alt339=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt339)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:1334:73: AT_SIGN_SYMBOL
            	        	        	    {
            	        	        	        AT_SIGN_SYMBOL973 = (pANTLR3_COMMON_TOKEN) MATCHT(AT_SIGN_SYMBOL, &FOLLOW_AT_SIGN_SYMBOL_in_into_clause5546);
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto ruleinto_clauseEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) {
            	        	        	        AT_SIGN_SYMBOL973_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AT_SIGN_SYMBOL973));
            	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, AT_SIGN_SYMBOL973_tree);
            	        	        	        }

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	        // MySQL.g:1334: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 == SINGLE_QUOTED_TEXT || LA340_0 == BACK_TICK_QUOTED_ID || LA340_0 == DOUBLE_QUOTED_TEXT || LA340_0 == IDENTIFIER))
            	        	                {
            	        	                    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:1334:90: text_or_identifier
            	        	        	    {
            	        	        	        FOLLOWPUSH(FOLLOW_text_or_identifier_in_into_clause5550);
            	        	        	        text_or_identifier974=text_or_identifier(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto ruleinto_clauseEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_or_identifier974.tree);

            	        	        	    }
            	        	        	    break;
            	        	        	case 2:
            	        	        	    // MySQL.g:1334:111: AT_TEXT_SUFFIX
            	        	        	    {
            	        	        	        AT_TEXT_SUFFIX975 = (pANTLR3_COMMON_TOKEN) MATCHT(AT_TEXT_SUFFIX, &FOLLOW_AT_TEXT_SUFFIX_in_into_clause5554);
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto ruleinto_clauseEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) {
            	        	        	        AT_TEXT_SUFFIX975_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AT_TEXT_SUFFIX975));
            	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, AT_TEXT_SUFFIX975_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:1338: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_SYMBOL976;
    pANTLR3_COMMON_TOKEN    ANALYSE_SYMBOL977;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL978;
    pANTLR3_COMMON_TOKEN    INT_NUMBER979;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL980;
    pANTLR3_COMMON_TOKEN    INT_NUMBER981;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL982;

    pANTLR3_BASE_TREE PROCEDURE_SYMBOL976_tree;
    pANTLR3_BASE_TREE ANALYSE_SYMBOL977_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL978_tree;
    pANTLR3_BASE_TREE INT_NUMBER979_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL980_tree;
    pANTLR3_BASE_TREE INT_NUMBER981_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL982_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    PROCEDURE_SYMBOL976       = NULL;
    ANALYSE_SYMBOL977       = NULL;
    OPEN_PAR_SYMBOL978       = NULL;
    INT_NUMBER979       = NULL;
    COMMA_SYMBOL980       = NULL;
    INT_NUMBER981       = NULL;
    CLOSE_PAR_SYMBOL982       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    PROCEDURE_SYMBOL976_tree   = NULL;
    ANALYSE_SYMBOL977_tree   = NULL;
    OPEN_PAR_SYMBOL978_tree   = NULL;
    INT_NUMBER979_tree   = NULL;
    COMMA_SYMBOL980_tree   = NULL;
    INT_NUMBER981_tree   = NULL;
    CLOSE_PAR_SYMBOL982_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1338:25: ( PROCEDURE_SYMBOL ^ ANALYSE_SYMBOL OPEN_PAR_SYMBOL ( INT_NUMBER ( COMMA_SYMBOL INT_NUMBER )? )? CLOSE_PAR_SYMBOL )
        // MySQL.g:1339: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_SYMBOL976 = (pANTLR3_COMMON_TOKEN) MATCHT(PROCEDURE_SYMBOL, &FOLLOW_PROCEDURE_SYMBOL_in_procedure_analyse_clause5569);
            if  (HASEXCEPTION())
            {
                goto ruleprocedure_analyse_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            PROCEDURE_SYMBOL976_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PROCEDURE_SYMBOL976))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, PROCEDURE_SYMBOL976_tree, root_0));
            }

            ANALYSE_SYMBOL977 = (pANTLR3_COMMON_TOKEN) MATCHT(ANALYSE_SYMBOL, &FOLLOW_ANALYSE_SYMBOL_in_procedure_analyse_clause5572);
            if  (HASEXCEPTION())
            {
                goto ruleprocedure_analyse_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ANALYSE_SYMBOL977_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ANALYSE_SYMBOL977));
            ADAPTOR->addChild(ADAPTOR, root_0, ANALYSE_SYMBOL977_tree);
            }

            OPEN_PAR_SYMBOL978 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_procedure_analyse_clause5574);
            if  (HASEXCEPTION())
            {
                goto ruleprocedure_analyse_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL978_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL978));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL978_tree);
            }

            // MySQL.g:1339: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:1339:52: INT_NUMBER ( COMMA_SYMBOL INT_NUMBER )?
            	    {
            	        INT_NUMBER979 = (pANTLR3_COMMON_TOKEN) MATCHT(INT_NUMBER, &FOLLOW_INT_NUMBER_in_procedure_analyse_clause5577);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprocedure_analyse_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        INT_NUMBER979_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INT_NUMBER979));
            	        ADAPTOR->addChild(ADAPTOR, root_0, INT_NUMBER979_tree);
            	        }

            	        // MySQL.g:1339:63: ( COMMA_SYMBOL INT_NUMBER )?
            	        {
            	            int alt343=2;
            	            switch ( LA(1) )
            	            {
            	                case COMMA_SYMBOL:
            	                	{
            	                		alt343=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt343)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1339:64: COMMA_SYMBOL INT_NUMBER
            	        	    {
            	        	        COMMA_SYMBOL980 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_procedure_analyse_clause5580);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleprocedure_analyse_clauseEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        COMMA_SYMBOL980_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL980));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL980_tree);
            	        	        }

            	        	        INT_NUMBER981 = (pANTLR3_COMMON_TOKEN) MATCHT(INT_NUMBER, &FOLLOW_INT_NUMBER_in_procedure_analyse_clause5582);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleprocedure_analyse_clauseEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        INT_NUMBER981_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INT_NUMBER981));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, INT_NUMBER981_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

                }
            }

            CLOSE_PAR_SYMBOL982 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_procedure_analyse_clause5588);
            if  (HASEXCEPTION())
            {
                goto ruleprocedure_analyse_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL982_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL982));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL982_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:1342: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_SYMBOL983;
    MySQLParser_expression_return expression984;
    #undef	RETURN_TYPE_expression984
    #define	RETURN_TYPE_expression984 MySQLParser_expression_return

    pANTLR3_BASE_TREE HAVING_SYMBOL983_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    HAVING_SYMBOL983       = NULL;
    expression984.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    HAVING_SYMBOL983_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1342:14: ( HAVING_SYMBOL ^ expression )
        // MySQL.g:1343:2: HAVING_SYMBOL ^ expression
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            HAVING_SYMBOL983 = (pANTLR3_COMMON_TOKEN) MATCHT(HAVING_SYMBOL, &FOLLOW_HAVING_SYMBOL_in_having_clause5597);
            if  (HASEXCEPTION())
            {
                goto rulehaving_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            HAVING_SYMBOL983_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, HAVING_SYMBOL983))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, HAVING_SYMBOL983_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_expression_in_having_clause5600);
            expression984=expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulehaving_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression984.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:1346: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_SYMBOL985;
    pANTLR3_COMMON_TOKEN    BY_SYMBOL986;
    MySQLParser_expression_list_with_direction_return expression_list_with_direction987;
    #undef	RETURN_TYPE_expression_list_with_direction987
    #define	RETURN_TYPE_expression_list_with_direction987 MySQLParser_expression_list_with_direction_return

    MySQLParser_olap_option_return olap_option988;
    #undef	RETURN_TYPE_olap_option988
    #define	RETURN_TYPE_olap_option988 MySQLParser_olap_option_return

    pANTLR3_BASE_TREE GROUP_SYMBOL985_tree;
    pANTLR3_BASE_TREE BY_SYMBOL986_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    GROUP_SYMBOL985       = NULL;
    BY_SYMBOL986       = NULL;
    expression_list_with_direction987.tree = NULL;

    olap_option988.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    GROUP_SYMBOL985_tree   = NULL;
    BY_SYMBOL986_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1346:16: ( GROUP_SYMBOL ^ BY_SYMBOL expression_list_with_direction ( olap_option )? )
        // MySQL.g:1347:2: GROUP_SYMBOL ^ BY_SYMBOL expression_list_with_direction ( olap_option )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            GROUP_SYMBOL985 = (pANTLR3_COMMON_TOKEN) MATCHT(GROUP_SYMBOL, &FOLLOW_GROUP_SYMBOL_in_group_by_clause5609);
            if  (HASEXCEPTION())
            {
                goto rulegroup_by_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            GROUP_SYMBOL985_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GROUP_SYMBOL985))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, GROUP_SYMBOL985_tree, root_0));
            }

            BY_SYMBOL986 = (pANTLR3_COMMON_TOKEN) MATCHT(BY_SYMBOL, &FOLLOW_BY_SYMBOL_in_group_by_clause5612);
            if  (HASEXCEPTION())
            {
                goto rulegroup_by_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            BY_SYMBOL986_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BY_SYMBOL986));
            ADAPTOR->addChild(ADAPTOR, root_0, BY_SYMBOL986_tree);
            }

            FOLLOWPUSH(FOLLOW_expression_list_with_direction_in_group_by_clause5614);
            expression_list_with_direction987=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_direction987.tree);

            // MySQL.g:1347: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:1347:57: olap_option
            	    {
            	        FOLLOWPUSH(FOLLOW_olap_option_in_group_by_clause5616);
            	        olap_option988=olap_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulegroup_by_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, olap_option988.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:1350: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_SYMBOL989;
    pANTLR3_COMMON_TOKEN    CUBE_SYMBOL990;
    pANTLR3_COMMON_TOKEN    WITH_SYMBOL991;
    pANTLR3_COMMON_TOKEN    ROLLUP_SYMBOL992;

    pANTLR3_BASE_TREE WITH_SYMBOL989_tree;
    pANTLR3_BASE_TREE CUBE_SYMBOL990_tree;
    pANTLR3_BASE_TREE WITH_SYMBOL991_tree;
    pANTLR3_BASE_TREE ROLLUP_SYMBOL992_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    WITH_SYMBOL989       = NULL;
    CUBE_SYMBOL990       = NULL;
    WITH_SYMBOL991       = NULL;
    ROLLUP_SYMBOL992       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    WITH_SYMBOL989_tree   = NULL;
    CUBE_SYMBOL990_tree   = NULL;
    WITH_SYMBOL991_tree   = NULL;
    ROLLUP_SYMBOL992_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1350: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:1351:2: WITH_SYMBOL CUBE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        WITH_SYMBOL989 = (pANTLR3_COMMON_TOKEN) MATCHT(WITH_SYMBOL, &FOLLOW_WITH_SYMBOL_in_olap_option5626);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleolap_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        WITH_SYMBOL989_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WITH_SYMBOL989));
        	        ADAPTOR->addChild(ADAPTOR, root_0, WITH_SYMBOL989_tree);
        	        }

        	        CUBE_SYMBOL990 = (pANTLR3_COMMON_TOKEN) MATCHT(CUBE_SYMBOL, &FOLLOW_CUBE_SYMBOL_in_olap_option5628);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleolap_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CUBE_SYMBOL990_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CUBE_SYMBOL990));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CUBE_SYMBOL990_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1352:4: WITH_SYMBOL ROLLUP_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        WITH_SYMBOL991 = (pANTLR3_COMMON_TOKEN) MATCHT(WITH_SYMBOL, &FOLLOW_WITH_SYMBOL_in_olap_option5633);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleolap_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        WITH_SYMBOL991_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WITH_SYMBOL991));
        	        ADAPTOR->addChild(ADAPTOR, root_0, WITH_SYMBOL991_tree);
        	        }

        	        ROLLUP_SYMBOL992 = (pANTLR3_COMMON_TOKEN) MATCHT(ROLLUP_SYMBOL, &FOLLOW_ROLLUP_SYMBOL_in_olap_option5635);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleolap_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ROLLUP_SYMBOL992_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ROLLUP_SYMBOL992));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ROLLUP_SYMBOL992_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:1355: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_SYMBOL993;
    pANTLR3_COMMON_TOKEN    BY_SYMBOL994;
    MySQLParser_expression_list_with_direction_return expression_list_with_direction995;
    #undef	RETURN_TYPE_expression_list_with_direction995
    #define	RETURN_TYPE_expression_list_with_direction995 MySQLParser_expression_list_with_direction_return

    pANTLR3_BASE_TREE ORDER_SYMBOL993_tree;
    pANTLR3_BASE_TREE BY_SYMBOL994_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ORDER_SYMBOL993       = NULL;
    BY_SYMBOL994       = NULL;
    expression_list_with_direction995.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ORDER_SYMBOL993_tree   = NULL;
    BY_SYMBOL994_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1355:16: ( ORDER_SYMBOL ^ BY_SYMBOL expression_list_with_direction )
        // MySQL.g:1356:2: ORDER_SYMBOL ^ BY_SYMBOL expression_list_with_direction
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            ORDER_SYMBOL993 = (pANTLR3_COMMON_TOKEN) MATCHT(ORDER_SYMBOL, &FOLLOW_ORDER_SYMBOL_in_order_by_clause5644);
            if  (HASEXCEPTION())
            {
                goto ruleorder_by_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ORDER_SYMBOL993_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ORDER_SYMBOL993))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, ORDER_SYMBOL993_tree, root_0));
            }

            BY_SYMBOL994 = (pANTLR3_COMMON_TOKEN) MATCHT(BY_SYMBOL, &FOLLOW_BY_SYMBOL_in_order_by_clause5647);
            if  (HASEXCEPTION())
            {
                goto ruleorder_by_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            BY_SYMBOL994_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BY_SYMBOL994));
            ADAPTOR->addChild(ADAPTOR, root_0, BY_SYMBOL994_tree);
            }

            FOLLOWPUSH(FOLLOW_expression_list_with_direction_in_order_by_clause5649);
            expression_list_with_direction995=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_direction995.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:1359: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_clause996;
    #undef	RETURN_TYPE_order_by_clause996
    #define	RETURN_TYPE_order_by_clause996 MySQLParser_order_by_clause_return

    MySQLParser_limit_clause_return limit_clause997;
    #undef	RETURN_TYPE_limit_clause997
    #define	RETURN_TYPE_limit_clause997 MySQLParser_limit_clause_return

    MySQLParser_limit_clause_return limit_clause998;
    #undef	RETURN_TYPE_limit_clause998
    #define	RETURN_TYPE_limit_clause998 MySQLParser_limit_clause_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    order_by_clause996.tree = NULL;

    limit_clause997.tree = NULL;

    limit_clause998.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1359: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:1360:2: order_by_clause ( limit_clause )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_order_by_clause_in_order_by_or_limit5658);
        	        order_by_clause996=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_clause996.tree);

        	        // MySQL.g:1360:18: ( limit_clause )?
        	        {
        	            int alt347=2;
        	            switch ( LA(1) )
        	            {
        	                case LIMIT_SYMBOL:
        	                	{
        	                		alt347=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt347)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1360:18: limit_clause
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_limit_clause_in_order_by_or_limit5660);
        	        	        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;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1361:4: limit_clause
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_limit_clause_in_order_by_or_limit5666);
        	        limit_clause998=limit_clause(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleorder_by_or_limitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, limit_clause998.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:1364: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    set999;

    pANTLR3_BASE_TREE set999_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set999       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set999_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1364:10: ( ASC_SYMBOL | DESC_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set999=(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, set999))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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:1369: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_SYMBOL1000;
    MySQLParser_table_reference_list_return table_reference_list1001;
    #undef	RETURN_TYPE_table_reference_list1001
    #define	RETURN_TYPE_table_reference_list1001 MySQLParser_table_reference_list_return

    pANTLR3_BASE_TREE FROM_SYMBOL1000_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    FROM_SYMBOL1000       = NULL;
    table_reference_list1001.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    FROM_SYMBOL1000_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1369:12: ( FROM_SYMBOL table_reference_list )
        // MySQL.g:1370:2: FROM_SYMBOL table_reference_list
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FROM_SYMBOL1000 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_from_clause5689);
            if  (HASEXCEPTION())
            {
                goto rulefrom_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            FROM_SYMBOL1000_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL1000));
            ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL1000_tree);
            }

            FOLLOWPUSH(FOLLOW_table_reference_list_in_from_clause5691);
            table_reference_list1001=table_reference_list(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulefrom_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_reference_list1001.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:1373: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_SYMBOL1002;
    MySQLParser_expression_return expression1003;
    #undef	RETURN_TYPE_expression1003
    #define	RETURN_TYPE_expression1003 MySQLParser_expression_return

    pANTLR3_BASE_TREE WHERE_SYMBOL1002_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    WHERE_SYMBOL1002       = NULL;
    expression1003.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    WHERE_SYMBOL1002_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1373:13: ( WHERE_SYMBOL ^ expression )
        // MySQL.g:1374:2: WHERE_SYMBOL ^ expression
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            WHERE_SYMBOL1002 = (pANTLR3_COMMON_TOKEN) MATCHT(WHERE_SYMBOL, &FOLLOW_WHERE_SYMBOL_in_where_clause5700);
            if  (HASEXCEPTION())
            {
                goto rulewhere_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            WHERE_SYMBOL1002_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WHERE_SYMBOL1002))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, WHERE_SYMBOL1002_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_expression_in_where_clause5703);
            expression1003=expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulewhere_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1003.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:1377: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_SYMBOL1005;
    MySQLParser_join_table_list_return join_table_list1004;
    #undef	RETURN_TYPE_join_table_list1004
    #define	RETURN_TYPE_join_table_list1004 MySQLParser_join_table_list_return

    pANTLR3_BASE_TREE DUAL_SYMBOL1005_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DUAL_SYMBOL1005       = NULL;
    join_table_list1004.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DUAL_SYMBOL1005_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1377: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 >= OPEN_CURLY_SYMBOL) && (LA349_0 <= OPEN_PAR_SYMBOL)) || LA349_0 == SELECT_SYMBOL || LA349_0 == BACK_TICK_QUOTED_ID || LA349_0 == DOT_SYMBOL || LA349_0 == DOUBLE_QUOTED_TEXT || LA349_0 == IDENTIFIER))
                {
                    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:1378:2: join_table_list
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_join_table_list_in_table_reference_list5712);
        	        join_table_list1004=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_list1004.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1379:4: DUAL_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DUAL_SYMBOL1005 = (pANTLR3_COMMON_TOKEN) MATCHT(DUAL_SYMBOL, &FOLLOW_DUAL_SYMBOL_in_table_reference_list5717);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_reference_listEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DUAL_SYMBOL1005_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DUAL_SYMBOL1005));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DUAL_SYMBOL1005_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:1382: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_SYMBOL1007;
    MySQLParser_escaped_table_reference_return escaped_table_reference1006;
    #undef	RETURN_TYPE_escaped_table_reference1006
    #define	RETURN_TYPE_escaped_table_reference1006 MySQLParser_escaped_table_reference_return

    MySQLParser_escaped_table_reference_return escaped_table_reference1008;
    #undef	RETURN_TYPE_escaped_table_reference1008
    #define	RETURN_TYPE_escaped_table_reference1008 MySQLParser_escaped_table_reference_return

    pANTLR3_BASE_TREE COMMA_SYMBOL1007_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL1007       = NULL;
    escaped_table_reference1006.tree = NULL;

    escaped_table_reference1008.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL1007_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1382:16: ( escaped_table_reference ( options {greedy=true; } : COMMA_SYMBOL escaped_table_reference )* )
        // MySQL.g:1383: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_list5728);
            escaped_table_reference1006=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_reference1006.tree);

            // MySQL.g:1383: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:1383:57: COMMA_SYMBOL escaped_table_reference
            	    {
            	        COMMA_SYMBOL1007 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_join_table_list5744);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulejoin_table_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL1007_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1007));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1007_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_escaped_table_reference_in_join_table_list5746);
            	        escaped_table_reference1008=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_reference1008.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:1392: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_SYMBOL1010;
    pANTLR3_COMMON_TOKEN    CLOSE_CURLY_SYMBOL1013;
    MySQLParser_table_reference_return table_reference1009;
    #undef	RETURN_TYPE_table_reference1009
    #define	RETURN_TYPE_table_reference1009 MySQLParser_table_reference_return

    MySQLParser_identifier_return identifier1011;
    #undef	RETURN_TYPE_identifier1011
    #define	RETURN_TYPE_identifier1011 MySQLParser_identifier_return

    MySQLParser_table_reference_return table_reference1012;
    #undef	RETURN_TYPE_table_reference1012
    #define	RETURN_TYPE_table_reference1012 MySQLParser_table_reference_return

    pANTLR3_BASE_TREE OPEN_CURLY_SYMBOL1010_tree;
    pANTLR3_BASE_TREE CLOSE_CURLY_SYMBOL1013_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_CURLY_SYMBOL1010       = NULL;
    CLOSE_CURLY_SYMBOL1013       = NULL;
    table_reference1009.tree = NULL;

    identifier1011.tree = NULL;

    table_reference1012.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_CURLY_SYMBOL1010_tree   = NULL;
    CLOSE_CURLY_SYMBOL1013_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1392: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 == OPEN_PAR_SYMBOL || LA351_0 == SELECT_SYMBOL || LA351_0 == BACK_TICK_QUOTED_ID || LA351_0 == DOT_SYMBOL || LA351_0 == DOUBLE_QUOTED_TEXT || LA351_0 == IDENTIFIER))
                {
                    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:1393:2: table_reference
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_table_reference_in_escaped_table_reference5763);
        	        table_reference1009=table_reference(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleescaped_table_referenceEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_reference1009.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1394:4: OPEN_CURLY_SYMBOL identifier table_reference CLOSE_CURLY_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        OPEN_CURLY_SYMBOL1010 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_CURLY_SYMBOL, &FOLLOW_OPEN_CURLY_SYMBOL_in_escaped_table_reference5768);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleescaped_table_referenceEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_CURLY_SYMBOL1010_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_CURLY_SYMBOL1010));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_CURLY_SYMBOL1010_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_identifier_in_escaped_table_reference5770);
        	        identifier1011=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleescaped_table_referenceEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier1011.tree);

        	        FOLLOWPUSH(FOLLOW_table_reference_in_escaped_table_reference5772);
        	        table_reference1012=table_reference(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleescaped_table_referenceEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_reference1012.tree);

        	        CLOSE_CURLY_SYMBOL1013 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_CURLY_SYMBOL, &FOLLOW_CLOSE_CURLY_SYMBOL_in_escaped_table_reference5774);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleescaped_table_referenceEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_CURLY_SYMBOL1013_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_CURLY_SYMBOL1013));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_CURLY_SYMBOL1013_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:1397: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_factor1014;
    #undef	RETURN_TYPE_table_factor1014
    #define	RETURN_TYPE_table_factor1014 MySQLParser_table_factor_return

    MySQLParser_join_return join1015;
    #undef	RETURN_TYPE_join1015
    #define	RETURN_TYPE_join1015 MySQLParser_join_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    table_factor1014.tree = NULL;

    join1015.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:1397:16: ( table_factor ( options {greedy=true; } : join )* )
        // MySQL.g:1398:2: table_factor ( options {greedy=true; } : join )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_table_factor_in_table_reference5784);
            table_factor1014=table_factor(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruletable_referenceEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_factor1014.tree);

            // MySQL.g:1398: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:1398:45: join
            	    {
            	        FOLLOWPUSH(FOLLOW_join_in_table_reference5800);
            	        join1015=join(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_referenceEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, join1015.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:1401: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_table1016;
    #undef	RETURN_TYPE_join_table1016
    #define	RETURN_TYPE_join_table1016 MySQLParser_join_table_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_join_table;
    /* Initialize rule variables
     */

    root_0 = NULL;

    join_table1016.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:1401:5: ( join_table -> ^( JOIN_EXPR_TOKEN join_table ) )
        // MySQL.g:1402:2: join_table
        {
            FOLLOWPUSH(FOLLOW_join_table_in_join5811);
            join_table1016=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_table1016.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;
            	// 1402:13: -> ^( JOIN_EXPR_TOKEN join_table )
            	{
            	    // MySQL.g:1402: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:1405: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_SYMBOL1017;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1021;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1023;
    MySQLParser_select_option_return select_option1018;
    #undef	RETURN_TYPE_select_option1018
    #define	RETURN_TYPE_select_option1018 MySQLParser_select_option_return

    MySQLParser_select_item_list_return select_item_list1019;
    #undef	RETURN_TYPE_select_item_list1019
    #define	RETURN_TYPE_select_item_list1019 MySQLParser_select_item_list_return

    MySQLParser_table_expression_return table_expression1020;
    #undef	RETURN_TYPE_table_expression1020
    #define	RETURN_TYPE_table_expression1020 MySQLParser_table_expression_return

    MySQLParser_select_table_factor_union_return select_table_factor_union1022;
    #undef	RETURN_TYPE_select_table_factor_union1022
    #define	RETURN_TYPE_select_table_factor_union1022 MySQLParser_select_table_factor_union_return

    MySQLParser_table_alias_return table_alias1024;
    #undef	RETURN_TYPE_table_alias1024
    #define	RETURN_TYPE_table_alias1024 MySQLParser_table_alias_return

    MySQLParser_table_ref_return table_ref1025;
    #undef	RETURN_TYPE_table_ref1025
    #define	RETURN_TYPE_table_ref1025 MySQLParser_table_ref_return

    MySQLParser_use_partition_return use_partition1026;
    #undef	RETURN_TYPE_use_partition1026
    #define	RETURN_TYPE_use_partition1026 MySQLParser_use_partition_return

    MySQLParser_table_alias_return table_alias1027;
    #undef	RETURN_TYPE_table_alias1027
    #define	RETURN_TYPE_table_alias1027 MySQLParser_table_alias_return

    MySQLParser_index_hint_list_return index_hint_list1028;
    #undef	RETURN_TYPE_index_hint_list1028
    #define	RETURN_TYPE_index_hint_list1028 MySQLParser_index_hint_list_return

    pANTLR3_BASE_TREE SELECT_SYMBOL1017_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1021_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1023_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SELECT_SYMBOL1017       = NULL;
    OPEN_PAR_SYMBOL1021       = NULL;
    CLOSE_PAR_SYMBOL1023       = NULL;
    select_option1018.tree = NULL;

    select_item_list1019.tree = NULL;

    table_expression1020.tree = NULL;

    select_table_factor_union1022.tree = NULL;

    table_alias1024.tree = NULL;

    table_ref1025.tree = NULL;

    use_partition1026.tree = NULL;

    table_alias1027.tree = NULL;

    index_hint_list1028.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SELECT_SYMBOL1017_tree   = NULL;
    OPEN_PAR_SYMBOL1021_tree   = NULL;
    CLOSE_PAR_SYMBOL1023_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1405: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:1406:2: SELECT_SYMBOL ( options {greedy=true; } : select_option )* select_item_list table_expression
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SELECT_SYMBOL1017 = (pANTLR3_COMMON_TOKEN) MATCHT(SELECT_SYMBOL, &FOLLOW_SELECT_SYMBOL_in_table_factor5828);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_factorEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SELECT_SYMBOL1017_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SELECT_SYMBOL1017));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SELECT_SYMBOL1017_tree);
        	        }

        	        // MySQL.g:1406: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 == 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 == INTERVAL_SYMBOL || LA353_96 == NCHAR_TEXT || LA353_96 == NOT2_SYMBOL || LA353_96 == SINGLE_QUOTED_TEXT || LA353_96 == BITWISE_NOT_OPERATOR || LA353_96 == LOGICAL_NOT_OPERATOR || 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 == CHAR_SYMBOL || LA353_96 == CURRENT_USER_SYMBOL || LA353_96 == BIN_NUMBER))
        	            		    {
        	            		        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 == COUNT_SYMBOL || LA353_96 == EXISTS_SYMBOL || LA353_96 == GROUP_CONCAT_SYMBOL || LA353_96 == MAX_SYMBOL || LA353_96 == MIN_SYMBOL || LA353_96 == OPEN_PAR_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 || ((LA353_96 >= AT_AT_SIGN_SYMBOL) && (LA353_96 <= AT_TEXT_SUFFIX)) || ((LA353_96 >= BIT_AND_SYMBOL) && (LA353_96 <= BIT_XOR_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 == 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 == INTERVAL_SYMBOL || LA353_104 == NCHAR_TEXT || LA353_104 == NOT2_SYMBOL || LA353_104 == SINGLE_QUOTED_TEXT || LA353_104 == BITWISE_NOT_OPERATOR || LA353_104 == LOGICAL_NOT_OPERATOR || 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 == CHAR_SYMBOL || LA353_104 == CURRENT_USER_SYMBOL || LA353_104 == BIN_NUMBER))
        	            		    {
        	            		        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 == COUNT_SYMBOL || LA353_104 == EXISTS_SYMBOL || LA353_104 == GROUP_CONCAT_SYMBOL || LA353_104 == MAX_SYMBOL || LA353_104 == MIN_SYMBOL || LA353_104 == OPEN_PAR_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 || ((LA353_104 >= AT_AT_SIGN_SYMBOL) && (LA353_104 <= AT_TEXT_SUFFIX)) || ((LA353_104 >= BIT_AND_SYMBOL) && (LA353_104 <= BIT_XOR_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 == 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 == INTERVAL_SYMBOL || LA353_106 == NCHAR_TEXT || LA353_106 == NOT2_SYMBOL || LA353_106 == SINGLE_QUOTED_TEXT || LA353_106 == BITWISE_NOT_OPERATOR || LA353_106 == LOGICAL_NOT_OPERATOR || 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 == CHAR_SYMBOL || LA353_106 == CURRENT_USER_SYMBOL || LA353_106 == BIN_NUMBER))
        	            		    {
        	            		        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 == COUNT_SYMBOL || LA353_106 == EXISTS_SYMBOL || LA353_106 == GROUP_CONCAT_SYMBOL || LA353_106 == MAX_SYMBOL || LA353_106 == MIN_SYMBOL || LA353_106 == OPEN_PAR_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 || ((LA353_106 >= AT_AT_SIGN_SYMBOL) && (LA353_106 <= AT_TEXT_SUFFIX)) || ((LA353_106 >= BIT_AND_SYMBOL) && (LA353_106 <= BIT_XOR_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_568 = LA(3);
        	            				    if ( ((SERVER_VERSION >= 50704 && SERVER_VERSION < 50708)))
        	            				    {
        	            				        alt353=1;
        	            				    }

        	            				}
        	            			}
        	            		    break;

        	            		}

        	            	}
        	                break;

        	            }

        	            switch (alt353)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1406:46: select_option
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_select_option_in_table_factor5844);
        	        	        select_option1018=select_option(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletable_factorEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_option1018.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_factor5848);
        	        select_item_list1019=select_item_list(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_factorEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_item_list1019.tree);

        	        FOLLOWPUSH(FOLLOW_table_expression_in_table_factor5850);
        	        table_expression1020=table_expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_factorEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_expression1020.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1407:4: OPEN_PAR_SYMBOL select_table_factor_union CLOSE_PAR_SYMBOL ( table_alias )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        OPEN_PAR_SYMBOL1021 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_table_factor5855);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_factorEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1021_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1021));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1021_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_select_table_factor_union_in_table_factor5857);
        	        select_table_factor_union1022=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_union1022.tree);

        	        CLOSE_PAR_SYMBOL1023 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_table_factor5859);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_factorEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1023_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1023));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1023_tree);
        	        }

        	        // MySQL.g:1407: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:1407:63: table_alias
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_table_alias_in_table_factor5861);
        	        	        table_alias1024=table_alias(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletable_factorEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_alias1024.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1408:4: table_ref ( use_partition )? ( table_alias )? ( index_hint_list )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_table_ref_in_table_factor5867);
        	        table_ref1025=table_ref(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_factorEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref1025.tree);

        	        // MySQL.g:1408: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:1408:14: use_partition
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_use_partition_in_table_factor5869);
        	        	        use_partition1026=use_partition(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletable_factorEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, use_partition1026.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:1408: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:1408:29: table_alias
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_table_alias_in_table_factor5872);
        	        	        table_alias1027=table_alias(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletable_factorEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_alias1027.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:1408: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:1408:42: index_hint_list
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_index_hint_list_in_table_factor5875);
        	        	        index_hint_list1028=index_hint_list(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletable_factorEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_hint_list1028.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:1411: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_SYMBOL1031;
    MySQLParser_table_reference_list_return table_reference_list1029;
    #undef	RETURN_TYPE_table_reference_list1029
    #define	RETURN_TYPE_table_reference_list1029 MySQLParser_table_reference_list_return

    MySQLParser_order_by_or_limit_return order_by_or_limit1030;
    #undef	RETURN_TYPE_order_by_or_limit1030
    #define	RETURN_TYPE_order_by_or_limit1030 MySQLParser_order_by_or_limit_return

    MySQLParser_union_option_return union_option1032;
    #undef	RETURN_TYPE_union_option1032
    #define	RETURN_TYPE_union_option1032 MySQLParser_union_option_return

    MySQLParser_query_specification_return query_specification1033;
    #undef	RETURN_TYPE_query_specification1033
    #define	RETURN_TYPE_query_specification1033 MySQLParser_query_specification_return

    pANTLR3_BASE_TREE UNION_SYMBOL1031_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    UNION_SYMBOL1031       = NULL;
    table_reference_list1029.tree = NULL;

    order_by_or_limit1030.tree = NULL;

    union_option1032.tree = NULL;

    query_specification1033.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    UNION_SYMBOL1031_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1411:26: ( ( table_reference_list ( order_by_or_limit )? ) ( UNION_SYMBOL ( union_option )? query_specification )* )
        // MySQL.g:1412:2: ( table_reference_list ( order_by_or_limit )? ) ( UNION_SYMBOL ( union_option )? query_specification )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:1412:2: ( table_reference_list ( order_by_or_limit )? )
            // MySQL.g:1412:3: table_reference_list ( order_by_or_limit )?
            {
                FOLLOWPUSH(FOLLOW_table_reference_list_in_select_table_factor_union5886);
                table_reference_list1029=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_list1029.tree);

                // MySQL.g:1412: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:1412:24: order_by_or_limit
                	    {
                	        FOLLOWPUSH(FOLLOW_order_by_or_limit_in_select_table_factor_union5888);
                	        order_by_or_limit1030=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_limit1030.tree);

                	    }
                	    break;

                    }
                }

            }


            // MySQL.g:1412: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:1412:45: UNION_SYMBOL ( union_option )? query_specification
            	    {
            	        UNION_SYMBOL1031 = (pANTLR3_COMMON_TOKEN) MATCHT(UNION_SYMBOL, &FOLLOW_UNION_SYMBOL_in_select_table_factor_union5893);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_table_factor_unionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        UNION_SYMBOL1031_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNION_SYMBOL1031));
            	        ADAPTOR->addChild(ADAPTOR, root_0, UNION_SYMBOL1031_tree);
            	        }

            	        // MySQL.g:1412:58: ( union_option )?
            	        {
            	            int alt360=2;
            	            switch ( LA(1) )
            	            {
            	                case ALL_SYMBOL:
            	                case DISTINCT_SYMBOL:
            	                	{
            	                		alt360=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt360)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1412:58: union_option
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_union_option_in_select_table_factor_union5895);
            	        	        union_option1032=union_option(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleselect_table_factor_unionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, union_option1032.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_query_specification_in_select_table_factor_union5898);
            	        query_specification1033=query_specification(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_table_factor_unionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, query_specification1033.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:1415:1: query_specification : ( SELECT_SYMBOL select_part2_derived table_expression | OPEN_PAR_SYMBOL select_paren_derived 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_SYMBOL1034;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1037;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1039;
    MySQLParser_select_part2_derived_return select_part2_derived1035;
    #undef	RETURN_TYPE_select_part2_derived1035
    #define	RETURN_TYPE_select_part2_derived1035 MySQLParser_select_part2_derived_return

    MySQLParser_table_expression_return table_expression1036;
    #undef	RETURN_TYPE_table_expression1036
    #define	RETURN_TYPE_table_expression1036 MySQLParser_table_expression_return

    MySQLParser_select_paren_derived_return select_paren_derived1038;
    #undef	RETURN_TYPE_select_paren_derived1038
    #define	RETURN_TYPE_select_paren_derived1038 MySQLParser_select_paren_derived_return

    MySQLParser_order_by_or_limit_return order_by_or_limit1040;
    #undef	RETURN_TYPE_order_by_or_limit1040
    #define	RETURN_TYPE_order_by_or_limit1040 MySQLParser_order_by_or_limit_return

    pANTLR3_BASE_TREE SELECT_SYMBOL1034_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1037_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1039_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SELECT_SYMBOL1034       = NULL;
    OPEN_PAR_SYMBOL1037       = NULL;
    CLOSE_PAR_SYMBOL1039       = NULL;
    select_part2_derived1035.tree = NULL;

    table_expression1036.tree = NULL;

    select_paren_derived1038.tree = NULL;

    order_by_or_limit1040.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SELECT_SYMBOL1034_tree   = NULL;
    OPEN_PAR_SYMBOL1037_tree   = NULL;
    CLOSE_PAR_SYMBOL1039_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1415:20: ( SELECT_SYMBOL select_part2_derived table_expression | OPEN_PAR_SYMBOL select_paren_derived 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:1416:2: SELECT_SYMBOL select_part2_derived table_expression
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SELECT_SYMBOL1034 = (pANTLR3_COMMON_TOKEN) MATCHT(SELECT_SYMBOL, &FOLLOW_SELECT_SYMBOL_in_query_specification5909);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulequery_specificationEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SELECT_SYMBOL1034_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SELECT_SYMBOL1034));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SELECT_SYMBOL1034_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_select_part2_derived_in_query_specification5911);
        	        select_part2_derived1035=select_part2_derived(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulequery_specificationEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_part2_derived1035.tree);

        	        FOLLOWPUSH(FOLLOW_table_expression_in_query_specification5913);
        	        table_expression1036=table_expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulequery_specificationEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_expression1036.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1417:4: OPEN_PAR_SYMBOL select_paren_derived CLOSE_PAR_SYMBOL ( order_by_or_limit )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        OPEN_PAR_SYMBOL1037 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_query_specification5918);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulequery_specificationEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1037_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1037));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1037_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_select_paren_derived_in_query_specification5920);
        	        select_paren_derived1038=select_paren_derived(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulequery_specificationEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_paren_derived1038.tree);

        	        CLOSE_PAR_SYMBOL1039 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_query_specification5922);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulequery_specificationEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1039_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1039));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1039_tree);
        	        }

        	        // MySQL.g:1417:58: ( 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:1417:58: order_by_or_limit
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_order_by_or_limit_in_query_specification5924);
        	        	        order_by_or_limit1040=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_limit1040.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 select_paren_derived
 * MySQL.g:1420:1: select_paren_derived : ( SELECT_SYMBOL select_part2_derived table_expression | OPEN_PAR_SYMBOL select_paren_derived CLOSE_PAR_SYMBOL );
 */
static MySQLParser_select_paren_derived_return
select_paren_derived(pMySQLParser ctx)
{
    MySQLParser_select_paren_derived_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    SELECT_SYMBOL1041;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1044;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1046;
    MySQLParser_select_part2_derived_return select_part2_derived1042;
    #undef	RETURN_TYPE_select_part2_derived1042
    #define	RETURN_TYPE_select_part2_derived1042 MySQLParser_select_part2_derived_return

    MySQLParser_table_expression_return table_expression1043;
    #undef	RETURN_TYPE_table_expression1043
    #define	RETURN_TYPE_table_expression1043 MySQLParser_table_expression_return

    MySQLParser_select_paren_derived_return select_paren_derived1045;
    #undef	RETURN_TYPE_select_paren_derived1045
    #define	RETURN_TYPE_select_paren_derived1045 MySQLParser_select_paren_derived_return

    pANTLR3_BASE_TREE SELECT_SYMBOL1041_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1044_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1046_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SELECT_SYMBOL1041       = NULL;
    OPEN_PAR_SYMBOL1044       = NULL;
    CLOSE_PAR_SYMBOL1046       = NULL;
    select_part2_derived1042.tree = NULL;

    table_expression1043.tree = NULL;

    select_paren_derived1045.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SELECT_SYMBOL1041_tree   = NULL;
    OPEN_PAR_SYMBOL1044_tree   = NULL;
    CLOSE_PAR_SYMBOL1046_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1420:21: ( SELECT_SYMBOL select_part2_derived table_expression | OPEN_PAR_SYMBOL select_paren_derived CLOSE_PAR_SYMBOL )

            ANTLR3_UINT32 alt364;

            alt364=2;

            switch ( LA(1) )
            {
            case SELECT_SYMBOL:
            	{
            		alt364=1;
            	}
                break;
            case OPEN_PAR_SYMBOL:
            	{
            		alt364=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 364;
                EXCEPTION->state        = 0;


                goto ruleselect_paren_derivedEx;

            }

            switch (alt364)
            {
        	case 1:
        	    // MySQL.g:1421:2: SELECT_SYMBOL select_part2_derived table_expression
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SELECT_SYMBOL1041 = (pANTLR3_COMMON_TOKEN) MATCHT(SELECT_SYMBOL, &FOLLOW_SELECT_SYMBOL_in_select_paren_derived5934);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_paren_derivedEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SELECT_SYMBOL1041_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SELECT_SYMBOL1041));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SELECT_SYMBOL1041_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_select_part2_derived_in_select_paren_derived5936);
        	        select_part2_derived1042=select_part2_derived(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_paren_derivedEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_part2_derived1042.tree);

        	        FOLLOWPUSH(FOLLOW_table_expression_in_select_paren_derived5938);
        	        table_expression1043=table_expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_paren_derivedEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_expression1043.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1422:4: OPEN_PAR_SYMBOL select_paren_derived CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        OPEN_PAR_SYMBOL1044 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_select_paren_derived5943);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_paren_derivedEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1044_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1044));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1044_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_select_paren_derived_in_select_paren_derived5945);
        	        select_paren_derived1045=select_paren_derived(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_paren_derivedEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_paren_derived1045.tree);

        	        CLOSE_PAR_SYMBOL1046 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_select_paren_derived5947);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_paren_derivedEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1046_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1046));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1046_tree);
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleselect_paren_derivedEx; /* Prevent compiler warnings */
    ruleselect_paren_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_paren_derived */

/**
 * $ANTLR start join_table
 * MySQL.g:1425: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    set1047;
    pANTLR3_COMMON_TOKEN    JOIN_SYMBOL1048;
    pANTLR3_COMMON_TOKEN    STRAIGHT_JOIN_SYMBOL1051;
    pANTLR3_COMMON_TOKEN    ON_SYMBOL1053;
    pANTLR3_COMMON_TOKEN    set1055;
    pANTLR3_COMMON_TOKEN    OUTER_SYMBOL1056;
    pANTLR3_COMMON_TOKEN    JOIN_SYMBOL1057;
    pANTLR3_COMMON_TOKEN    NATURAL_SYMBOL1060;
    pANTLR3_COMMON_TOKEN    set1061;
    pANTLR3_COMMON_TOKEN    OUTER_SYMBOL1062;
    pANTLR3_COMMON_TOKEN    JOIN_SYMBOL1063;
    MySQLParser_table_reference_return table_reference1049;
    #undef	RETURN_TYPE_table_reference1049
    #define	RETURN_TYPE_table_reference1049 MySQLParser_table_reference_return

    MySQLParser_join_condition_return join_condition1050;
    #undef	RETURN_TYPE_join_condition1050
    #define	RETURN_TYPE_join_condition1050 MySQLParser_join_condition_return

    MySQLParser_table_factor_return table_factor1052;
    #undef	RETURN_TYPE_table_factor1052
    #define	RETURN_TYPE_table_factor1052 MySQLParser_table_factor_return

    MySQLParser_expression_return expression1054;
    #undef	RETURN_TYPE_expression1054
    #define	RETURN_TYPE_expression1054 MySQLParser_expression_return

    MySQLParser_table_reference_return table_reference1058;
    #undef	RETURN_TYPE_table_reference1058
    #define	RETURN_TYPE_table_reference1058 MySQLParser_table_reference_return

    MySQLParser_join_condition_return join_condition1059;
    #undef	RETURN_TYPE_join_condition1059
    #define	RETURN_TYPE_join_condition1059 MySQLParser_join_condition_return

    MySQLParser_table_factor_return table_factor1064;
    #undef	RETURN_TYPE_table_factor1064
    #define	RETURN_TYPE_table_factor1064 MySQLParser_table_factor_return

    pANTLR3_BASE_TREE set1047_tree;
    pANTLR3_BASE_TREE JOIN_SYMBOL1048_tree;
    pANTLR3_BASE_TREE STRAIGHT_JOIN_SYMBOL1051_tree;
    pANTLR3_BASE_TREE ON_SYMBOL1053_tree;
    pANTLR3_BASE_TREE set1055_tree;
    pANTLR3_BASE_TREE OUTER_SYMBOL1056_tree;
    pANTLR3_BASE_TREE JOIN_SYMBOL1057_tree;
    pANTLR3_BASE_TREE NATURAL_SYMBOL1060_tree;
    pANTLR3_BASE_TREE set1061_tree;
    pANTLR3_BASE_TREE OUTER_SYMBOL1062_tree;
    pANTLR3_BASE_TREE JOIN_SYMBOL1063_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1047       = NULL;
    JOIN_SYMBOL1048       = NULL;
    STRAIGHT_JOIN_SYMBOL1051       = NULL;
    ON_SYMBOL1053       = NULL;
    set1055       = NULL;
    OUTER_SYMBOL1056       = NULL;
    JOIN_SYMBOL1057       = NULL;
    NATURAL_SYMBOL1060       = NULL;
    set1061       = NULL;
    OUTER_SYMBOL1062       = NULL;
    JOIN_SYMBOL1063       = NULL;
    table_reference1049.tree = NULL;

    join_condition1050.tree = NULL;

    table_factor1052.tree = NULL;

    expression1054.tree = NULL;

    table_reference1058.tree = NULL;

    join_condition1059.tree = NULL;

    table_factor1064.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1047_tree   = NULL;
    JOIN_SYMBOL1048_tree   = NULL;
    STRAIGHT_JOIN_SYMBOL1051_tree   = NULL;
    ON_SYMBOL1053_tree   = NULL;
    set1055_tree   = NULL;
    OUTER_SYMBOL1056_tree   = NULL;
    JOIN_SYMBOL1057_tree   = NULL;
    NATURAL_SYMBOL1060_tree   = NULL;
    set1061_tree   = NULL;
    OUTER_SYMBOL1062_tree   = NULL;
    JOIN_SYMBOL1063_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1425: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 alt371;

            alt371=4;

            switch ( LA(1) )
            {
            case CROSS_SYMBOL:
            case INNER_SYMBOL:
            case JOIN_SYMBOL:
            	{
            		alt371=1;
            	}
                break;
            case STRAIGHT_JOIN_SYMBOL:
            	{
            		alt371=2;
            	}
                break;
            case LEFT_SYMBOL:
            case RIGHT_SYMBOL:
            	{
            		alt371=3;
            	}
                break;
            case NATURAL_SYMBOL:
            	{
            		alt371=4;
            	}
                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_tableEx;

            }

            switch (alt371)
            {
        	case 1:
        	    // MySQL.g:1426:2: ( INNER_SYMBOL | CROSS_SYMBOL )? JOIN_SYMBOL table_reference ( options {greedy=true; } : join_condition )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:1426:2: ( INNER_SYMBOL | CROSS_SYMBOL )?
        	        {
        	            int alt365=2;
        	            switch ( LA(1) )
        	            {
        	                case CROSS_SYMBOL:
        	                case INNER_SYMBOL:
        	                	{
        	                		alt365=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt365)
        	            {
        	        	case 1:
        	        	    // MySQL.g:
        	        	    {
        	        	        set1047=(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, set1047))
        	        	            );
        	        	            PERRORRECOVERY=ANTLR3_FALSE;
        	        	            FAILEDFLAG=ANTLR3_FALSE;

        	        	        }
        	        	        else
        	        	        {
        	        	            if (BACKTRACKING>0)
        	        	            {
        	        	                FAILEDFLAG = ANTLR3_TRUE;
        	        	                return retval;
        	        	            }

        	        	            CONSTRUCTEX();
        	        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
        	        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
        	        	            EXCEPTION->expectingSet = NULL;

        	        	            goto rulejoin_tableEx;
        	        	        }


        	        	    }
        	        	    break;

        	            }
        	        }

        	        JOIN_SYMBOL1048 = (pANTLR3_COMMON_TOKEN) MATCHT(JOIN_SYMBOL, &FOLLOW_JOIN_SYMBOL_in_join_table5966);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulejoin_tableEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        JOIN_SYMBOL1048_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, JOIN_SYMBOL1048));
        	        ADAPTOR->addChild(ADAPTOR, root_0, JOIN_SYMBOL1048_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_table_reference_in_join_table5968);
        	        table_reference1049=table_reference(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulejoin_tableEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_reference1049.tree);

        	        // MySQL.g:1426:61: ( options {greedy=true; } : join_condition )?
        	        {
        	            int alt366=2;
        	            switch ( LA(1) )
        	            {
        	                case ON_SYMBOL:
        	                	{
        	                		alt366=1;
        	                	}
        	                    break;
        	                case USING_SYMBOL:
        	                	{
        	                		alt366=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt366)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1426:89: join_condition
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_join_condition_in_join_table5982);
        	        	        join_condition1050=join_condition(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulejoin_tableEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, join_condition1050.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1427:4: STRAIGHT_JOIN_SYMBOL table_factor ( options {greedy=true; } : ON_SYMBOL expression )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        STRAIGHT_JOIN_SYMBOL1051 = (pANTLR3_COMMON_TOKEN) MATCHT(STRAIGHT_JOIN_SYMBOL, &FOLLOW_STRAIGHT_JOIN_SYMBOL_in_join_table5989);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulejoin_tableEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        STRAIGHT_JOIN_SYMBOL1051_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STRAIGHT_JOIN_SYMBOL1051));
        	        ADAPTOR->addChild(ADAPTOR, root_0, STRAIGHT_JOIN_SYMBOL1051_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_table_factor_in_join_table5991);
        	        table_factor1052=table_factor(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulejoin_tableEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_factor1052.tree);

        	        // MySQL.g:1427:38: ( options {greedy=true; } : ON_SYMBOL expression )?
        	        {
        	            int alt367=2;
        	            switch ( LA(1) )
        	            {
        	                case ON_SYMBOL:
        	                	{
        	                		alt367=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt367)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1427:66: ON_SYMBOL expression
        	        	    {
        	        	        ON_SYMBOL1053 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_join_table6005);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulejoin_tableEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        ON_SYMBOL1053_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ON_SYMBOL1053));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, ON_SYMBOL1053_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_expression_in_join_table6007);
        	        	        expression1054=expression(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulejoin_tableEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1054.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1428:4: ( LEFT_SYMBOL | RIGHT_SYMBOL ) ( OUTER_SYMBOL )? JOIN_SYMBOL table_reference join_condition
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        set1055=(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, set1055))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>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:1428:33: ( OUTER_SYMBOL )?
        	        {
        	            int alt368=2;
        	            switch ( LA(1) )
        	            {
        	                case OUTER_SYMBOL:
        	                	{
        	                		alt368=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt368)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1428:33: OUTER_SYMBOL
        	        	    {
        	        	        OUTER_SYMBOL1056 = (pANTLR3_COMMON_TOKEN) MATCHT(OUTER_SYMBOL, &FOLLOW_OUTER_SYMBOL_in_join_table6022);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulejoin_tableEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        OUTER_SYMBOL1056_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OUTER_SYMBOL1056));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, OUTER_SYMBOL1056_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        JOIN_SYMBOL1057 = (pANTLR3_COMMON_TOKEN) MATCHT(JOIN_SYMBOL, &FOLLOW_JOIN_SYMBOL_in_join_table6025);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulejoin_tableEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        JOIN_SYMBOL1057_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, JOIN_SYMBOL1057));
        	        ADAPTOR->addChild(ADAPTOR, root_0, JOIN_SYMBOL1057_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_table_reference_in_join_table6027);
        	        table_reference1058=table_reference(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulejoin_tableEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_reference1058.tree);

        	        FOLLOWPUSH(FOLLOW_join_condition_in_join_table6029);
        	        join_condition1059=join_condition(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulejoin_tableEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, join_condition1059.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1429:4: NATURAL_SYMBOL ( ( LEFT_SYMBOL | RIGHT_SYMBOL ) ( OUTER_SYMBOL )? )? JOIN_SYMBOL table_factor
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NATURAL_SYMBOL1060 = (pANTLR3_COMMON_TOKEN) MATCHT(NATURAL_SYMBOL, &FOLLOW_NATURAL_SYMBOL_in_join_table6034);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulejoin_tableEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NATURAL_SYMBOL1060_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NATURAL_SYMBOL1060));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NATURAL_SYMBOL1060_tree);
        	        }

        	        // MySQL.g:1429:19: ( ( LEFT_SYMBOL | RIGHT_SYMBOL ) ( OUTER_SYMBOL )? )?
        	        {
        	            int alt370=2;
        	            switch ( LA(1) )
        	            {
        	                case LEFT_SYMBOL:
        	                case RIGHT_SYMBOL:
        	                	{
        	                		alt370=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt370)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1429:20: ( LEFT_SYMBOL | RIGHT_SYMBOL ) ( OUTER_SYMBOL )?
        	        	    {
        	        	        set1061=(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, set1061))
        	        	            );
        	        	            PERRORRECOVERY=ANTLR3_FALSE;
        	        	            FAILEDFLAG=ANTLR3_FALSE;

        	        	        }
        	        	        else
        	        	        {
        	        	            if (BACKTRACKING>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:1429:49: ( OUTER_SYMBOL )?
        	        	        {
        	        	            int alt369=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	                case OUTER_SYMBOL:
        	        	                	{
        	        	                		alt369=1;
        	        	                	}
        	        	                    break;
        	        	            }

        	        	            switch (alt369)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:1429:49: OUTER_SYMBOL
        	        	        	    {
        	        	        	        OUTER_SYMBOL1062 = (pANTLR3_COMMON_TOKEN) MATCHT(OUTER_SYMBOL, &FOLLOW_OUTER_SYMBOL_in_join_table6045);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulejoin_tableEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        OUTER_SYMBOL1062_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OUTER_SYMBOL1062));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, OUTER_SYMBOL1062_tree);
        	        	        	        }

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        JOIN_SYMBOL1063 = (pANTLR3_COMMON_TOKEN) MATCHT(JOIN_SYMBOL, &FOLLOW_JOIN_SYMBOL_in_join_table6050);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulejoin_tableEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        JOIN_SYMBOL1063_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, JOIN_SYMBOL1063));
        	        ADAPTOR->addChild(ADAPTOR, root_0, JOIN_SYMBOL1063_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_table_factor_in_join_table6052);
        	        table_factor1064=table_factor(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulejoin_tableEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_factor1064.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:1432: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_SYMBOL1065;
    pANTLR3_COMMON_TOKEN    USING_SYMBOL1067;
    MySQLParser_expression_return expression1066;
    #undef	RETURN_TYPE_expression1066
    #define	RETURN_TYPE_expression1066 MySQLParser_expression_return

    MySQLParser_identifier_list_with_parentheses_return identifier_list_with_parentheses1068;
    #undef	RETURN_TYPE_identifier_list_with_parentheses1068
    #define	RETURN_TYPE_identifier_list_with_parentheses1068 MySQLParser_identifier_list_with_parentheses_return

    pANTLR3_BASE_TREE ON_SYMBOL1065_tree;
    pANTLR3_BASE_TREE USING_SYMBOL1067_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ON_SYMBOL1065       = NULL;
    USING_SYMBOL1067       = NULL;
    expression1066.tree = NULL;

    identifier_list_with_parentheses1068.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ON_SYMBOL1065_tree   = NULL;
    USING_SYMBOL1067_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1432:15: ( ON_SYMBOL expression | USING_SYMBOL identifier_list_with_parentheses )

            ANTLR3_UINT32 alt372;

            alt372=2;

            switch ( LA(1) )
            {
            case ON_SYMBOL:
            	{
            		alt372=1;
            	}
                break;
            case USING_SYMBOL:
            	{
            		alt372=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 372;
                EXCEPTION->state        = 0;


                goto rulejoin_conditionEx;

            }

            switch (alt372)
            {
        	case 1:
        	    // MySQL.g:1433:2: ON_SYMBOL expression
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ON_SYMBOL1065 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_join_condition6061);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulejoin_conditionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ON_SYMBOL1065_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ON_SYMBOL1065));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ON_SYMBOL1065_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_join_condition6063);
        	        expression1066=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulejoin_conditionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1066.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1434:4: USING_SYMBOL identifier_list_with_parentheses
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        USING_SYMBOL1067 = (pANTLR3_COMMON_TOKEN) MATCHT(USING_SYMBOL, &FOLLOW_USING_SYMBOL_in_join_condition6068);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulejoin_conditionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        USING_SYMBOL1067_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USING_SYMBOL1067));
        	        ADAPTOR->addChild(ADAPTOR, root_0, USING_SYMBOL1067_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_identifier_list_with_parentheses_in_join_condition6070);
        	        identifier_list_with_parentheses1068=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_parentheses1068.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:1437: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_SYMBOL1069;
    MySQLParser_union_option_return union_option1070;
    #undef	RETURN_TYPE_union_option1070
    #define	RETURN_TYPE_union_option1070 MySQLParser_union_option_return

    MySQLParser_select_statement_return select_statement1071;
    #undef	RETURN_TYPE_select_statement1071
    #define	RETURN_TYPE_select_statement1071 MySQLParser_select_statement_return

    pANTLR3_BASE_TREE UNION_SYMBOL1069_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    UNION_SYMBOL1069       = NULL;
    union_option1070.tree = NULL;

    select_statement1071.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    UNION_SYMBOL1069_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1437:13: ( UNION_SYMBOL ^ ( union_option )? select_statement )
        // MySQL.g:1438:3: UNION_SYMBOL ^ ( union_option )? select_statement
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            UNION_SYMBOL1069 = (pANTLR3_COMMON_TOKEN) MATCHT(UNION_SYMBOL, &FOLLOW_UNION_SYMBOL_in_union_clause6080);
            if  (HASEXCEPTION())
            {
                goto ruleunion_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            UNION_SYMBOL1069_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNION_SYMBOL1069))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, UNION_SYMBOL1069_tree, root_0));
            }

            // MySQL.g:1438:17: ( union_option )?
            {
                int alt373=2;
                switch ( LA(1) )
                {
                    case ALL_SYMBOL:
                    case DISTINCT_SYMBOL:
                    	{
                    		alt373=1;
                    	}
                        break;
                }

                switch (alt373)
                {
            	case 1:
            	    // MySQL.g:1438:17: union_option
            	    {
            	        FOLLOWPUSH(FOLLOW_union_option_in_union_clause6083);
            	        union_option1070=union_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleunion_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, union_option1070.tree);

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_select_statement_in_union_clause6086);
            select_statement1071=select_statement(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleunion_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_statement1071.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:1441: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    set1072;

    pANTLR3_BASE_TREE set1072_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1072       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1072_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1441:13: ( DISTINCT_SYMBOL | ALL_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set1072=(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, set1072))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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:1446: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_clause1073;
    #undef	RETURN_TYPE_union_clause1073
    #define	RETURN_TYPE_union_clause1073 MySQLParser_union_clause_return

    MySQLParser_order_by_or_limit_return order_by_or_limit1074;
    #undef	RETURN_TYPE_order_by_or_limit1074
    #define	RETURN_TYPE_order_by_or_limit1074 MySQLParser_order_by_or_limit_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    union_clause1073.tree = NULL;

    order_by_or_limit1074.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1446:27: ( union_clause | order_by_or_limit )

            ANTLR3_UINT32 alt374;

            alt374=2;

            switch ( LA(1) )
            {
            case UNION_SYMBOL:
            	{
            		alt374=1;
            	}
                break;
            case LIMIT_SYMBOL:
            case ORDER_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 ruleunion_or_order_by_or_limitEx;

            }

            switch (alt374)
            {
        	case 1:
        	    // MySQL.g:1447:2: union_clause
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_union_clause_in_union_or_order_by_or_limit6111);
        	        union_clause1073=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_clause1073.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1448: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_limit6116);
        	        order_by_or_limit1074=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_limit1074.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:1451: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_SYMBOL1075;
    pANTLR3_COMMON_TOKEN    UPDATE_SYMBOL1076;
    pANTLR3_COMMON_TOKEN    LOCK_SYMBOL1077;
    pANTLR3_COMMON_TOKEN    IN_SYMBOL1078;
    pANTLR3_COMMON_TOKEN    SHARE_SYMBOL1079;
    pANTLR3_COMMON_TOKEN    MODE_SYMBOL1080;

    pANTLR3_BASE_TREE FOR_SYMBOL1075_tree;
    pANTLR3_BASE_TREE UPDATE_SYMBOL1076_tree;
    pANTLR3_BASE_TREE LOCK_SYMBOL1077_tree;
    pANTLR3_BASE_TREE IN_SYMBOL1078_tree;
    pANTLR3_BASE_TREE SHARE_SYMBOL1079_tree;
    pANTLR3_BASE_TREE MODE_SYMBOL1080_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    FOR_SYMBOL1075       = NULL;
    UPDATE_SYMBOL1076       = NULL;
    LOCK_SYMBOL1077       = NULL;
    IN_SYMBOL1078       = NULL;
    SHARE_SYMBOL1079       = NULL;
    MODE_SYMBOL1080       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    FOR_SYMBOL1075_tree   = NULL;
    UPDATE_SYMBOL1076_tree   = NULL;
    LOCK_SYMBOL1077_tree   = NULL;
    IN_SYMBOL1078_tree   = NULL;
    SHARE_SYMBOL1079_tree   = NULL;
    MODE_SYMBOL1080_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1451:17: ( FOR_SYMBOL UPDATE_SYMBOL | LOCK_SYMBOL IN_SYMBOL SHARE_SYMBOL MODE_SYMBOL )

            ANTLR3_UINT32 alt375;

            alt375=2;

            switch ( LA(1) )
            {
            case FOR_SYMBOL:
            	{
            		alt375=1;
            	}
                break;
            case LOCK_SYMBOL:
            	{
            		alt375=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 375;
                EXCEPTION->state        = 0;


                goto ruleselect_lock_typeEx;

            }

            switch (alt375)
            {
        	case 1:
        	    // MySQL.g:1452:2: FOR_SYMBOL UPDATE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOR_SYMBOL1075 = (pANTLR3_COMMON_TOKEN) MATCHT(FOR_SYMBOL, &FOLLOW_FOR_SYMBOL_in_select_lock_type6125);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_lock_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FOR_SYMBOL1075_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOR_SYMBOL1075));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FOR_SYMBOL1075_tree);
        	        }

        	        UPDATE_SYMBOL1076 = (pANTLR3_COMMON_TOKEN) MATCHT(UPDATE_SYMBOL, &FOLLOW_UPDATE_SYMBOL_in_select_lock_type6127);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_lock_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        UPDATE_SYMBOL1076_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UPDATE_SYMBOL1076));
        	        ADAPTOR->addChild(ADAPTOR, root_0, UPDATE_SYMBOL1076_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1453:4: LOCK_SYMBOL IN_SYMBOL SHARE_SYMBOL MODE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        LOCK_SYMBOL1077 = (pANTLR3_COMMON_TOKEN) MATCHT(LOCK_SYMBOL, &FOLLOW_LOCK_SYMBOL_in_select_lock_type6132);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_lock_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LOCK_SYMBOL1077_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOCK_SYMBOL1077));
        	        ADAPTOR->addChild(ADAPTOR, root_0, LOCK_SYMBOL1077_tree);
        	        }

        	        IN_SYMBOL1078 = (pANTLR3_COMMON_TOKEN) MATCHT(IN_SYMBOL, &FOLLOW_IN_SYMBOL_in_select_lock_type6134);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_lock_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        IN_SYMBOL1078_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IN_SYMBOL1078));
        	        ADAPTOR->addChild(ADAPTOR, root_0, IN_SYMBOL1078_tree);
        	        }

        	        SHARE_SYMBOL1079 = (pANTLR3_COMMON_TOKEN) MATCHT(SHARE_SYMBOL, &FOLLOW_SHARE_SYMBOL_in_select_lock_type6136);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_lock_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SHARE_SYMBOL1079_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SHARE_SYMBOL1079));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SHARE_SYMBOL1079_tree);
        	        }

        	        MODE_SYMBOL1080 = (pANTLR3_COMMON_TOKEN) MATCHT(MODE_SYMBOL, &FOLLOW_MODE_SYMBOL_in_select_lock_type6138);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_lock_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MODE_SYMBOL1080_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MODE_SYMBOL1080));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MODE_SYMBOL1080_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:1456: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    set1081;
    MySQLParser_identifier_return identifier1082;
    #undef	RETURN_TYPE_identifier1082
    #define	RETURN_TYPE_identifier1082 MySQLParser_identifier_return

    pANTLR3_BASE_TREE set1081_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1081       = NULL;
    identifier1082.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1081_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1456:12: ( ( AS_SYMBOL | EQUAL_OPERATOR )? identifier )
        // MySQL.g:1457:2: ( AS_SYMBOL | EQUAL_OPERATOR )? identifier
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:1457:2: ( AS_SYMBOL | EQUAL_OPERATOR )?
            {
                int alt376=2;
                switch ( LA(1) )
                {
                    case AS_SYMBOL:
                    case EQUAL_OPERATOR:
                    	{
                    		alt376=1;
                    	}
                        break;
                }

                switch (alt376)
                {
            	case 1:
            	    // MySQL.g:
            	    {
            	        set1081=(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, set1081))
            	            );
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

            	        }
            	        else
            	        {
            	            if (BACKTRACKING>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_alias6156);
            identifier1082=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruletable_aliasEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier1082.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:1460: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_SYMBOL1084;
    MySQLParser_index_hint_return index_hint1083;
    #undef	RETURN_TYPE_index_hint1083
    #define	RETURN_TYPE_index_hint1083 MySQLParser_index_hint_return

    MySQLParser_index_hint_return index_hint1085;
    #undef	RETURN_TYPE_index_hint1085
    #define	RETURN_TYPE_index_hint1085 MySQLParser_index_hint_return

    pANTLR3_BASE_TREE COMMA_SYMBOL1084_tree;
    pANTLR3_REWRITE_RULE_TOKEN_STREAM stream_COMMA_SYMBOL;
    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_index_hint;
    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL1084       = NULL;
    index_hint1083.tree = NULL;

    index_hint1085.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL1084_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:1460:16: ( index_hint ( COMMA_SYMBOL index_hint )* -> ^( INDEX_HINT_LIST_TOKEN index_hint ( COMMA_SYMBOL index_hint )* ) )
        // MySQL.g:1461:2: index_hint ( COMMA_SYMBOL index_hint )*
        {
            FOLLOWPUSH(FOLLOW_index_hint_in_index_hint_list6165);
            index_hint1083=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_hint1083.tree, NULL); }

            // MySQL.g:1461:13: ( COMMA_SYMBOL index_hint )*

            for (;;)
            {
                int alt377=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		switch ( LA(2) )
                		{
                		case FORCE_SYMBOL:
                		case IGNORE_SYMBOL:
                		case USE_SYMBOL:
                			{
                				alt377=1;
                			}
                		    break;

                		}

                	}
                    break;

                }

                switch (alt377)
                {
            	case 1:
            	    // MySQL.g:1461:14: COMMA_SYMBOL index_hint
            	    {
            	        COMMA_SYMBOL1084 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_index_hint_list6168);
            	        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_SYMBOL1084, NULL); }


            	        FOLLOWPUSH(FOLLOW_index_hint_in_index_hint_list6170);
            	        index_hint1085=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_hint1085.tree, NULL); }

            	    }
            	    break;

            	default:
            	    goto loop377;	/* break out of the loop */
            	    break;
                }
            }
            loop377: ; /* Jump out to here if this rule does not match */


            /* AST REWRITE
             * elements          : index_hint, index_hint, COMMA_SYMBOL
             * token labels      : 
             * rule labels       : retval
             * token list labels : 
             * rule list labels  : 
             */
            if ( BACKTRACKING==0 ) 

            {
            	pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_retval;

            	stream_retval=antlr3RewriteRuleSubtreeStreamNewAEE(ADAPTOR,  RECOGNIZER, (pANTLR3_UINT8)"token retval", retval.tree != NULL ? retval.tree : NULL);

            	root_0			    = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));
            	retval.tree    = root_0;
            	// 1461:40: -> ^( INDEX_HINT_LIST_TOKEN index_hint ( COMMA_SYMBOL index_hint )* )
            	{
            	    // MySQL.g:1461: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:1461: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:1464: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_SYMBOL1089;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1091;
    pANTLR3_COMMON_TOKEN    USE_SYMBOL1092;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1095;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1097;
    MySQLParser_index_hint_type_return index_hint_type1086;
    #undef	RETURN_TYPE_index_hint_type1086
    #define	RETURN_TYPE_index_hint_type1086 MySQLParser_index_hint_type_return

    MySQLParser_key_or_index_return key_or_index1087;
    #undef	RETURN_TYPE_key_or_index1087
    #define	RETURN_TYPE_key_or_index1087 MySQLParser_key_or_index_return

    MySQLParser_index_hint_clause_return index_hint_clause1088;
    #undef	RETURN_TYPE_index_hint_clause1088
    #define	RETURN_TYPE_index_hint_clause1088 MySQLParser_index_hint_clause_return

    MySQLParser_index_list_return index_list1090;
    #undef	RETURN_TYPE_index_list1090
    #define	RETURN_TYPE_index_list1090 MySQLParser_index_list_return

    MySQLParser_key_or_index_return key_or_index1093;
    #undef	RETURN_TYPE_key_or_index1093
    #define	RETURN_TYPE_key_or_index1093 MySQLParser_key_or_index_return

    MySQLParser_index_hint_clause_return index_hint_clause1094;
    #undef	RETURN_TYPE_index_hint_clause1094
    #define	RETURN_TYPE_index_hint_clause1094 MySQLParser_index_hint_clause_return

    MySQLParser_index_list_return index_list1096;
    #undef	RETURN_TYPE_index_list1096
    #define	RETURN_TYPE_index_list1096 MySQLParser_index_list_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1089_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1091_tree;
    pANTLR3_BASE_TREE USE_SYMBOL1092_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1095_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1097_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL1089       = NULL;
    CLOSE_PAR_SYMBOL1091       = NULL;
    USE_SYMBOL1092       = NULL;
    OPEN_PAR_SYMBOL1095       = NULL;
    CLOSE_PAR_SYMBOL1097       = NULL;
    index_hint_type1086.tree = NULL;

    key_or_index1087.tree = NULL;

    index_hint_clause1088.tree = NULL;

    index_list1090.tree = NULL;

    key_or_index1093.tree = NULL;

    index_hint_clause1094.tree = NULL;

    index_list1096.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL1089_tree   = NULL;
    CLOSE_PAR_SYMBOL1091_tree   = NULL;
    USE_SYMBOL1092_tree   = NULL;
    OPEN_PAR_SYMBOL1095_tree   = NULL;
    CLOSE_PAR_SYMBOL1097_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1464: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 alt381;

            alt381=2;

            switch ( LA(1) )
            {
            case FORCE_SYMBOL:
            case IGNORE_SYMBOL:
            	{
            		alt381=1;
            	}
                break;
            case USE_SYMBOL:
            	{
            		alt381=2;
            	}
                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_hintEx;

            }

            switch (alt381)
            {
        	case 1:
        	    // MySQL.g:1465: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_hint6196);
        	        index_hint_type1086=index_hint_type(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleindex_hintEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_hint_type1086.tree);

        	        FOLLOWPUSH(FOLLOW_key_or_index_in_index_hint6198);
        	        key_or_index1087=key_or_index(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleindex_hintEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, key_or_index1087.tree);

        	        // MySQL.g:1465:31: ( index_hint_clause )?
        	        {
        	            int alt378=2;
        	            switch ( LA(1) )
        	            {
        	                case FOR_SYMBOL:
        	                	{
        	                		alt378=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt378)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1465:31: index_hint_clause
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_index_hint_clause_in_index_hint6200);
        	        	        index_hint_clause1088=index_hint_clause(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleindex_hintEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_hint_clause1088.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        OPEN_PAR_SYMBOL1089 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_index_hint6203);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleindex_hintEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1089_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1089));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1089_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_index_list_in_index_hint6205);
        	        index_list1090=index_list(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleindex_hintEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_list1090.tree);

        	        CLOSE_PAR_SYMBOL1091 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_index_hint6207);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleindex_hintEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1091_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1091));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1091_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1466: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_SYMBOL1092 = (pANTLR3_COMMON_TOKEN) MATCHT(USE_SYMBOL, &FOLLOW_USE_SYMBOL_in_index_hint6212);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleindex_hintEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        USE_SYMBOL1092_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USE_SYMBOL1092));
        	        ADAPTOR->addChild(ADAPTOR, root_0, USE_SYMBOL1092_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_key_or_index_in_index_hint6214);
        	        key_or_index1093=key_or_index(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleindex_hintEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, key_or_index1093.tree);

        	        // MySQL.g:1466:28: ( index_hint_clause )?
        	        {
        	            int alt379=2;
        	            switch ( LA(1) )
        	            {
        	                case FOR_SYMBOL:
        	                	{
        	                		alt379=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt379)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1466:28: index_hint_clause
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_index_hint_clause_in_index_hint6216);
        	        	        index_hint_clause1094=index_hint_clause(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleindex_hintEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_hint_clause1094.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        OPEN_PAR_SYMBOL1095 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_index_hint6219);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleindex_hintEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1095_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1095));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1095_tree);
        	        }

        	        // MySQL.g:1466:63: ( index_list )?
        	        {
        	            int alt380=2;
        	            {
        	                int LA380_0 = LA(1);
        	                if ( (((LA380_0 >= ACCOUNT_SYMBOL) && (LA380_0 <= YEAR_SYMBOL)) || LA380_0 == PRIMARY_SYMBOL || LA380_0 == BACK_TICK_QUOTED_ID || LA380_0 == DOUBLE_QUOTED_TEXT || LA380_0 == IDENTIFIER))
        	                {
        	                    alt380=1;
        	                }
        	            }
        	            switch (alt380)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1466:63: index_list
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_index_list_in_index_hint6221);
        	        	        index_list1096=index_list(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleindex_hintEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_list1096.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        CLOSE_PAR_SYMBOL1097 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_index_hint6224);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleindex_hintEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1097_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1097));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1097_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:1469: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    set1098;

    pANTLR3_BASE_TREE set1098_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1098       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1098_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1469:16: ( FORCE_SYMBOL | IGNORE_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set1098=(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, set1098))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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:1474: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    set1099;

    pANTLR3_BASE_TREE set1099_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1099       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1099_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1474:13: ( KEY_SYMBOL | INDEX_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set1099=(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, set1099))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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:1479: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_SYMBOL1100;
    pANTLR3_COMMON_TOKEN    JOIN_SYMBOL1101;
    pANTLR3_COMMON_TOKEN    ORDER_SYMBOL1102;
    pANTLR3_COMMON_TOKEN    BY_SYMBOL1103;
    pANTLR3_COMMON_TOKEN    GROUP_SYMBOL1104;
    pANTLR3_COMMON_TOKEN    BY_SYMBOL1105;

    pANTLR3_BASE_TREE FOR_SYMBOL1100_tree;
    pANTLR3_BASE_TREE JOIN_SYMBOL1101_tree;
    pANTLR3_BASE_TREE ORDER_SYMBOL1102_tree;
    pANTLR3_BASE_TREE BY_SYMBOL1103_tree;
    pANTLR3_BASE_TREE GROUP_SYMBOL1104_tree;
    pANTLR3_BASE_TREE BY_SYMBOL1105_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    FOR_SYMBOL1100       = NULL;
    JOIN_SYMBOL1101       = NULL;
    ORDER_SYMBOL1102       = NULL;
    BY_SYMBOL1103       = NULL;
    GROUP_SYMBOL1104       = NULL;
    BY_SYMBOL1105       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    FOR_SYMBOL1100_tree   = NULL;
    JOIN_SYMBOL1101_tree   = NULL;
    ORDER_SYMBOL1102_tree   = NULL;
    BY_SYMBOL1103_tree   = NULL;
    GROUP_SYMBOL1104_tree   = NULL;
    BY_SYMBOL1105_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1479:18: ( FOR_SYMBOL ( JOIN_SYMBOL | ORDER_SYMBOL BY_SYMBOL | GROUP_SYMBOL BY_SYMBOL ) )
        // MySQL.g:1480:2: FOR_SYMBOL ( JOIN_SYMBOL | ORDER_SYMBOL BY_SYMBOL | GROUP_SYMBOL BY_SYMBOL )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOR_SYMBOL1100 = (pANTLR3_COMMON_TOKEN) MATCHT(FOR_SYMBOL, &FOLLOW_FOR_SYMBOL_in_index_hint_clause6261);
            if  (HASEXCEPTION())
            {
                goto ruleindex_hint_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            FOR_SYMBOL1100_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOR_SYMBOL1100));
            ADAPTOR->addChild(ADAPTOR, root_0, FOR_SYMBOL1100_tree);
            }

            // MySQL.g:1480:13: ( JOIN_SYMBOL | ORDER_SYMBOL BY_SYMBOL | GROUP_SYMBOL BY_SYMBOL )
            {
                int alt382=3;
                switch ( LA(1) )
                {
                case JOIN_SYMBOL:
                	{
                		alt382=1;
                	}
                    break;
                case ORDER_SYMBOL:
                	{
                		alt382=2;
                	}
                    break;
                case GROUP_SYMBOL:
                	{
                		alt382=3;
                	}
                    break;

                default:
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }

                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 382;
                    EXCEPTION->state        = 0;


                    goto ruleindex_hint_clauseEx;

                }

                switch (alt382)
                {
            	case 1:
            	    // MySQL.g:1480:14: JOIN_SYMBOL
            	    {
            	        JOIN_SYMBOL1101 = (pANTLR3_COMMON_TOKEN) MATCHT(JOIN_SYMBOL, &FOLLOW_JOIN_SYMBOL_in_index_hint_clause6264);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleindex_hint_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        JOIN_SYMBOL1101_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, JOIN_SYMBOL1101));
            	        ADAPTOR->addChild(ADAPTOR, root_0, JOIN_SYMBOL1101_tree);
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1480:28: ORDER_SYMBOL BY_SYMBOL
            	    {
            	        ORDER_SYMBOL1102 = (pANTLR3_COMMON_TOKEN) MATCHT(ORDER_SYMBOL, &FOLLOW_ORDER_SYMBOL_in_index_hint_clause6268);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleindex_hint_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ORDER_SYMBOL1102_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ORDER_SYMBOL1102));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ORDER_SYMBOL1102_tree);
            	        }

            	        BY_SYMBOL1103 = (pANTLR3_COMMON_TOKEN) MATCHT(BY_SYMBOL, &FOLLOW_BY_SYMBOL_in_index_hint_clause6270);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleindex_hint_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        BY_SYMBOL1103_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BY_SYMBOL1103));
            	        ADAPTOR->addChild(ADAPTOR, root_0, BY_SYMBOL1103_tree);
            	        }

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:1480:53: GROUP_SYMBOL BY_SYMBOL
            	    {
            	        GROUP_SYMBOL1104 = (pANTLR3_COMMON_TOKEN) MATCHT(GROUP_SYMBOL, &FOLLOW_GROUP_SYMBOL_in_index_hint_clause6274);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleindex_hint_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        GROUP_SYMBOL1104_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GROUP_SYMBOL1104));
            	        ADAPTOR->addChild(ADAPTOR, root_0, GROUP_SYMBOL1104_tree);
            	        }

            	        BY_SYMBOL1105 = (pANTLR3_COMMON_TOKEN) MATCHT(BY_SYMBOL, &FOLLOW_BY_SYMBOL_in_index_hint_clause6276);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleindex_hint_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        BY_SYMBOL1105_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BY_SYMBOL1105));
            	        ADAPTOR->addChild(ADAPTOR, root_0, BY_SYMBOL1105_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:1483: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_SYMBOL1107;
    MySQLParser_index_list_element_return index_list_element1106;
    #undef	RETURN_TYPE_index_list_element1106
    #define	RETURN_TYPE_index_list_element1106 MySQLParser_index_list_element_return

    MySQLParser_index_list_element_return index_list_element1108;
    #undef	RETURN_TYPE_index_list_element1108
    #define	RETURN_TYPE_index_list_element1108 MySQLParser_index_list_element_return

    pANTLR3_BASE_TREE COMMA_SYMBOL1107_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL1107       = NULL;
    index_list_element1106.tree = NULL;

    index_list_element1108.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL1107_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1483:11: ( index_list_element ( COMMA_SYMBOL index_list_element )* )
        // MySQL.g:1484:2: index_list_element ( COMMA_SYMBOL index_list_element )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_index_list_element_in_index_list6286);
            index_list_element1106=index_list_element(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleindex_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_list_element1106.tree);

            // MySQL.g:1484:21: ( COMMA_SYMBOL index_list_element )*

            for (;;)
            {
                int alt383=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt383=1;
                	}
                    break;

                }

                switch (alt383)
                {
            	case 1:
            	    // MySQL.g:1484:22: COMMA_SYMBOL index_list_element
            	    {
            	        COMMA_SYMBOL1107 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_index_list6289);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleindex_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL1107_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1107));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1107_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_index_list_element_in_index_list6291);
            	        index_list_element1108=index_list_element(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleindex_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_list_element1108.tree);

            	    }
            	    break;

            	default:
            	    goto loop383;	/* break out of the loop */
            	    break;
                }
            }
            loop383: ; /* 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:1487: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_SYMBOL1110;
    MySQLParser_identifier_return identifier1109;
    #undef	RETURN_TYPE_identifier1109
    #define	RETURN_TYPE_identifier1109 MySQLParser_identifier_return

    pANTLR3_BASE_TREE PRIMARY_SYMBOL1110_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    PRIMARY_SYMBOL1110       = NULL;
    identifier1109.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    PRIMARY_SYMBOL1110_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1487:19: ( identifier | PRIMARY_SYMBOL )

            ANTLR3_UINT32 alt384;

            alt384=2;

            {
                int LA384_0 = LA(1);
                if ( (((LA384_0 >= ACCOUNT_SYMBOL) && (LA384_0 <= YEAR_SYMBOL)) || LA384_0 == BACK_TICK_QUOTED_ID || LA384_0 == DOUBLE_QUOTED_TEXT || LA384_0 == IDENTIFIER))
                {
                    alt384=1;
                }
                else if ( (LA384_0 == PRIMARY_SYMBOL))
                {
                    alt384=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 384;
                    EXCEPTION->state        = 0;


                    goto ruleindex_list_elementEx;

                }
            }
            switch (alt384)
            {
        	case 1:
        	    // MySQL.g:1488:2: identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_identifier_in_index_list_element6302);
        	        identifier1109=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleindex_list_elementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier1109.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1489:4: PRIMARY_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        PRIMARY_SYMBOL1110 = (pANTLR3_COMMON_TOKEN) MATCHT(PRIMARY_SYMBOL, &FOLLOW_PRIMARY_SYMBOL_in_index_list_element6307);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleindex_list_elementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PRIMARY_SYMBOL1110_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PRIMARY_SYMBOL1110));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PRIMARY_SYMBOL1110_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:1494: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_SYMBOL1111;
    pANTLR3_COMMON_TOKEN    LOW_PRIORITY_SYMBOL1112;
    pANTLR3_COMMON_TOKEN    IGNORE_SYMBOL1113;
    pANTLR3_COMMON_TOKEN    SET_SYMBOL1115;
    MySQLParser_join_table_list_return join_table_list1114;
    #undef	RETURN_TYPE_join_table_list1114
    #define	RETURN_TYPE_join_table_list1114 MySQLParser_join_table_list_return

    MySQLParser_column_assignment_list_with_default_return column_assignment_list_with_default1116;
    #undef	RETURN_TYPE_column_assignment_list_with_default1116
    #define	RETURN_TYPE_column_assignment_list_with_default1116 MySQLParser_column_assignment_list_with_default_return

    MySQLParser_where_clause_return where_clause1117;
    #undef	RETURN_TYPE_where_clause1117
    #define	RETURN_TYPE_where_clause1117 MySQLParser_where_clause_return

    MySQLParser_order_by_clause_return order_by_clause1118;
    #undef	RETURN_TYPE_order_by_clause1118
    #define	RETURN_TYPE_order_by_clause1118 MySQLParser_order_by_clause_return

    MySQLParser_simple_limit_clause_return simple_limit_clause1119;
    #undef	RETURN_TYPE_simple_limit_clause1119
    #define	RETURN_TYPE_simple_limit_clause1119 MySQLParser_simple_limit_clause_return

    pANTLR3_BASE_TREE UPDATE_SYMBOL1111_tree;
    pANTLR3_BASE_TREE LOW_PRIORITY_SYMBOL1112_tree;
    pANTLR3_BASE_TREE IGNORE_SYMBOL1113_tree;
    pANTLR3_BASE_TREE SET_SYMBOL1115_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    UPDATE_SYMBOL1111       = NULL;
    LOW_PRIORITY_SYMBOL1112       = NULL;
    IGNORE_SYMBOL1113       = NULL;
    SET_SYMBOL1115       = NULL;
    join_table_list1114.tree = NULL;

    column_assignment_list_with_default1116.tree = NULL;

    where_clause1117.tree = NULL;

    order_by_clause1118.tree = NULL;

    simple_limit_clause1119.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    UPDATE_SYMBOL1111_tree   = NULL;
    LOW_PRIORITY_SYMBOL1112_tree   = NULL;
    IGNORE_SYMBOL1113_tree   = NULL;
    SET_SYMBOL1115_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1494: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:1495: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_SYMBOL1111 = (pANTLR3_COMMON_TOKEN) MATCHT(UPDATE_SYMBOL, &FOLLOW_UPDATE_SYMBOL_in_update_statement6318);
            if  (HASEXCEPTION())
            {
                goto ruleupdate_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            UPDATE_SYMBOL1111_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UPDATE_SYMBOL1111))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, UPDATE_SYMBOL1111_tree, root_0));
            }

            // MySQL.g:1495:17: ( LOW_PRIORITY_SYMBOL )?
            {
                int alt385=2;
                switch ( LA(1) )
                {
                    case LOW_PRIORITY_SYMBOL:
                    	{
                    		alt385=1;
                    	}
                        break;
                }

                switch (alt385)
                {
            	case 1:
            	    // MySQL.g:1495:17: LOW_PRIORITY_SYMBOL
            	    {
            	        LOW_PRIORITY_SYMBOL1112 = (pANTLR3_COMMON_TOKEN) MATCHT(LOW_PRIORITY_SYMBOL, &FOLLOW_LOW_PRIORITY_SYMBOL_in_update_statement6321);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleupdate_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        LOW_PRIORITY_SYMBOL1112_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOW_PRIORITY_SYMBOL1112));
            	        ADAPTOR->addChild(ADAPTOR, root_0, LOW_PRIORITY_SYMBOL1112_tree);
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:1495:38: ( IGNORE_SYMBOL )?
            {
                int alt386=2;
                switch ( LA(1) )
                {
                    case IGNORE_SYMBOL:
                    	{
                    		alt386=1;
                    	}
                        break;
                }

                switch (alt386)
                {
            	case 1:
            	    // MySQL.g:1495:38: IGNORE_SYMBOL
            	    {
            	        IGNORE_SYMBOL1113 = (pANTLR3_COMMON_TOKEN) MATCHT(IGNORE_SYMBOL, &FOLLOW_IGNORE_SYMBOL_in_update_statement6324);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleupdate_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        IGNORE_SYMBOL1113_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IGNORE_SYMBOL1113));
            	        ADAPTOR->addChild(ADAPTOR, root_0, IGNORE_SYMBOL1113_tree);
            	        }

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_join_table_list_in_update_statement6327);
            join_table_list1114=join_table_list(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleupdate_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, join_table_list1114.tree);

            SET_SYMBOL1115 = (pANTLR3_COMMON_TOKEN) MATCHT(SET_SYMBOL, &FOLLOW_SET_SYMBOL_in_update_statement6331);
            if  (HASEXCEPTION())
            {
                goto ruleupdate_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            SET_SYMBOL1115_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SET_SYMBOL1115));
            ADAPTOR->addChild(ADAPTOR, root_0, SET_SYMBOL1115_tree);
            }

            FOLLOWPUSH(FOLLOW_column_assignment_list_with_default_in_update_statement6333);
            column_assignment_list_with_default1116=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_default1116.tree);

            // MySQL.g:1496:50: ( where_clause )?
            {
                int alt387=2;
                switch ( LA(1) )
                {
                    case WHERE_SYMBOL:
                    	{
                    		alt387=1;
                    	}
                        break;
                }

                switch (alt387)
                {
            	case 1:
            	    // MySQL.g:1496:50: where_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_where_clause_in_update_statement6335);
            	        where_clause1117=where_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleupdate_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, where_clause1117.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1496:64: ( order_by_clause )?
            {
                int alt388=2;
                switch ( LA(1) )
                {
                    case ORDER_SYMBOL:
                    	{
                    		alt388=1;
                    	}
                        break;
                }

                switch (alt388)
                {
            	case 1:
            	    // MySQL.g:1496:64: order_by_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_order_by_clause_in_update_statement6338);
            	        order_by_clause1118=order_by_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleupdate_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, order_by_clause1118.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1496:81: ( simple_limit_clause )?
            {
                int alt389=2;
                switch ( LA(1) )
                {
                    case LIMIT_SYMBOL:
                    	{
                    		alt389=1;
                    	}
                        break;
                }

                switch (alt389)
                {
            	case 1:
            	    // MySQL.g:1496:81: simple_limit_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_simple_limit_clause_in_update_statement6341);
            	        simple_limit_clause1119=simple_limit_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleupdate_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, simple_limit_clause1119.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:1501: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_statement1120;
    #undef	RETURN_TYPE_transaction_statement1120
    #define	RETURN_TYPE_transaction_statement1120 MySQLParser_transaction_statement_return

    MySQLParser_savepoint_statement_return savepoint_statement1121;
    #undef	RETURN_TYPE_savepoint_statement1121
    #define	RETURN_TYPE_savepoint_statement1121 MySQLParser_savepoint_statement_return

    MySQLParser_lock_statement_return lock_statement1122;
    #undef	RETURN_TYPE_lock_statement1122
    #define	RETURN_TYPE_lock_statement1122 MySQLParser_lock_statement_return

    MySQLParser_xa_statement_return xa_statement1123;
    #undef	RETURN_TYPE_xa_statement1123
    #define	RETURN_TYPE_xa_statement1123 MySQLParser_xa_statement_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    transaction_statement1120.tree = NULL;

    savepoint_statement1121.tree = NULL;

    lock_statement1122.tree = NULL;

    xa_statement1123.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1501:33: ( transaction_statement | savepoint_statement | lock_statement | xa_statement )

            ANTLR3_UINT32 alt390;

            alt390=4;

            switch ( LA(1) )
            {
            case COMMIT_SYMBOL:
            case ROLLBACK_SYMBOL:
            case START_SYMBOL:
            	{
            		alt390=1;
            	}
                break;
            case SAVEPOINT_SYMBOL:
            case RELEASE_SYMBOL:
            	{
            		alt390=2;
            	}
                break;
            case LOCK_SYMBOL:
            case UNLOCK_SYMBOL:
            	{
            		alt390=3;
            	}
                break;
            case XA_SYMBOL:
            	{
            		alt390=4;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 390;
                EXCEPTION->state        = 0;


                goto ruletransaction_or_locking_statementEx;

            }

            switch (alt390)
            {
        	case 1:
        	    // MySQL.g:1502:2: transaction_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_transaction_statement_in_transaction_or_locking_statement6353);
        	        transaction_statement1120=transaction_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletransaction_or_locking_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, transaction_statement1120.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1503:4: savepoint_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_savepoint_statement_in_transaction_or_locking_statement6358);
        	        savepoint_statement1121=savepoint_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletransaction_or_locking_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, savepoint_statement1121.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1504:4: lock_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_lock_statement_in_transaction_or_locking_statement6363);
        	        lock_statement1122=lock_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletransaction_or_locking_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, lock_statement1122.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1505:4: xa_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_xa_statement_in_transaction_or_locking_statement6368);
        	        xa_statement1123=xa_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletransaction_or_locking_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, xa_statement1123.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:1508:1: transaction_statement : ( START_SYMBOL ^ TRANSACTION_SYMBOL ( transaction_characteristic )* | 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_SYMBOL1124;
    pANTLR3_COMMON_TOKEN    TRANSACTION_SYMBOL1125;
    pANTLR3_COMMON_TOKEN    COMMIT_SYMBOL1127;
    pANTLR3_COMMON_TOKEN    WORK_SYMBOL1128;
    pANTLR3_COMMON_TOKEN    AND_SYMBOL1129;
    pANTLR3_COMMON_TOKEN    NO_SYMBOL1130;
    pANTLR3_COMMON_TOKEN    CHAIN_SYMBOL1131;
    pANTLR3_COMMON_TOKEN    NO_SYMBOL1132;
    pANTLR3_COMMON_TOKEN    RELEASE_SYMBOL1133;
    pANTLR3_COMMON_TOKEN    ROLLBACK_SYMBOL1134;
    pANTLR3_COMMON_TOKEN    WORK_SYMBOL1135;
    pANTLR3_COMMON_TOKEN    AND_SYMBOL1136;
    pANTLR3_COMMON_TOKEN    NO_SYMBOL1137;
    pANTLR3_COMMON_TOKEN    CHAIN_SYMBOL1138;
    pANTLR3_COMMON_TOKEN    NO_SYMBOL1139;
    pANTLR3_COMMON_TOKEN    RELEASE_SYMBOL1140;
    pANTLR3_COMMON_TOKEN    TO_SYMBOL1141;
    pANTLR3_COMMON_TOKEN    SAVEPOINT_SYMBOL1142;
    MySQLParser_transaction_characteristic_return transaction_characteristic1126;
    #undef	RETURN_TYPE_transaction_characteristic1126
    #define	RETURN_TYPE_transaction_characteristic1126 MySQLParser_transaction_characteristic_return

    MySQLParser_identifier_return identifier1143;
    #undef	RETURN_TYPE_identifier1143
    #define	RETURN_TYPE_identifier1143 MySQLParser_identifier_return

    pANTLR3_BASE_TREE START_SYMBOL1124_tree;
    pANTLR3_BASE_TREE TRANSACTION_SYMBOL1125_tree;
    pANTLR3_BASE_TREE COMMIT_SYMBOL1127_tree;
    pANTLR3_BASE_TREE WORK_SYMBOL1128_tree;
    pANTLR3_BASE_TREE AND_SYMBOL1129_tree;
    pANTLR3_BASE_TREE NO_SYMBOL1130_tree;
    pANTLR3_BASE_TREE CHAIN_SYMBOL1131_tree;
    pANTLR3_BASE_TREE NO_SYMBOL1132_tree;
    pANTLR3_BASE_TREE RELEASE_SYMBOL1133_tree;
    pANTLR3_BASE_TREE ROLLBACK_SYMBOL1134_tree;
    pANTLR3_BASE_TREE WORK_SYMBOL1135_tree;
    pANTLR3_BASE_TREE AND_SYMBOL1136_tree;
    pANTLR3_BASE_TREE NO_SYMBOL1137_tree;
    pANTLR3_BASE_TREE CHAIN_SYMBOL1138_tree;
    pANTLR3_BASE_TREE NO_SYMBOL1139_tree;
    pANTLR3_BASE_TREE RELEASE_SYMBOL1140_tree;
    pANTLR3_BASE_TREE TO_SYMBOL1141_tree;
    pANTLR3_BASE_TREE SAVEPOINT_SYMBOL1142_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    START_SYMBOL1124       = NULL;
    TRANSACTION_SYMBOL1125       = NULL;
    COMMIT_SYMBOL1127       = NULL;
    WORK_SYMBOL1128       = NULL;
    AND_SYMBOL1129       = NULL;
    NO_SYMBOL1130       = NULL;
    CHAIN_SYMBOL1131       = NULL;
    NO_SYMBOL1132       = NULL;
    RELEASE_SYMBOL1133       = NULL;
    ROLLBACK_SYMBOL1134       = NULL;
    WORK_SYMBOL1135       = NULL;
    AND_SYMBOL1136       = NULL;
    NO_SYMBOL1137       = NULL;
    CHAIN_SYMBOL1138       = NULL;
    NO_SYMBOL1139       = NULL;
    RELEASE_SYMBOL1140       = NULL;
    TO_SYMBOL1141       = NULL;
    SAVEPOINT_SYMBOL1142       = NULL;
    transaction_characteristic1126.tree = NULL;

    identifier1143.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    START_SYMBOL1124_tree   = NULL;
    TRANSACTION_SYMBOL1125_tree   = NULL;
    COMMIT_SYMBOL1127_tree   = NULL;
    WORK_SYMBOL1128_tree   = NULL;
    AND_SYMBOL1129_tree   = NULL;
    NO_SYMBOL1130_tree   = NULL;
    CHAIN_SYMBOL1131_tree   = NULL;
    NO_SYMBOL1132_tree   = NULL;
    RELEASE_SYMBOL1133_tree   = NULL;
    ROLLBACK_SYMBOL1134_tree   = NULL;
    WORK_SYMBOL1135_tree   = NULL;
    AND_SYMBOL1136_tree   = NULL;
    NO_SYMBOL1137_tree   = NULL;
    CHAIN_SYMBOL1138_tree   = NULL;
    NO_SYMBOL1139_tree   = NULL;
    RELEASE_SYMBOL1140_tree   = NULL;
    TO_SYMBOL1141_tree   = NULL;
    SAVEPOINT_SYMBOL1142_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1508:22: ( START_SYMBOL ^ TRANSACTION_SYMBOL ( transaction_characteristic )* | 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=3;

            switch ( LA(1) )
            {
            case START_SYMBOL:
            	{
            		alt404=1;
            	}
                break;
            case COMMIT_SYMBOL:
            	{
            		alt404=2;
            	}
                break;
            case ROLLBACK_SYMBOL:
            	{
            		alt404=3;
            	}
                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:1509:2: START_SYMBOL ^ TRANSACTION_SYMBOL ( transaction_characteristic )*
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        START_SYMBOL1124 = (pANTLR3_COMMON_TOKEN) MATCHT(START_SYMBOL, &FOLLOW_START_SYMBOL_in_transaction_statement6377);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletransaction_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        START_SYMBOL1124_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, START_SYMBOL1124))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, START_SYMBOL1124_tree, root_0));
        	        }

        	        TRANSACTION_SYMBOL1125 = (pANTLR3_COMMON_TOKEN) MATCHT(TRANSACTION_SYMBOL, &FOLLOW_TRANSACTION_SYMBOL_in_transaction_statement6380);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletransaction_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TRANSACTION_SYMBOL1125_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TRANSACTION_SYMBOL1125));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TRANSACTION_SYMBOL1125_tree);
        	        }

        	        // MySQL.g:1509:35: ( transaction_characteristic )*

        	        for (;;)
        	        {
        	            int alt391=2;
        	            switch ( LA(1) )
        	            {
        	            case READ_SYMBOL:
        	            case WITH_SYMBOL:
        	            	{
        	            		alt391=1;
        	            	}
        	                break;

        	            }

        	            switch (alt391)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1509:35: transaction_characteristic
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_transaction_characteristic_in_transaction_statement6382);
        	        	        transaction_characteristic1126=transaction_characteristic(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletransaction_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, transaction_characteristic1126.tree);

        	        	    }
        	        	    break;

        	        	default:
        	        	    goto loop391;	/* break out of the loop */
        	        	    break;
        	            }
        	        }
        	        loop391: ; /* Jump out to here if this rule does not match */


        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1510:4: COMMIT_SYMBOL ^ ( WORK_SYMBOL )? ( AND_SYMBOL ( NO_SYMBOL )? CHAIN_SYMBOL )? ( ( NO_SYMBOL )? RELEASE_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        COMMIT_SYMBOL1127 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMIT_SYMBOL, &FOLLOW_COMMIT_SYMBOL_in_transaction_statement6388);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletransaction_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMIT_SYMBOL1127_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMIT_SYMBOL1127))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, COMMIT_SYMBOL1127_tree, root_0));
        	        }

        	        // MySQL.g:1510:19: ( WORK_SYMBOL )?
        	        {
        	            int alt392=2;
        	            switch ( LA(1) )
        	            {
        	                case WORK_SYMBOL:
        	                	{
        	                		alt392=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt392)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1510:19: WORK_SYMBOL
        	        	    {
        	        	        WORK_SYMBOL1128 = (pANTLR3_COMMON_TOKEN) MATCHT(WORK_SYMBOL, &FOLLOW_WORK_SYMBOL_in_transaction_statement6391);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletransaction_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        WORK_SYMBOL1128_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WORK_SYMBOL1128));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, WORK_SYMBOL1128_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:1510: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:1510:33: AND_SYMBOL ( NO_SYMBOL )? CHAIN_SYMBOL
        	        	    {
        	        	        AND_SYMBOL1129 = (pANTLR3_COMMON_TOKEN) MATCHT(AND_SYMBOL, &FOLLOW_AND_SYMBOL_in_transaction_statement6395);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletransaction_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        AND_SYMBOL1129_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AND_SYMBOL1129));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, AND_SYMBOL1129_tree);
        	        	        }

        	        	        // MySQL.g:1510:44: ( NO_SYMBOL )?
        	        	        {
        	        	            int alt393=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	                case NO_SYMBOL:
        	        	                	{
        	        	                		alt393=1;
        	        	                	}
        	        	                    break;
        	        	            }

        	        	            switch (alt393)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:1510:44: NO_SYMBOL
        	        	        	    {
        	        	        	        NO_SYMBOL1130 = (pANTLR3_COMMON_TOKEN) MATCHT(NO_SYMBOL, &FOLLOW_NO_SYMBOL_in_transaction_statement6397);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruletransaction_statementEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        NO_SYMBOL1130_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NO_SYMBOL1130));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, NO_SYMBOL1130_tree);
        	        	        	        }

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        CHAIN_SYMBOL1131 = (pANTLR3_COMMON_TOKEN) MATCHT(CHAIN_SYMBOL, &FOLLOW_CHAIN_SYMBOL_in_transaction_statement6400);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletransaction_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        CHAIN_SYMBOL1131_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHAIN_SYMBOL1131));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, CHAIN_SYMBOL1131_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:1510: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:1510:71: ( NO_SYMBOL )? RELEASE_SYMBOL
        	        	    {
        	        	        // MySQL.g:1510:71: ( NO_SYMBOL )?
        	        	        {
        	        	            int alt395=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	                case NO_SYMBOL:
        	        	                	{
        	        	                		alt395=1;
        	        	                	}
        	        	                    break;
        	        	            }

        	        	            switch (alt395)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:1510:71: NO_SYMBOL
        	        	        	    {
        	        	        	        NO_SYMBOL1132 = (pANTLR3_COMMON_TOKEN) MATCHT(NO_SYMBOL, &FOLLOW_NO_SYMBOL_in_transaction_statement6405);
        	        	        	        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;

        	        	            }
        	        	        }

        	        	        RELEASE_SYMBOL1133 = (pANTLR3_COMMON_TOKEN) MATCHT(RELEASE_SYMBOL, &FOLLOW_RELEASE_SYMBOL_in_transaction_statement6408);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletransaction_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        RELEASE_SYMBOL1133_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RELEASE_SYMBOL1133));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, RELEASE_SYMBOL1133_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1511: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_SYMBOL1134 = (pANTLR3_COMMON_TOKEN) MATCHT(ROLLBACK_SYMBOL, &FOLLOW_ROLLBACK_SYMBOL_in_transaction_statement6415);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletransaction_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ROLLBACK_SYMBOL1134_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ROLLBACK_SYMBOL1134))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, ROLLBACK_SYMBOL1134_tree, root_0));
        	        }

        	        // MySQL.g:1511:21: ( WORK_SYMBOL )?
        	        {
        	            int alt397=2;
        	            switch ( LA(1) )
        	            {
        	                case WORK_SYMBOL:
        	                	{
        	                		alt397=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt397)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1511:21: WORK_SYMBOL
        	        	    {
        	        	        WORK_SYMBOL1135 = (pANTLR3_COMMON_TOKEN) MATCHT(WORK_SYMBOL, &FOLLOW_WORK_SYMBOL_in_transaction_statement6418);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletransaction_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        WORK_SYMBOL1135_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WORK_SYMBOL1135));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, WORK_SYMBOL1135_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:1512: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:1513:4: ( AND_SYMBOL ( NO_SYMBOL )? CHAIN_SYMBOL )? ( ( NO_SYMBOL )? RELEASE_SYMBOL )?
        	        	    {
        	        	        // MySQL.g:1513: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:1513:5: AND_SYMBOL ( NO_SYMBOL )? CHAIN_SYMBOL
        	        	        	    {
        	        	        	        AND_SYMBOL1136 = (pANTLR3_COMMON_TOKEN) MATCHT(AND_SYMBOL, &FOLLOW_AND_SYMBOL_in_transaction_statement6429);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruletransaction_statementEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        AND_SYMBOL1136_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AND_SYMBOL1136));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, AND_SYMBOL1136_tree);
        	        	        	        }

        	        	        	        // MySQL.g:1513:16: ( NO_SYMBOL )?
        	        	        	        {
        	        	        	            int alt398=2;
        	        	        	            switch ( LA(1) )
        	        	        	            {
        	        	        	                case NO_SYMBOL:
        	        	        	                	{
        	        	        	                		alt398=1;
        	        	        	                	}
        	        	        	                    break;
        	        	        	            }

        	        	        	            switch (alt398)
        	        	        	            {
        	        	        	        	case 1:
        	        	        	        	    // MySQL.g:1513:16: NO_SYMBOL
        	        	        	        	    {
        	        	        	        	        NO_SYMBOL1137 = (pANTLR3_COMMON_TOKEN) MATCHT(NO_SYMBOL, &FOLLOW_NO_SYMBOL_in_transaction_statement6431);
        	        	        	        	        if  (HASEXCEPTION())
        	        	        	        	        {
        	        	        	        	            goto ruletransaction_statementEx;
        	        	        	        	        }
        	        	        	        	        if (HASFAILED())
        	        	        	        	        {
        	        	        	        	            return retval;
        	        	        	        	        }

        	        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        	        NO_SYMBOL1137_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NO_SYMBOL1137));
        	        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, NO_SYMBOL1137_tree);
        	        	        	        	        }

        	        	        	        	    }
        	        	        	        	    break;

        	        	        	            }
        	        	        	        }

        	        	        	        CHAIN_SYMBOL1138 = (pANTLR3_COMMON_TOKEN) MATCHT(CHAIN_SYMBOL, &FOLLOW_CHAIN_SYMBOL_in_transaction_statement6434);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruletransaction_statementEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        CHAIN_SYMBOL1138_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHAIN_SYMBOL1138));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, CHAIN_SYMBOL1138_tree);
        	        	        	        }

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        // MySQL.g:1513: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:1513:43: ( NO_SYMBOL )? RELEASE_SYMBOL
        	        	        	    {
        	        	        	        // MySQL.g:1513:43: ( NO_SYMBOL )?
        	        	        	        {
        	        	        	            int alt400=2;
        	        	        	            switch ( LA(1) )
        	        	        	            {
        	        	        	                case NO_SYMBOL:
        	        	        	                	{
        	        	        	                		alt400=1;
        	        	        	                	}
        	        	        	                    break;
        	        	        	            }

        	        	        	            switch (alt400)
        	        	        	            {
        	        	        	        	case 1:
        	        	        	        	    // MySQL.g:1513:43: NO_SYMBOL
        	        	        	        	    {
        	        	        	        	        NO_SYMBOL1139 = (pANTLR3_COMMON_TOKEN) MATCHT(NO_SYMBOL, &FOLLOW_NO_SYMBOL_in_transaction_statement6439);
        	        	        	        	        if  (HASEXCEPTION())
        	        	        	        	        {
        	        	        	        	            goto ruletransaction_statementEx;
        	        	        	        	        }
        	        	        	        	        if (HASFAILED())
        	        	        	        	        {
        	        	        	        	            return retval;
        	        	        	        	        }

        	        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        	        NO_SYMBOL1139_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NO_SYMBOL1139));
        	        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, NO_SYMBOL1139_tree);
        	        	        	        	        }

        	        	        	        	    }
        	        	        	        	    break;

        	        	        	            }
        	        	        	        }

        	        	        	        RELEASE_SYMBOL1140 = (pANTLR3_COMMON_TOKEN) MATCHT(RELEASE_SYMBOL, &FOLLOW_RELEASE_SYMBOL_in_transaction_statement6442);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruletransaction_statementEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        RELEASE_SYMBOL1140_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RELEASE_SYMBOL1140));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, RELEASE_SYMBOL1140_tree);
        	        	        	        }

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:1514:6: TO_SYMBOL ( SAVEPOINT_SYMBOL )? identifier
        	        	    {
        	        	        TO_SYMBOL1141 = (pANTLR3_COMMON_TOKEN) MATCHT(TO_SYMBOL, &FOLLOW_TO_SYMBOL_in_transaction_statement6451);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletransaction_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        TO_SYMBOL1141_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TO_SYMBOL1141));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, TO_SYMBOL1141_tree);
        	        	        }

        	        	        // MySQL.g:1514: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:1514:16: SAVEPOINT_SYMBOL
        	        	        	    {
        	        	        	        SAVEPOINT_SYMBOL1142 = (pANTLR3_COMMON_TOKEN) MATCHT(SAVEPOINT_SYMBOL, &FOLLOW_SAVEPOINT_SYMBOL_in_transaction_statement6453);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruletransaction_statementEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        SAVEPOINT_SYMBOL1142_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SAVEPOINT_SYMBOL1142));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, SAVEPOINT_SYMBOL1142_tree);
        	        	        	        }

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_identifier_in_transaction_statement6456);
        	        	        identifier1143=identifier(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletransaction_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier1143.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 begin_work
 * MySQL.g:1522:1: begin_work : BEGIN_SYMBOL ^ ( WORK_SYMBOL )? ;
 */
static MySQLParser_begin_work_return
begin_work(pMySQLParser ctx)
{
    MySQLParser_begin_work_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    BEGIN_SYMBOL1144;
    pANTLR3_COMMON_TOKEN    WORK_SYMBOL1145;

    pANTLR3_BASE_TREE BEGIN_SYMBOL1144_tree;
    pANTLR3_BASE_TREE WORK_SYMBOL1145_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    BEGIN_SYMBOL1144       = NULL;
    WORK_SYMBOL1145       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    BEGIN_SYMBOL1144_tree   = NULL;
    WORK_SYMBOL1145_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1522:11: ( BEGIN_SYMBOL ^ ( WORK_SYMBOL )? )
        // MySQL.g:1523:2: BEGIN_SYMBOL ^ ( WORK_SYMBOL )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            BEGIN_SYMBOL1144 = (pANTLR3_COMMON_TOKEN) MATCHT(BEGIN_SYMBOL, &FOLLOW_BEGIN_SYMBOL_in_begin_work6477);
            if  (HASEXCEPTION())
            {
                goto rulebegin_workEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            BEGIN_SYMBOL1144_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BEGIN_SYMBOL1144))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, BEGIN_SYMBOL1144_tree, root_0));
            }

            // MySQL.g:1523:16: ( WORK_SYMBOL )?
            {
                int alt405=2;
                switch ( LA(1) )
                {
                    case WORK_SYMBOL:
                    	{
                    		alt405=1;
                    	}
                        break;
                }

                switch (alt405)
                {
            	case 1:
            	    // MySQL.g:1523:16: WORK_SYMBOL
            	    {
            	        WORK_SYMBOL1145 = (pANTLR3_COMMON_TOKEN) MATCHT(WORK_SYMBOL, &FOLLOW_WORK_SYMBOL_in_begin_work6480);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulebegin_workEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        WORK_SYMBOL1145_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WORK_SYMBOL1145));
            	        ADAPTOR->addChild(ADAPTOR, root_0, WORK_SYMBOL1145_tree);
            	        }

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulebegin_workEx; /* Prevent compiler warnings */
    rulebegin_workEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, 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_work */

/**
 * $ANTLR start transaction_characteristic
 * MySQL.g:1526: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_SYMBOL1146;
    pANTLR3_COMMON_TOKEN    CONSISTENT_SYMBOL1147;
    pANTLR3_COMMON_TOKEN    SNAPSHOT_SYMBOL1148;
    pANTLR3_COMMON_TOKEN    READ_SYMBOL1149;
    pANTLR3_COMMON_TOKEN    set1150;

    pANTLR3_BASE_TREE WITH_SYMBOL1146_tree;
    pANTLR3_BASE_TREE CONSISTENT_SYMBOL1147_tree;
    pANTLR3_BASE_TREE SNAPSHOT_SYMBOL1148_tree;
    pANTLR3_BASE_TREE READ_SYMBOL1149_tree;
    pANTLR3_BASE_TREE set1150_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    WITH_SYMBOL1146       = NULL;
    CONSISTENT_SYMBOL1147       = NULL;
    SNAPSHOT_SYMBOL1148       = NULL;
    READ_SYMBOL1149       = NULL;
    set1150       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    WITH_SYMBOL1146_tree   = NULL;
    CONSISTENT_SYMBOL1147_tree   = NULL;
    SNAPSHOT_SYMBOL1148_tree   = NULL;
    READ_SYMBOL1149_tree   = NULL;
    set1150_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1526:27: ( WITH_SYMBOL CONSISTENT_SYMBOL SNAPSHOT_SYMBOL |{...}? READ_SYMBOL ( WRITE_SYMBOL | ONLY_SYMBOL ) )

            ANTLR3_UINT32 alt406;

            alt406=2;

            switch ( LA(1) )
            {
            case WITH_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 ruletransaction_characteristicEx;

            }

            switch (alt406)
            {
        	case 1:
        	    // MySQL.g:1527:2: WITH_SYMBOL CONSISTENT_SYMBOL SNAPSHOT_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        WITH_SYMBOL1146 = (pANTLR3_COMMON_TOKEN) MATCHT(WITH_SYMBOL, &FOLLOW_WITH_SYMBOL_in_transaction_characteristic6490);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletransaction_characteristicEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        WITH_SYMBOL1146_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WITH_SYMBOL1146));
        	        ADAPTOR->addChild(ADAPTOR, root_0, WITH_SYMBOL1146_tree);
        	        }

        	        CONSISTENT_SYMBOL1147 = (pANTLR3_COMMON_TOKEN) MATCHT(CONSISTENT_SYMBOL, &FOLLOW_CONSISTENT_SYMBOL_in_transaction_characteristic6492);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletransaction_characteristicEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CONSISTENT_SYMBOL1147_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CONSISTENT_SYMBOL1147));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CONSISTENT_SYMBOL1147_tree);
        	        }

        	        SNAPSHOT_SYMBOL1148 = (pANTLR3_COMMON_TOKEN) MATCHT(SNAPSHOT_SYMBOL, &FOLLOW_SNAPSHOT_SYMBOL_in_transaction_characteristic6494);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletransaction_characteristicEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SNAPSHOT_SYMBOL1148_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SNAPSHOT_SYMBOL1148));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SNAPSHOT_SYMBOL1148_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1528: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_SYMBOL1149 = (pANTLR3_COMMON_TOKEN) MATCHT(READ_SYMBOL, &FOLLOW_READ_SYMBOL_in_transaction_characteristic6501);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletransaction_characteristicEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        READ_SYMBOL1149_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, READ_SYMBOL1149));
        	        ADAPTOR->addChild(ADAPTOR, root_0, READ_SYMBOL1149_tree);
        	        }

        	        set1150=(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, set1150))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>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:1531: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_SYMBOL1151;
    pANTLR3_COMMON_TOKEN    LEVEL_SYMBOL1152;
    pANTLR3_COMMON_TOKEN    READ_SYMBOL1154;
    pANTLR3_COMMON_TOKEN    set1155;
    MySQLParser_isolation_level_return isolation_level1153;
    #undef	RETURN_TYPE_isolation_level1153
    #define	RETURN_TYPE_isolation_level1153 MySQLParser_isolation_level_return

    pANTLR3_BASE_TREE ISOLATION_SYMBOL1151_tree;
    pANTLR3_BASE_TREE LEVEL_SYMBOL1152_tree;
    pANTLR3_BASE_TREE READ_SYMBOL1154_tree;
    pANTLR3_BASE_TREE set1155_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ISOLATION_SYMBOL1151       = NULL;
    LEVEL_SYMBOL1152       = NULL;
    READ_SYMBOL1154       = NULL;
    set1155       = NULL;
    isolation_level1153.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ISOLATION_SYMBOL1151_tree   = NULL;
    LEVEL_SYMBOL1152_tree   = NULL;
    READ_SYMBOL1154_tree   = NULL;
    set1155_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1531:31: ( ISOLATION_SYMBOL LEVEL_SYMBOL isolation_level |{...}? READ_SYMBOL ( WRITE_SYMBOL | ONLY_SYMBOL ) )

            ANTLR3_UINT32 alt407;

            alt407=2;

            switch ( LA(1) )
            {
            case ISOLATION_SYMBOL:
            	{
            		alt407=1;
            	}
                break;
            case READ_SYMBOL:
            	{
            		alt407=2;
            	}
                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 ruleset_transaction_characteristicEx;

            }

            switch (alt407)
            {
        	case 1:
        	    // MySQL.g:1532:2: ISOLATION_SYMBOL LEVEL_SYMBOL isolation_level
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ISOLATION_SYMBOL1151 = (pANTLR3_COMMON_TOKEN) MATCHT(ISOLATION_SYMBOL, &FOLLOW_ISOLATION_SYMBOL_in_set_transaction_characteristic6518);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleset_transaction_characteristicEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ISOLATION_SYMBOL1151_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ISOLATION_SYMBOL1151));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ISOLATION_SYMBOL1151_tree);
        	        }

        	        LEVEL_SYMBOL1152 = (pANTLR3_COMMON_TOKEN) MATCHT(LEVEL_SYMBOL, &FOLLOW_LEVEL_SYMBOL_in_set_transaction_characteristic6520);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleset_transaction_characteristicEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LEVEL_SYMBOL1152_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LEVEL_SYMBOL1152));
        	        ADAPTOR->addChild(ADAPTOR, root_0, LEVEL_SYMBOL1152_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_isolation_level_in_set_transaction_characteristic6522);
        	        isolation_level1153=isolation_level(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleset_transaction_characteristicEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, isolation_level1153.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1533: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_SYMBOL1154 = (pANTLR3_COMMON_TOKEN) MATCHT(READ_SYMBOL, &FOLLOW_READ_SYMBOL_in_set_transaction_characteristic6529);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleset_transaction_characteristicEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        READ_SYMBOL1154_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, READ_SYMBOL1154));
        	        ADAPTOR->addChild(ADAPTOR, root_0, READ_SYMBOL1154_tree);
        	        }

        	        set1155=(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, set1155))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>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:1536: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_SYMBOL1156;
    pANTLR3_COMMON_TOKEN    READ_SYMBOL1157;
    pANTLR3_COMMON_TOKEN    READ_SYMBOL1158;
    pANTLR3_COMMON_TOKEN    set1159;
    pANTLR3_COMMON_TOKEN    SERIALIZABLE_SYMBOL1160;

    pANTLR3_BASE_TREE REPEATABLE_SYMBOL1156_tree;
    pANTLR3_BASE_TREE READ_SYMBOL1157_tree;
    pANTLR3_BASE_TREE READ_SYMBOL1158_tree;
    pANTLR3_BASE_TREE set1159_tree;
    pANTLR3_BASE_TREE SERIALIZABLE_SYMBOL1160_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    REPEATABLE_SYMBOL1156       = NULL;
    READ_SYMBOL1157       = NULL;
    READ_SYMBOL1158       = NULL;
    set1159       = NULL;
    SERIALIZABLE_SYMBOL1160       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    REPEATABLE_SYMBOL1156_tree   = NULL;
    READ_SYMBOL1157_tree   = NULL;
    READ_SYMBOL1158_tree   = NULL;
    set1159_tree   = NULL;
    SERIALIZABLE_SYMBOL1160_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1536:16: ( REPEATABLE_SYMBOL READ_SYMBOL | READ_SYMBOL ( COMMITTED_SYMBOL | UNCOMMITTED_SYMBOL ) | SERIALIZABLE_SYMBOL )

            ANTLR3_UINT32 alt408;

            alt408=3;

            switch ( LA(1) )
            {
            case REPEATABLE_SYMBOL:
            	{
            		alt408=1;
            	}
                break;
            case READ_SYMBOL:
            	{
            		alt408=2;
            	}
                break;
            case SERIALIZABLE_SYMBOL:
            	{
            		alt408=3;
            	}
                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 ruleisolation_levelEx;

            }

            switch (alt408)
            {
        	case 1:
        	    // MySQL.g:1537:2: REPEATABLE_SYMBOL READ_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        REPEATABLE_SYMBOL1156 = (pANTLR3_COMMON_TOKEN) MATCHT(REPEATABLE_SYMBOL, &FOLLOW_REPEATABLE_SYMBOL_in_isolation_level6546);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleisolation_levelEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        REPEATABLE_SYMBOL1156_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REPEATABLE_SYMBOL1156));
        	        ADAPTOR->addChild(ADAPTOR, root_0, REPEATABLE_SYMBOL1156_tree);
        	        }

        	        READ_SYMBOL1157 = (pANTLR3_COMMON_TOKEN) MATCHT(READ_SYMBOL, &FOLLOW_READ_SYMBOL_in_isolation_level6548);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleisolation_levelEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        READ_SYMBOL1157_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, READ_SYMBOL1157));
        	        ADAPTOR->addChild(ADAPTOR, root_0, READ_SYMBOL1157_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1538:4: READ_SYMBOL ( COMMITTED_SYMBOL | UNCOMMITTED_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        READ_SYMBOL1158 = (pANTLR3_COMMON_TOKEN) MATCHT(READ_SYMBOL, &FOLLOW_READ_SYMBOL_in_isolation_level6553);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleisolation_levelEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        READ_SYMBOL1158_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, READ_SYMBOL1158));
        	        ADAPTOR->addChild(ADAPTOR, root_0, READ_SYMBOL1158_tree);
        	        }

        	        set1159=(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, set1159))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>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:1539:4: SERIALIZABLE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SERIALIZABLE_SYMBOL1160 = (pANTLR3_COMMON_TOKEN) MATCHT(SERIALIZABLE_SYMBOL, &FOLLOW_SERIALIZABLE_SYMBOL_in_isolation_level6566);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleisolation_levelEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SERIALIZABLE_SYMBOL1160_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SERIALIZABLE_SYMBOL1160));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SERIALIZABLE_SYMBOL1160_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:1542: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_SYMBOL1161;
    pANTLR3_COMMON_TOKEN    RELEASE_SYMBOL1163;
    pANTLR3_COMMON_TOKEN    SAVEPOINT_SYMBOL1164;
    MySQLParser_identifier_return identifier1162;
    #undef	RETURN_TYPE_identifier1162
    #define	RETURN_TYPE_identifier1162 MySQLParser_identifier_return

    MySQLParser_identifier_return identifier1165;
    #undef	RETURN_TYPE_identifier1165
    #define	RETURN_TYPE_identifier1165 MySQLParser_identifier_return

    pANTLR3_BASE_TREE SAVEPOINT_SYMBOL1161_tree;
    pANTLR3_BASE_TREE RELEASE_SYMBOL1163_tree;
    pANTLR3_BASE_TREE SAVEPOINT_SYMBOL1164_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SAVEPOINT_SYMBOL1161       = NULL;
    RELEASE_SYMBOL1163       = NULL;
    SAVEPOINT_SYMBOL1164       = NULL;
    identifier1162.tree = NULL;

    identifier1165.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SAVEPOINT_SYMBOL1161_tree   = NULL;
    RELEASE_SYMBOL1163_tree   = NULL;
    SAVEPOINT_SYMBOL1164_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1542:20: ( SAVEPOINT_SYMBOL ^ identifier | RELEASE_SYMBOL ^ SAVEPOINT_SYMBOL identifier )

            ANTLR3_UINT32 alt409;

            alt409=2;

            switch ( LA(1) )
            {
            case SAVEPOINT_SYMBOL:
            	{
            		alt409=1;
            	}
                break;
            case RELEASE_SYMBOL:
            	{
            		alt409=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 409;
                EXCEPTION->state        = 0;


                goto rulesavepoint_statementEx;

            }

            switch (alt409)
            {
        	case 1:
        	    // MySQL.g:1543:2: SAVEPOINT_SYMBOL ^ identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SAVEPOINT_SYMBOL1161 = (pANTLR3_COMMON_TOKEN) MATCHT(SAVEPOINT_SYMBOL, &FOLLOW_SAVEPOINT_SYMBOL_in_savepoint_statement6575);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulesavepoint_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SAVEPOINT_SYMBOL1161_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SAVEPOINT_SYMBOL1161))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, SAVEPOINT_SYMBOL1161_tree, root_0));
        	        }

        	        FOLLOWPUSH(FOLLOW_identifier_in_savepoint_statement6578);
        	        identifier1162=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulesavepoint_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier1162.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1544:4: RELEASE_SYMBOL ^ SAVEPOINT_SYMBOL identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        RELEASE_SYMBOL1163 = (pANTLR3_COMMON_TOKEN) MATCHT(RELEASE_SYMBOL, &FOLLOW_RELEASE_SYMBOL_in_savepoint_statement6583);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulesavepoint_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        RELEASE_SYMBOL1163_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RELEASE_SYMBOL1163))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, RELEASE_SYMBOL1163_tree, root_0));
        	        }

        	        SAVEPOINT_SYMBOL1164 = (pANTLR3_COMMON_TOKEN) MATCHT(SAVEPOINT_SYMBOL, &FOLLOW_SAVEPOINT_SYMBOL_in_savepoint_statement6586);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulesavepoint_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SAVEPOINT_SYMBOL1164_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SAVEPOINT_SYMBOL1164));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SAVEPOINT_SYMBOL1164_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_identifier_in_savepoint_statement6588);
        	        identifier1165=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulesavepoint_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier1165.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:1547: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_SYMBOL1166;
    pANTLR3_COMMON_TOKEN    set1167;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1169;
    pANTLR3_COMMON_TOKEN    UNLOCK_SYMBOL1171;
    pANTLR3_COMMON_TOKEN    set1172;
    MySQLParser_lock_item_return lock_item1168;
    #undef	RETURN_TYPE_lock_item1168
    #define	RETURN_TYPE_lock_item1168 MySQLParser_lock_item_return

    MySQLParser_lock_item_return lock_item1170;
    #undef	RETURN_TYPE_lock_item1170
    #define	RETURN_TYPE_lock_item1170 MySQLParser_lock_item_return

    pANTLR3_BASE_TREE LOCK_SYMBOL1166_tree;
    pANTLR3_BASE_TREE set1167_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1169_tree;
    pANTLR3_BASE_TREE UNLOCK_SYMBOL1171_tree;
    pANTLR3_BASE_TREE set1172_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    LOCK_SYMBOL1166       = NULL;
    set1167       = NULL;
    COMMA_SYMBOL1169       = NULL;
    UNLOCK_SYMBOL1171       = NULL;
    set1172       = NULL;
    lock_item1168.tree = NULL;

    lock_item1170.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    LOCK_SYMBOL1166_tree   = NULL;
    set1167_tree   = NULL;
    COMMA_SYMBOL1169_tree   = NULL;
    UNLOCK_SYMBOL1171_tree   = NULL;
    set1172_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1547:15: ( LOCK_SYMBOL ^ ( TABLES_SYMBOL | TABLE_SYMBOL ) lock_item ( COMMA_SYMBOL lock_item )* | UNLOCK_SYMBOL ^ ( TABLES_SYMBOL | TABLE_SYMBOL ) )

            ANTLR3_UINT32 alt411;

            alt411=2;

            switch ( LA(1) )
            {
            case LOCK_SYMBOL:
            	{
            		alt411=1;
            	}
                break;
            case UNLOCK_SYMBOL:
            	{
            		alt411=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 411;
                EXCEPTION->state        = 0;


                goto rulelock_statementEx;

            }

            switch (alt411)
            {
        	case 1:
        	    // MySQL.g:1548:2: LOCK_SYMBOL ^ ( TABLES_SYMBOL | TABLE_SYMBOL ) lock_item ( COMMA_SYMBOL lock_item )*
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        LOCK_SYMBOL1166 = (pANTLR3_COMMON_TOKEN) MATCHT(LOCK_SYMBOL, &FOLLOW_LOCK_SYMBOL_in_lock_statement6597);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelock_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LOCK_SYMBOL1166_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOCK_SYMBOL1166))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, LOCK_SYMBOL1166_tree, root_0));
        	        }

        	        set1167=(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, set1167))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>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_statement6608);
        	        lock_item1168=lock_item(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelock_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, lock_item1168.tree);

        	        // MySQL.g:1548:56: ( COMMA_SYMBOL lock_item )*

        	        for (;;)
        	        {
        	            int alt410=2;
        	            switch ( LA(1) )
        	            {
        	            case COMMA_SYMBOL:
        	            	{
        	            		alt410=1;
        	            	}
        	                break;

        	            }

        	            switch (alt410)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1548:57: COMMA_SYMBOL lock_item
        	        	    {
        	        	        COMMA_SYMBOL1169 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_lock_statement6611);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulelock_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        COMMA_SYMBOL1169_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1169));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1169_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_lock_item_in_lock_statement6613);
        	        	        lock_item1170=lock_item(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulelock_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, lock_item1170.tree);

        	        	    }
        	        	    break;

        	        	default:
        	        	    goto loop410;	/* break out of the loop */
        	        	    break;
        	            }
        	        }
        	        loop410: ; /* Jump out to here if this rule does not match */


        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1549:4: UNLOCK_SYMBOL ^ ( TABLES_SYMBOL | TABLE_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        UNLOCK_SYMBOL1171 = (pANTLR3_COMMON_TOKEN) MATCHT(UNLOCK_SYMBOL, &FOLLOW_UNLOCK_SYMBOL_in_lock_statement6620);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelock_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        UNLOCK_SYMBOL1171_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNLOCK_SYMBOL1171))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, UNLOCK_SYMBOL1171_tree, root_0));
        	        }

        	        set1172=(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, set1172))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>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:1552: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_ref1173;
    #undef	RETURN_TYPE_table_ref1173
    #define	RETURN_TYPE_table_ref1173 MySQLParser_table_ref_return

    MySQLParser_table_alias_return table_alias1174;
    #undef	RETURN_TYPE_table_alias1174
    #define	RETURN_TYPE_table_alias1174 MySQLParser_table_alias_return

    MySQLParser_lock_option_return lock_option1175;
    #undef	RETURN_TYPE_lock_option1175
    #define	RETURN_TYPE_lock_option1175 MySQLParser_lock_option_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    table_ref1173.tree = NULL;

    table_alias1174.tree = NULL;

    lock_option1175.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:1552:10: ( table_ref ( table_alias )? lock_option )
        // MySQL.g:1553:2: table_ref ( table_alias )? lock_option
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_table_ref_in_lock_item6638);
            table_ref1173=table_ref(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulelock_itemEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref1173.tree);

            // MySQL.g:1553:12: ( table_alias )?
            {
                int alt412=2;
                {
                    int LA412_0 = LA(1);
                    if ( (((LA412_0 >= ACCOUNT_SYMBOL) && (LA412_0 <= YEAR_SYMBOL)) || LA412_0 == AS_SYMBOL || LA412_0 == BACK_TICK_QUOTED_ID || LA412_0 == DOUBLE_QUOTED_TEXT || LA412_0 == EQUAL_OPERATOR || LA412_0 == IDENTIFIER))
                    {
                        alt412=1;
                    }
                }
                switch (alt412)
                {
            	case 1:
            	    // MySQL.g:1553:12: table_alias
            	    {
            	        FOLLOWPUSH(FOLLOW_table_alias_in_lock_item6640);
            	        table_alias1174=table_alias(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulelock_itemEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_alias1174.tree);

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_lock_option_in_lock_item6643);
            lock_option1175=lock_option(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulelock_itemEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, lock_option1175.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:1556: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_SYMBOL1176;
    pANTLR3_COMMON_TOKEN    LOCAL_SYMBOL1177;
    pANTLR3_COMMON_TOKEN    LOW_PRIORITY_SYMBOL1178;
    pANTLR3_COMMON_TOKEN    WRITE_SYMBOL1179;

    pANTLR3_BASE_TREE READ_SYMBOL1176_tree;
    pANTLR3_BASE_TREE LOCAL_SYMBOL1177_tree;
    pANTLR3_BASE_TREE LOW_PRIORITY_SYMBOL1178_tree;
    pANTLR3_BASE_TREE WRITE_SYMBOL1179_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    READ_SYMBOL1176       = NULL;
    LOCAL_SYMBOL1177       = NULL;
    LOW_PRIORITY_SYMBOL1178       = NULL;
    WRITE_SYMBOL1179       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    READ_SYMBOL1176_tree   = NULL;
    LOCAL_SYMBOL1177_tree   = NULL;
    LOW_PRIORITY_SYMBOL1178_tree   = NULL;
    WRITE_SYMBOL1179_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1556:12: ( READ_SYMBOL ( LOCAL_SYMBOL )? | ( LOW_PRIORITY_SYMBOL )? WRITE_SYMBOL )

            ANTLR3_UINT32 alt415;

            alt415=2;

            switch ( LA(1) )
            {
            case READ_SYMBOL:
            	{
            		alt415=1;
            	}
                break;
            case LOW_PRIORITY_SYMBOL:
            case WRITE_SYMBOL:
            	{
            		alt415=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 415;
                EXCEPTION->state        = 0;


                goto rulelock_optionEx;

            }

            switch (alt415)
            {
        	case 1:
        	    // MySQL.g:1557:2: READ_SYMBOL ( LOCAL_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        READ_SYMBOL1176 = (pANTLR3_COMMON_TOKEN) MATCHT(READ_SYMBOL, &FOLLOW_READ_SYMBOL_in_lock_option6652);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelock_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        READ_SYMBOL1176_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, READ_SYMBOL1176));
        	        ADAPTOR->addChild(ADAPTOR, root_0, READ_SYMBOL1176_tree);
        	        }

        	        // MySQL.g:1557:14: ( LOCAL_SYMBOL )?
        	        {
        	            int alt413=2;
        	            switch ( LA(1) )
        	            {
        	                case LOCAL_SYMBOL:
        	                	{
        	                		alt413=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt413)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1557:14: LOCAL_SYMBOL
        	        	    {
        	        	        LOCAL_SYMBOL1177 = (pANTLR3_COMMON_TOKEN) MATCHT(LOCAL_SYMBOL, &FOLLOW_LOCAL_SYMBOL_in_lock_option6654);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulelock_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        LOCAL_SYMBOL1177_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOCAL_SYMBOL1177));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, LOCAL_SYMBOL1177_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1558:4: ( LOW_PRIORITY_SYMBOL )? WRITE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:1558:4: ( LOW_PRIORITY_SYMBOL )?
        	        {
        	            int alt414=2;
        	            switch ( LA(1) )
        	            {
        	                case LOW_PRIORITY_SYMBOL:
        	                	{
        	                		alt414=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt414)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1558:4: LOW_PRIORITY_SYMBOL
        	        	    {
        	        	        LOW_PRIORITY_SYMBOL1178 = (pANTLR3_COMMON_TOKEN) MATCHT(LOW_PRIORITY_SYMBOL, &FOLLOW_LOW_PRIORITY_SYMBOL_in_lock_option6660);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulelock_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        LOW_PRIORITY_SYMBOL1178_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOW_PRIORITY_SYMBOL1178));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, LOW_PRIORITY_SYMBOL1178_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        WRITE_SYMBOL1179 = (pANTLR3_COMMON_TOKEN) MATCHT(WRITE_SYMBOL, &FOLLOW_WRITE_SYMBOL_in_lock_option6663);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelock_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        WRITE_SYMBOL1179_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WRITE_SYMBOL1179));
        	        ADAPTOR->addChild(ADAPTOR, root_0, WRITE_SYMBOL1179_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:1561: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_SYMBOL1180;
    pANTLR3_COMMON_TOKEN    set1181;
    pANTLR3_COMMON_TOKEN    set1183;
    pANTLR3_COMMON_TOKEN    END_SYMBOL1184;
    pANTLR3_COMMON_TOKEN    SUSPEND_SYMBOL1186;
    pANTLR3_COMMON_TOKEN    FOR_SYMBOL1187;
    pANTLR3_COMMON_TOKEN    MIGRATE_SYMBOL1188;
    pANTLR3_COMMON_TOKEN    PREPARE_SYMBOL1189;
    pANTLR3_COMMON_TOKEN    COMMIT_SYMBOL1191;
    pANTLR3_COMMON_TOKEN    ONE_SYMBOL1193;
    pANTLR3_COMMON_TOKEN    PHASE_SYMBOL1194;
    pANTLR3_COMMON_TOKEN    ROLLBACK_SYMBOL1195;
    pANTLR3_COMMON_TOKEN    RECOVER_SYMBOL1197;
    MySQLParser_xid_return xid1182;
    #undef	RETURN_TYPE_xid1182
    #define	RETURN_TYPE_xid1182 MySQLParser_xid_return

    MySQLParser_xid_return xid1185;
    #undef	RETURN_TYPE_xid1185
    #define	RETURN_TYPE_xid1185 MySQLParser_xid_return

    MySQLParser_xid_return xid1190;
    #undef	RETURN_TYPE_xid1190
    #define	RETURN_TYPE_xid1190 MySQLParser_xid_return

    MySQLParser_xid_return xid1192;
    #undef	RETURN_TYPE_xid1192
    #define	RETURN_TYPE_xid1192 MySQLParser_xid_return

    MySQLParser_xid_return xid1196;
    #undef	RETURN_TYPE_xid1196
    #define	RETURN_TYPE_xid1196 MySQLParser_xid_return

    MySQLParser_xa_convert_return xa_convert1198;
    #undef	RETURN_TYPE_xa_convert1198
    #define	RETURN_TYPE_xa_convert1198 MySQLParser_xa_convert_return

    pANTLR3_BASE_TREE XA_SYMBOL1180_tree;
    pANTLR3_BASE_TREE set1181_tree;
    pANTLR3_BASE_TREE set1183_tree;
    pANTLR3_BASE_TREE END_SYMBOL1184_tree;
    pANTLR3_BASE_TREE SUSPEND_SYMBOL1186_tree;
    pANTLR3_BASE_TREE FOR_SYMBOL1187_tree;
    pANTLR3_BASE_TREE MIGRATE_SYMBOL1188_tree;
    pANTLR3_BASE_TREE PREPARE_SYMBOL1189_tree;
    pANTLR3_BASE_TREE COMMIT_SYMBOL1191_tree;
    pANTLR3_BASE_TREE ONE_SYMBOL1193_tree;
    pANTLR3_BASE_TREE PHASE_SYMBOL1194_tree;
    pANTLR3_BASE_TREE ROLLBACK_SYMBOL1195_tree;
    pANTLR3_BASE_TREE RECOVER_SYMBOL1197_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    XA_SYMBOL1180       = NULL;
    set1181       = NULL;
    set1183       = NULL;
    END_SYMBOL1184       = NULL;
    SUSPEND_SYMBOL1186       = NULL;
    FOR_SYMBOL1187       = NULL;
    MIGRATE_SYMBOL1188       = NULL;
    PREPARE_SYMBOL1189       = NULL;
    COMMIT_SYMBOL1191       = NULL;
    ONE_SYMBOL1193       = NULL;
    PHASE_SYMBOL1194       = NULL;
    ROLLBACK_SYMBOL1195       = NULL;
    RECOVER_SYMBOL1197       = NULL;
    xid1182.tree = NULL;

    xid1185.tree = NULL;

    xid1190.tree = NULL;

    xid1192.tree = NULL;

    xid1196.tree = NULL;

    xa_convert1198.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    XA_SYMBOL1180_tree   = NULL;
    set1181_tree   = NULL;
    set1183_tree   = NULL;
    END_SYMBOL1184_tree   = NULL;
    SUSPEND_SYMBOL1186_tree   = NULL;
    FOR_SYMBOL1187_tree   = NULL;
    MIGRATE_SYMBOL1188_tree   = NULL;
    PREPARE_SYMBOL1189_tree   = NULL;
    COMMIT_SYMBOL1191_tree   = NULL;
    ONE_SYMBOL1193_tree   = NULL;
    PHASE_SYMBOL1194_tree   = NULL;
    ROLLBACK_SYMBOL1195_tree   = NULL;
    RECOVER_SYMBOL1197_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1561: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:1562: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_SYMBOL1180 = (pANTLR3_COMMON_TOKEN) MATCHT(XA_SYMBOL, &FOLLOW_XA_SYMBOL_in_xa_statement6673);
            if  (HASEXCEPTION())
            {
                goto rulexa_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            XA_SYMBOL1180_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, XA_SYMBOL1180))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, XA_SYMBOL1180_tree, root_0));
            }

            // MySQL.g:1563: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 alt420=6;
                switch ( LA(1) )
                {
                case BEGIN_SYMBOL:
                case START_SYMBOL:
                	{
                		alt420=1;
                	}
                    break;
                case END_SYMBOL:
                	{
                		alt420=2;
                	}
                    break;
                case PREPARE_SYMBOL:
                	{
                		alt420=3;
                	}
                    break;
                case COMMIT_SYMBOL:
                	{
                		alt420=4;
                	}
                    break;
                case ROLLBACK_SYMBOL:
                	{
                		alt420=5;
                	}
                    break;
                case RECOVER_SYMBOL:
                	{
                		alt420=6;
                	}
                    break;

                default:
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }

                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 420;
                    EXCEPTION->state        = 0;


                    goto rulexa_statementEx;

                }

                switch (alt420)
                {
            	case 1:
            	    // MySQL.g:1564:4: ( START_SYMBOL | BEGIN_SYMBOL ) xid ( JOIN_SYMBOL | RESUME_SYMBOL )?
            	    {
            	        set1181=(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, set1181))
            	            );
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

            	        }
            	        else
            	        {
            	            if (BACKTRACKING>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_statement6691);
            	        xid1182=xid(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulexa_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, xid1182.tree);

            	        // MySQL.g:1564:38: ( JOIN_SYMBOL | RESUME_SYMBOL )?
            	        {
            	            int alt416=2;
            	            switch ( LA(1) )
            	            {
            	                case RESUME_SYMBOL:
            	                case JOIN_SYMBOL:
            	                	{
            	                		alt416=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt416)
            	            {
            	        	case 1:
            	        	    // MySQL.g:
            	        	    {
            	        	        set1183=(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, set1183))
            	        	            );
            	        	            PERRORRECOVERY=ANTLR3_FALSE;
            	        	            FAILEDFLAG=ANTLR3_FALSE;

            	        	        }
            	        	        else
            	        	        {
            	        	            if (BACKTRACKING>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:1565:6: END_SYMBOL xid ( SUSPEND_SYMBOL ( FOR_SYMBOL MIGRATE_SYMBOL )? )?
            	    {
            	        END_SYMBOL1184 = (pANTLR3_COMMON_TOKEN) MATCHT(END_SYMBOL, &FOLLOW_END_SYMBOL_in_xa_statement6707);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulexa_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        END_SYMBOL1184_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, END_SYMBOL1184));
            	        ADAPTOR->addChild(ADAPTOR, root_0, END_SYMBOL1184_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_xid_in_xa_statement6709);
            	        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:1565:21: ( SUSPEND_SYMBOL ( FOR_SYMBOL MIGRATE_SYMBOL )? )?
            	        {
            	            int alt418=2;
            	            switch ( LA(1) )
            	            {
            	                case SUSPEND_SYMBOL:
            	                	{
            	                		alt418=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt418)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1565:22: SUSPEND_SYMBOL ( FOR_SYMBOL MIGRATE_SYMBOL )?
            	        	    {
            	        	        SUSPEND_SYMBOL1186 = (pANTLR3_COMMON_TOKEN) MATCHT(SUSPEND_SYMBOL, &FOLLOW_SUSPEND_SYMBOL_in_xa_statement6712);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulexa_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        SUSPEND_SYMBOL1186_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SUSPEND_SYMBOL1186));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, SUSPEND_SYMBOL1186_tree);
            	        	        }

            	        	        // MySQL.g:1565:37: ( FOR_SYMBOL MIGRATE_SYMBOL )?
            	        	        {
            	        	            int alt417=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case FOR_SYMBOL:
            	        	                	{
            	        	                		alt417=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt417)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:1565:38: FOR_SYMBOL MIGRATE_SYMBOL
            	        	        	    {
            	        	        	        FOR_SYMBOL1187 = (pANTLR3_COMMON_TOKEN) MATCHT(FOR_SYMBOL, &FOLLOW_FOR_SYMBOL_in_xa_statement6715);
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulexa_statementEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) {
            	        	        	        FOR_SYMBOL1187_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOR_SYMBOL1187));
            	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, FOR_SYMBOL1187_tree);
            	        	        	        }

            	        	        	        MIGRATE_SYMBOL1188 = (pANTLR3_COMMON_TOKEN) MATCHT(MIGRATE_SYMBOL, &FOLLOW_MIGRATE_SYMBOL_in_xa_statement6717);
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulexa_statementEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) {
            	        	        	        MIGRATE_SYMBOL1188_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MIGRATE_SYMBOL1188));
            	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, MIGRATE_SYMBOL1188_tree);
            	        	        	        }

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:1566:6: PREPARE_SYMBOL xid
            	    {
            	        PREPARE_SYMBOL1189 = (pANTLR3_COMMON_TOKEN) MATCHT(PREPARE_SYMBOL, &FOLLOW_PREPARE_SYMBOL_in_xa_statement6728);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulexa_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        PREPARE_SYMBOL1189_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PREPARE_SYMBOL1189));
            	        ADAPTOR->addChild(ADAPTOR, root_0, PREPARE_SYMBOL1189_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_xid_in_xa_statement6730);
            	        xid1190=xid(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulexa_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, xid1190.tree);

            	    }
            	    break;
            	case 4:
            	    // MySQL.g:1567:6: COMMIT_SYMBOL xid ( ONE_SYMBOL PHASE_SYMBOL )?
            	    {
            	        COMMIT_SYMBOL1191 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMIT_SYMBOL, &FOLLOW_COMMIT_SYMBOL_in_xa_statement6737);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulexa_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMIT_SYMBOL1191_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMIT_SYMBOL1191));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMIT_SYMBOL1191_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_xid_in_xa_statement6739);
            	        xid1192=xid(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulexa_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, xid1192.tree);

            	        // MySQL.g:1567:24: ( ONE_SYMBOL PHASE_SYMBOL )?
            	        {
            	            int alt419=2;
            	            switch ( LA(1) )
            	            {
            	                case ONE_SYMBOL:
            	                	{
            	                		alt419=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt419)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1567:25: ONE_SYMBOL PHASE_SYMBOL
            	        	    {
            	        	        ONE_SYMBOL1193 = (pANTLR3_COMMON_TOKEN) MATCHT(ONE_SYMBOL, &FOLLOW_ONE_SYMBOL_in_xa_statement6742);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulexa_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        ONE_SYMBOL1193_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ONE_SYMBOL1193));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, ONE_SYMBOL1193_tree);
            	        	        }

            	        	        PHASE_SYMBOL1194 = (pANTLR3_COMMON_TOKEN) MATCHT(PHASE_SYMBOL, &FOLLOW_PHASE_SYMBOL_in_xa_statement6744);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulexa_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        PHASE_SYMBOL1194_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PHASE_SYMBOL1194));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, PHASE_SYMBOL1194_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 5:
            	    // MySQL.g:1568:6: ROLLBACK_SYMBOL xid
            	    {
            	        ROLLBACK_SYMBOL1195 = (pANTLR3_COMMON_TOKEN) MATCHT(ROLLBACK_SYMBOL, &FOLLOW_ROLLBACK_SYMBOL_in_xa_statement6753);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulexa_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ROLLBACK_SYMBOL1195_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ROLLBACK_SYMBOL1195));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ROLLBACK_SYMBOL1195_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_xid_in_xa_statement6755);
            	        xid1196=xid(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulexa_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, xid1196.tree);

            	    }
            	    break;
            	case 6:
            	    // MySQL.g:1569:6: RECOVER_SYMBOL xa_convert
            	    {
            	        RECOVER_SYMBOL1197 = (pANTLR3_COMMON_TOKEN) MATCHT(RECOVER_SYMBOL, &FOLLOW_RECOVER_SYMBOL_in_xa_statement6762);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulexa_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        RECOVER_SYMBOL1197_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RECOVER_SYMBOL1197));
            	        ADAPTOR->addChild(ADAPTOR, root_0, RECOVER_SYMBOL1197_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_xa_convert_in_xa_statement6764);
            	        xa_convert1198=xa_convert(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulexa_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, xa_convert1198.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:1573: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_SYMBOL1199;
    pANTLR3_COMMON_TOKEN    XID_SYMBOL1200;

    pANTLR3_BASE_TREE CONVERT_SYMBOL1199_tree;
    pANTLR3_BASE_TREE XID_SYMBOL1200_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CONVERT_SYMBOL1199       = NULL;
    XID_SYMBOL1200       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CONVERT_SYMBOL1199_tree   = NULL;
    XID_SYMBOL1200_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1573:11: ({...}? ( CONVERT_SYMBOL XID_SYMBOL )? |)

            ANTLR3_UINT32 alt422;

            alt422=2;

            switch ( LA(1) )
            {
            case CONVERT_SYMBOL:
            	{
            		alt422=1;
            	}
                break;
            case SEMICOLON_SYMBOL:
            	{
            		{
            		    int LA422_2 = LA(2);
            		    if ( ((SERVER_VERSION >= 50704)))
            		    {
            		        alt422=1;
            		    }
            		    else if ( (ANTLR3_TRUE))
            		    {
            		        alt422=2;
            		    }
            		    else
            		    {
            		        if (BACKTRACKING>0)
            		        {
            		            FAILEDFLAG = ANTLR3_TRUE;
            		            return retval;
            		        }


            		        CONSTRUCTEX();
            		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            		        EXCEPTION->message      = (void *)"";
            		        EXCEPTION->decisionNum  = 422;
            		        EXCEPTION->state        = 2;


            		        goto rulexa_convertEx;

            		    }
            		}
            	}
                break;
            case EOF:
            	{
            		{
            		    int LA422_3 = LA(2);
            		    if ( ((SERVER_VERSION >= 50704)))
            		    {
            		        alt422=1;
            		    }
            		    else if ( (ANTLR3_TRUE))
            		    {
            		        alt422=2;
            		    }
            		    else
            		    {
            		        if (BACKTRACKING>0)
            		        {
            		            FAILEDFLAG = ANTLR3_TRUE;
            		            return retval;
            		        }


            		        CONSTRUCTEX();
            		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            		        EXCEPTION->message      = (void *)"";
            		        EXCEPTION->decisionNum  = 422;
            		        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  = 422;
                EXCEPTION->state        = 0;


                goto rulexa_convertEx;

            }

            switch (alt422)
            {
        	case 1:
        	    // MySQL.g:1574: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:1574:29: ( CONVERT_SYMBOL XID_SYMBOL )?
        	        {
        	            int alt421=2;
        	            switch ( LA(1) )
        	            {
        	                case CONVERT_SYMBOL:
        	                	{
        	                		alt421=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt421)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1574:30: CONVERT_SYMBOL XID_SYMBOL
        	        	    {
        	        	        CONVERT_SYMBOL1199 = (pANTLR3_COMMON_TOKEN) MATCHT(CONVERT_SYMBOL, &FOLLOW_CONVERT_SYMBOL_in_xa_convert6780);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulexa_convertEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        CONVERT_SYMBOL1199_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CONVERT_SYMBOL1199));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, CONVERT_SYMBOL1199_tree);
        	        	        }

        	        	        XID_SYMBOL1200 = (pANTLR3_COMMON_TOKEN) MATCHT(XID_SYMBOL, &FOLLOW_XID_SYMBOL_in_xa_convert6782);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulexa_convertEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        XID_SYMBOL1200_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, XID_SYMBOL1200));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, XID_SYMBOL1200_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1576: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:1578: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_SYMBOL1202;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1204;
    MySQLParser_text_string_return text_string1201;
    #undef	RETURN_TYPE_text_string1201
    #define	RETURN_TYPE_text_string1201 MySQLParser_text_string_return

    MySQLParser_text_string_return text_string1203;
    #undef	RETURN_TYPE_text_string1203
    #define	RETURN_TYPE_text_string1203 MySQLParser_text_string_return

    MySQLParser_ulong_number_return ulong_number1205;
    #undef	RETURN_TYPE_ulong_number1205
    #define	RETURN_TYPE_ulong_number1205 MySQLParser_ulong_number_return

    pANTLR3_BASE_TREE COMMA_SYMBOL1202_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1204_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_SYMBOL1202       = NULL;
    COMMA_SYMBOL1204       = NULL;
    text_string1201.tree = NULL;

    text_string1203.tree = NULL;

    ulong_number1205.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL1202_tree   = NULL;
    COMMA_SYMBOL1204_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:1578: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:1579:2: text_string ( COMMA_SYMBOL text_string ( COMMA_SYMBOL ulong_number )? )?
        {
            FOLLOWPUSH(FOLLOW_text_string_in_xid6798);
            text_string1201=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_string1201.tree, NULL); }

            // MySQL.g:1579:14: ( COMMA_SYMBOL text_string ( COMMA_SYMBOL ulong_number )? )?
            {
                int alt424=2;
                switch ( LA(1) )
                {
                    case COMMA_SYMBOL:
                    	{
                    		alt424=1;
                    	}
                        break;
                }

                switch (alt424)
                {
            	case 1:
            	    // MySQL.g:1579:15: COMMA_SYMBOL text_string ( COMMA_SYMBOL ulong_number )?
            	    {
            	        COMMA_SYMBOL1202 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_xid6801);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulexidEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }
            	         
            	        if ( BACKTRACKING==0 ) { CREATE_stream_COMMA_SYMBOL; stream_COMMA_SYMBOL->add(stream_COMMA_SYMBOL, COMMA_SYMBOL1202, NULL); }


            	        FOLLOWPUSH(FOLLOW_text_string_in_xid6803);
            	        text_string1203=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_string1203.tree, NULL); }

            	        // MySQL.g:1579:40: ( COMMA_SYMBOL ulong_number )?
            	        {
            	            int alt423=2;
            	            switch ( LA(1) )
            	            {
            	                case COMMA_SYMBOL:
            	                	{
            	                		alt423=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt423)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1579:41: COMMA_SYMBOL ulong_number
            	        	    {
            	        	        COMMA_SYMBOL1204 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_xid6806);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulexidEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }
            	        	         
            	        	        if ( BACKTRACKING==0 ) { CREATE_stream_COMMA_SYMBOL; stream_COMMA_SYMBOL->add(stream_COMMA_SYMBOL, COMMA_SYMBOL1204, NULL); }


            	        	        FOLLOWPUSH(FOLLOW_ulong_number_in_xid6808);
            	        	        ulong_number1205=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_number1205.tree, NULL); }

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

                }
            }

            /* AST REWRITE
             * elements          : ulong_number, COMMA_SYMBOL, text_string, text_string, 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;
            	// 1580:3: -> ^( XA_ID_TOKEN text_string ( COMMA_SYMBOL text_string ( COMMA_SYMBOL ulong_number )? )? )
            	{
            	    // MySQL.g:1580: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:1580:32: ( COMMA_SYMBOL text_string ( 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)) || (stream_text_string != NULL && stream_text_string->hasNext(stream_text_string)) || (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:1580: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_ulong_number != NULL) stream_ulong_number->reset(stream_ulong_number);
            	        	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_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:1585: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_SYMBOL1206;
    pANTLR3_COMMON_TOKEN    set1207;
    pANTLR3_COMMON_TOKEN    LOGS_SYMBOL1208;
    pANTLR3_COMMON_TOKEN    TO_SYMBOL1209;
    pANTLR3_COMMON_TOKEN    BEFORE_SYMBOL1211;
    MySQLParser_string_literal_return string_literal1210;
    #undef	RETURN_TYPE_string_literal1210
    #define	RETURN_TYPE_string_literal1210 MySQLParser_string_literal_return

    MySQLParser_expression_return expression1212;
    #undef	RETURN_TYPE_expression1212
    #define	RETURN_TYPE_expression1212 MySQLParser_expression_return

    MySQLParser_change_master_return change_master1213;
    #undef	RETURN_TYPE_change_master1213
    #define	RETURN_TYPE_change_master1213 MySQLParser_change_master_return

    MySQLParser_change_replication_return change_replication1214;
    #undef	RETURN_TYPE_change_replication1214
    #define	RETURN_TYPE_change_replication1214 MySQLParser_change_replication_return

    MySQLParser_slave_return slave1215;
    #undef	RETURN_TYPE_slave1215
    #define	RETURN_TYPE_slave1215 MySQLParser_slave_return

    MySQLParser_replication_load_return replication_load1216;
    #undef	RETURN_TYPE_replication_load1216
    #define	RETURN_TYPE_replication_load1216 MySQLParser_replication_load_return

    MySQLParser_group_replication_return group_replication1217;
    #undef	RETURN_TYPE_group_replication1217
    #define	RETURN_TYPE_group_replication1217 MySQLParser_group_replication_return

    pANTLR3_BASE_TREE PURGE_SYMBOL1206_tree;
    pANTLR3_BASE_TREE set1207_tree;
    pANTLR3_BASE_TREE LOGS_SYMBOL1208_tree;
    pANTLR3_BASE_TREE TO_SYMBOL1209_tree;
    pANTLR3_BASE_TREE BEFORE_SYMBOL1211_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    PURGE_SYMBOL1206       = NULL;
    set1207       = NULL;
    LOGS_SYMBOL1208       = NULL;
    TO_SYMBOL1209       = NULL;
    BEFORE_SYMBOL1211       = NULL;
    string_literal1210.tree = NULL;

    expression1212.tree = NULL;

    change_master1213.tree = NULL;

    change_replication1214.tree = NULL;

    slave1215.tree = NULL;

    replication_load1216.tree = NULL;

    group_replication1217.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    PURGE_SYMBOL1206_tree   = NULL;
    set1207_tree   = NULL;
    LOGS_SYMBOL1208_tree   = NULL;
    TO_SYMBOL1209_tree   = NULL;
    BEFORE_SYMBOL1211_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1585: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 alt426;

            alt426=6;

            switch ( LA(1) )
            {
            case PURGE_SYMBOL:
            	{
            		alt426=1;
            	}
                break;
            case CHANGE_SYMBOL:
            	{
            		switch ( LA(2) )
            		{
            		case MASTER_SYMBOL:
            			{
            				alt426=2;
            			}
            		    break;
            		case REPLICATION_SYMBOL:
            			{
            				alt426=3;
            			}
            		    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        = 2;


            		    goto rulereplication_statementEx;

            		}

            	}
                break;
            case START_SYMBOL:
            	{
            		switch ( LA(2) )
            		{
            		case SLAVE_SYMBOL:
            			{
            				alt426=4;
            			}
            		    break;
            		case GROUP_REPLICATION_SYMBOL:
            			{
            				alt426=6;
            			}
            		    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        = 3;


            		    goto rulereplication_statementEx;

            		}

            	}
                break;
            case STOP_SYMBOL:
            	{
            		switch ( LA(2) )
            		{
            		case SLAVE_SYMBOL:
            			{
            				alt426=4;
            			}
            		    break;
            		case GROUP_REPLICATION_SYMBOL:
            			{
            				alt426=6;
            			}
            		    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        = 4;


            		    goto rulereplication_statementEx;

            		}

            	}
                break;
            case LOAD_SYMBOL:
            	{
            		alt426=5;
            	}
                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_statementEx;

            }

            switch (alt426)
            {
        	case 1:
        	    // MySQL.g:1586: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_SYMBOL1206 = (pANTLR3_COMMON_TOKEN) MATCHT(PURGE_SYMBOL, &FOLLOW_PURGE_SYMBOL_in_replication_statement6847);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereplication_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PURGE_SYMBOL1206_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PURGE_SYMBOL1206))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, PURGE_SYMBOL1206_tree, root_0));
        	        }

        	        set1207=(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, set1207))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>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_SYMBOL1208 = (pANTLR3_COMMON_TOKEN) MATCHT(LOGS_SYMBOL, &FOLLOW_LOGS_SYMBOL_in_replication_statement6858);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereplication_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LOGS_SYMBOL1208_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOGS_SYMBOL1208));
        	        ADAPTOR->addChild(ADAPTOR, root_0, LOGS_SYMBOL1208_tree);
        	        }

        	        // MySQL.g:1586:60: ( TO_SYMBOL string_literal | BEFORE_SYMBOL expression )
        	        {
        	            int alt425=2;
        	            switch ( LA(1) )
        	            {
        	            case TO_SYMBOL:
        	            	{
        	            		alt425=1;
        	            	}
        	                break;
        	            case BEFORE_SYMBOL:
        	            	{
        	            		alt425=2;
        	            	}
        	                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:1586:61: TO_SYMBOL string_literal
        	        	    {
        	        	        TO_SYMBOL1209 = (pANTLR3_COMMON_TOKEN) MATCHT(TO_SYMBOL, &FOLLOW_TO_SYMBOL_in_replication_statement6861);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulereplication_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        TO_SYMBOL1209_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TO_SYMBOL1209));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, TO_SYMBOL1209_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_string_literal_in_replication_statement6863);
        	        	        string_literal1210=string_literal(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulereplication_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal1210.tree);

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:1586:88: BEFORE_SYMBOL expression
        	        	    {
        	        	        BEFORE_SYMBOL1211 = (pANTLR3_COMMON_TOKEN) MATCHT(BEFORE_SYMBOL, &FOLLOW_BEFORE_SYMBOL_in_replication_statement6867);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulereplication_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        BEFORE_SYMBOL1211_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BEFORE_SYMBOL1211));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, BEFORE_SYMBOL1211_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_expression_in_replication_statement6869);
        	        	        expression1212=expression(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulereplication_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1212.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1587:4: change_master
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_change_master_in_replication_statement6875);
        	        change_master1213=change_master(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereplication_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, change_master1213.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1588: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_statement6882);
        	        change_replication1214=change_replication(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereplication_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, change_replication1214.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1593:4: slave
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_slave_in_replication_statement6890);
        	        slave1215=slave(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereplication_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, slave1215.tree);

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:1594: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_statement6897);
        	        replication_load1216=replication_load(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereplication_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, replication_load1216.tree);

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:1595: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_statement6904);
        	        group_replication1217=group_replication(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereplication_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, group_replication1217.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:1598: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_SYMBOL1218;
    pANTLR3_COMMON_TOKEN    DATA_SYMBOL1219;
    pANTLR3_COMMON_TOKEN    TABLE_SYMBOL1220;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL1222;
    pANTLR3_COMMON_TOKEN    MASTER_SYMBOL1223;
    MySQLParser_table_ref_return table_ref1221;
    #undef	RETURN_TYPE_table_ref1221
    #define	RETURN_TYPE_table_ref1221 MySQLParser_table_ref_return

    pANTLR3_BASE_TREE LOAD_SYMBOL1218_tree;
    pANTLR3_BASE_TREE DATA_SYMBOL1219_tree;
    pANTLR3_BASE_TREE TABLE_SYMBOL1220_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL1222_tree;
    pANTLR3_BASE_TREE MASTER_SYMBOL1223_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    LOAD_SYMBOL1218       = NULL;
    DATA_SYMBOL1219       = NULL;
    TABLE_SYMBOL1220       = NULL;
    FROM_SYMBOL1222       = NULL;
    MASTER_SYMBOL1223       = NULL;
    table_ref1221.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    LOAD_SYMBOL1218_tree   = NULL;
    DATA_SYMBOL1219_tree   = NULL;
    TABLE_SYMBOL1220_tree   = NULL;
    FROM_SYMBOL1222_tree   = NULL;
    MASTER_SYMBOL1223_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1598:17: ( LOAD_SYMBOL ^ ( DATA_SYMBOL | TABLE_SYMBOL table_ref ) FROM_SYMBOL MASTER_SYMBOL )
        // MySQL.g:1599:2: LOAD_SYMBOL ^ ( DATA_SYMBOL | TABLE_SYMBOL table_ref ) FROM_SYMBOL MASTER_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            LOAD_SYMBOL1218 = (pANTLR3_COMMON_TOKEN) MATCHT(LOAD_SYMBOL, &FOLLOW_LOAD_SYMBOL_in_replication_load6913);
            if  (HASEXCEPTION())
            {
                goto rulereplication_loadEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            LOAD_SYMBOL1218_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOAD_SYMBOL1218))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, LOAD_SYMBOL1218_tree, root_0));
            }

            // MySQL.g:1599:15: ( DATA_SYMBOL | TABLE_SYMBOL table_ref )
            {
                int alt427=2;
                switch ( LA(1) )
                {
                case DATA_SYMBOL:
                	{
                		alt427=1;
                	}
                    break;
                case TABLE_SYMBOL:
                	{
                		alt427=2;
                	}
                    break;

                default:
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }

                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 427;
                    EXCEPTION->state        = 0;


                    goto rulereplication_loadEx;

                }

                switch (alt427)
                {
            	case 1:
            	    // MySQL.g:1599:16: DATA_SYMBOL
            	    {
            	        DATA_SYMBOL1219 = (pANTLR3_COMMON_TOKEN) MATCHT(DATA_SYMBOL, &FOLLOW_DATA_SYMBOL_in_replication_load6917);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulereplication_loadEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DATA_SYMBOL1219_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATA_SYMBOL1219));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DATA_SYMBOL1219_tree);
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1599:30: TABLE_SYMBOL table_ref
            	    {
            	        TABLE_SYMBOL1220 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLE_SYMBOL, &FOLLOW_TABLE_SYMBOL_in_replication_load6921);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulereplication_loadEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        TABLE_SYMBOL1220_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLE_SYMBOL1220));
            	        ADAPTOR->addChild(ADAPTOR, root_0, TABLE_SYMBOL1220_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_table_ref_in_replication_load6923);
            	        table_ref1221=table_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulereplication_loadEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref1221.tree);

            	    }
            	    break;

                }
            }

            FROM_SYMBOL1222 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_replication_load6926);
            if  (HASEXCEPTION())
            {
                goto rulereplication_loadEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            FROM_SYMBOL1222_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL1222));
            ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL1222_tree);
            }

            MASTER_SYMBOL1223 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_SYMBOL, &FOLLOW_MASTER_SYMBOL_in_replication_load6928);
            if  (HASEXCEPTION())
            {
                goto rulereplication_loadEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            MASTER_SYMBOL1223_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_SYMBOL1223));
            ADAPTOR->addChild(ADAPTOR, root_0, MASTER_SYMBOL1223_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:1602: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_SYMBOL1224;
    pANTLR3_COMMON_TOKEN    MASTER_SYMBOL1225;
    pANTLR3_COMMON_TOKEN    TO_SYMBOL1226;
    MySQLParser_change_master_options_return change_master_options1227;
    #undef	RETURN_TYPE_change_master_options1227
    #define	RETURN_TYPE_change_master_options1227 MySQLParser_change_master_options_return

    MySQLParser_channel_return channel1228;
    #undef	RETURN_TYPE_channel1228
    #define	RETURN_TYPE_channel1228 MySQLParser_channel_return

    pANTLR3_BASE_TREE CHANGE_SYMBOL1224_tree;
    pANTLR3_BASE_TREE MASTER_SYMBOL1225_tree;
    pANTLR3_BASE_TREE TO_SYMBOL1226_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CHANGE_SYMBOL1224       = NULL;
    MASTER_SYMBOL1225       = NULL;
    TO_SYMBOL1226       = NULL;
    change_master_options1227.tree = NULL;

    channel1228.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CHANGE_SYMBOL1224_tree   = NULL;
    MASTER_SYMBOL1225_tree   = NULL;
    TO_SYMBOL1226_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1602:14: ( CHANGE_SYMBOL ^ MASTER_SYMBOL TO_SYMBOL change_master_options ( channel )? )
        // MySQL.g:1603:2: CHANGE_SYMBOL ^ MASTER_SYMBOL TO_SYMBOL change_master_options ( channel )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            CHANGE_SYMBOL1224 = (pANTLR3_COMMON_TOKEN) MATCHT(CHANGE_SYMBOL, &FOLLOW_CHANGE_SYMBOL_in_change_master6937);
            if  (HASEXCEPTION())
            {
                goto rulechange_masterEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CHANGE_SYMBOL1224_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHANGE_SYMBOL1224))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, CHANGE_SYMBOL1224_tree, root_0));
            }

            MASTER_SYMBOL1225 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_SYMBOL, &FOLLOW_MASTER_SYMBOL_in_change_master6940);
            if  (HASEXCEPTION())
            {
                goto rulechange_masterEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            MASTER_SYMBOL1225_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_SYMBOL1225));
            ADAPTOR->addChild(ADAPTOR, root_0, MASTER_SYMBOL1225_tree);
            }

            TO_SYMBOL1226 = (pANTLR3_COMMON_TOKEN) MATCHT(TO_SYMBOL, &FOLLOW_TO_SYMBOL_in_change_master6942);
            if  (HASEXCEPTION())
            {
                goto rulechange_masterEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            TO_SYMBOL1226_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TO_SYMBOL1226));
            ADAPTOR->addChild(ADAPTOR, root_0, TO_SYMBOL1226_tree);
            }

            FOLLOWPUSH(FOLLOW_change_master_options_in_change_master6944);
            change_master_options1227=change_master_options(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulechange_masterEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, change_master_options1227.tree);

            // MySQL.g:1603:63: ( channel )?
            {
                int alt428=2;
                {
                    int LA428_0 = LA(1);
                    if ( ((SERVER_VERSION >= 50706)) && (LA428_0 == FOR_SYMBOL))
                    {
                        alt428=1;
                    }
                }
                switch (alt428)
                {
            	case 1:
            	    // MySQL.g:1603:63: channel
            	    {
            	        FOLLOWPUSH(FOLLOW_channel_in_change_master6946);
            	        channel1228=channel(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulechange_masterEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, channel1228.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:1606: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_SYMBOL1230;
    MySQLParser_master_option_return master_option1229;
    #undef	RETURN_TYPE_master_option1229
    #define	RETURN_TYPE_master_option1229 MySQLParser_master_option_return

    MySQLParser_master_option_return master_option1231;
    #undef	RETURN_TYPE_master_option1231
    #define	RETURN_TYPE_master_option1231 MySQLParser_master_option_return

    pANTLR3_BASE_TREE COMMA_SYMBOL1230_tree;
    pANTLR3_REWRITE_RULE_TOKEN_STREAM stream_COMMA_SYMBOL;
    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_master_option;
    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL1230       = NULL;
    master_option1229.tree = NULL;

    master_option1231.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL1230_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:1606:22: ( master_option ( COMMA_SYMBOL master_option )* -> ^( CHANGE_MASTER_OPTIONS_TOKEN master_option ( COMMA_SYMBOL master_option )* ) )
        // MySQL.g:1607:2: master_option ( COMMA_SYMBOL master_option )*
        {
            FOLLOWPUSH(FOLLOW_master_option_in_change_master_options6956);
            master_option1229=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_option1229.tree, NULL); }

            // MySQL.g:1607:16: ( COMMA_SYMBOL master_option )*

            for (;;)
            {
                int alt429=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt429=1;
                	}
                    break;

                }

                switch (alt429)
                {
            	case 1:
            	    // MySQL.g:1607:17: COMMA_SYMBOL master_option
            	    {
            	        COMMA_SYMBOL1230 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_change_master_options6959);
            	        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_SYMBOL1230, NULL); }


            	        FOLLOWPUSH(FOLLOW_master_option_in_change_master_options6961);
            	        master_option1231=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_option1231.tree, NULL); }

            	    }
            	    break;

            	default:
            	    goto loop429;	/* break out of the loop */
            	    break;
                }
            }
            loop429: ; /* Jump out to here if this rule does not match */


            /* AST REWRITE
             * elements          : master_option, COMMA_SYMBOL, master_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;
            	// 1607:46: -> ^( CHANGE_MASTER_OPTIONS_TOKEN master_option ( COMMA_SYMBOL master_option )* )
            	{
            	    // MySQL.g:1607: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:1607: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:1610: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_SYMBOL1232;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1233;
    pANTLR3_COMMON_TOKEN    MASTER_BIND_SYMBOL1235;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1236;
    pANTLR3_COMMON_TOKEN    MASTER_USER_SYMBOL1238;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1239;
    pANTLR3_COMMON_TOKEN    MASTER_PASSWORD_SYMBOL1241;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1242;
    pANTLR3_COMMON_TOKEN    MASTER_PORT_SYMBOL1244;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1245;
    pANTLR3_COMMON_TOKEN    MASTER_CONNECT_RETRY_SYMBOL1247;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1248;
    pANTLR3_COMMON_TOKEN    MASTER_RETRY_COUNT_SYMBOL1250;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1251;
    pANTLR3_COMMON_TOKEN    MASTER_DELAY_SYMBOL1253;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1254;
    pANTLR3_COMMON_TOKEN    MASTER_SSL_SYMBOL1256;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1257;
    pANTLR3_COMMON_TOKEN    MASTER_SSL_CA_SYMBOL1259;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1260;
    pANTLR3_COMMON_TOKEN    MASTER_SSL_CAPATH_SYMBOL1262;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1263;
    pANTLR3_COMMON_TOKEN    MASTER_SSL_CERT_SYMBOL1265;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1266;
    pANTLR3_COMMON_TOKEN    MASTER_SSL_CIPHER_SYMBOL1268;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1269;
    pANTLR3_COMMON_TOKEN    MASTER_SSL_KEY_SYMBOL1271;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1272;
    pANTLR3_COMMON_TOKEN    MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL1274;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1275;
    pANTLR3_COMMON_TOKEN    MASTER_SSL_CRL_SYMBOL1277;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1278;
    pANTLR3_COMMON_TOKEN    MASTER_SSL_CRLPATH_SYMBOL1280;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1281;
    pANTLR3_COMMON_TOKEN    MASTER_HEARTBEAT_PERIOD_SYMBOL1283;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1284;
    pANTLR3_COMMON_TOKEN    IGNORE_SERVER_IDS_SYMBOL1286;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1287;
    pANTLR3_COMMON_TOKEN    MASTER_AUTO_POSITION_SYMBOL1289;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1290;
    MySQLParser_text_string_no_linebreak_return text_string_no_linebreak1234;
    #undef	RETURN_TYPE_text_string_no_linebreak1234
    #define	RETURN_TYPE_text_string_no_linebreak1234 MySQLParser_text_string_no_linebreak_return

    MySQLParser_text_string_no_linebreak_return text_string_no_linebreak1237;
    #undef	RETURN_TYPE_text_string_no_linebreak1237
    #define	RETURN_TYPE_text_string_no_linebreak1237 MySQLParser_text_string_no_linebreak_return

    MySQLParser_text_string_no_linebreak_return text_string_no_linebreak1240;
    #undef	RETURN_TYPE_text_string_no_linebreak1240
    #define	RETURN_TYPE_text_string_no_linebreak1240 MySQLParser_text_string_no_linebreak_return

    MySQLParser_text_string_no_linebreak_return text_string_no_linebreak1243;
    #undef	RETURN_TYPE_text_string_no_linebreak1243
    #define	RETURN_TYPE_text_string_no_linebreak1243 MySQLParser_text_string_no_linebreak_return

    MySQLParser_ulong_number_return ulong_number1246;
    #undef	RETURN_TYPE_ulong_number1246
    #define	RETURN_TYPE_ulong_number1246 MySQLParser_ulong_number_return

    MySQLParser_ulong_number_return ulong_number1249;
    #undef	RETURN_TYPE_ulong_number1249
    #define	RETURN_TYPE_ulong_number1249 MySQLParser_ulong_number_return

    MySQLParser_ulong_number_return ulong_number1252;
    #undef	RETURN_TYPE_ulong_number1252
    #define	RETURN_TYPE_ulong_number1252 MySQLParser_ulong_number_return

    MySQLParser_ulong_number_return ulong_number1255;
    #undef	RETURN_TYPE_ulong_number1255
    #define	RETURN_TYPE_ulong_number1255 MySQLParser_ulong_number_return

    MySQLParser_ulong_number_return ulong_number1258;
    #undef	RETURN_TYPE_ulong_number1258
    #define	RETURN_TYPE_ulong_number1258 MySQLParser_ulong_number_return

    MySQLParser_text_string_no_linebreak_return text_string_no_linebreak1261;
    #undef	RETURN_TYPE_text_string_no_linebreak1261
    #define	RETURN_TYPE_text_string_no_linebreak1261 MySQLParser_text_string_no_linebreak_return

    MySQLParser_text_string_no_linebreak_return text_string_no_linebreak1264;
    #undef	RETURN_TYPE_text_string_no_linebreak1264
    #define	RETURN_TYPE_text_string_no_linebreak1264 MySQLParser_text_string_no_linebreak_return

    MySQLParser_text_string_no_linebreak_return text_string_no_linebreak1267;
    #undef	RETURN_TYPE_text_string_no_linebreak1267
    #define	RETURN_TYPE_text_string_no_linebreak1267 MySQLParser_text_string_no_linebreak_return

    MySQLParser_text_string_no_linebreak_return text_string_no_linebreak1270;
    #undef	RETURN_TYPE_text_string_no_linebreak1270
    #define	RETURN_TYPE_text_string_no_linebreak1270 MySQLParser_text_string_no_linebreak_return

    MySQLParser_text_string_no_linebreak_return text_string_no_linebreak1273;
    #undef	RETURN_TYPE_text_string_no_linebreak1273
    #define	RETURN_TYPE_text_string_no_linebreak1273 MySQLParser_text_string_no_linebreak_return

    MySQLParser_ulong_number_return ulong_number1276;
    #undef	RETURN_TYPE_ulong_number1276
    #define	RETURN_TYPE_ulong_number1276 MySQLParser_ulong_number_return

    MySQLParser_string_literal_return string_literal1279;
    #undef	RETURN_TYPE_string_literal1279
    #define	RETURN_TYPE_string_literal1279 MySQLParser_string_literal_return

    MySQLParser_text_string_no_linebreak_return text_string_no_linebreak1282;
    #undef	RETURN_TYPE_text_string_no_linebreak1282
    #define	RETURN_TYPE_text_string_no_linebreak1282 MySQLParser_text_string_no_linebreak_return

    MySQLParser_ulong_number_return ulong_number1285;
    #undef	RETURN_TYPE_ulong_number1285
    #define	RETURN_TYPE_ulong_number1285 MySQLParser_ulong_number_return

    MySQLParser_server_id_list_return server_id_list1288;
    #undef	RETURN_TYPE_server_id_list1288
    #define	RETURN_TYPE_server_id_list1288 MySQLParser_server_id_list_return

    MySQLParser_ulong_number_return ulong_number1291;
    #undef	RETURN_TYPE_ulong_number1291
    #define	RETURN_TYPE_ulong_number1291 MySQLParser_ulong_number_return

    MySQLParser_master_file_def_return master_file_def1292;
    #undef	RETURN_TYPE_master_file_def1292
    #define	RETURN_TYPE_master_file_def1292 MySQLParser_master_file_def_return

    pANTLR3_BASE_TREE MASTER_HOST_SYMBOL1232_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1233_tree;
    pANTLR3_BASE_TREE MASTER_BIND_SYMBOL1235_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1236_tree;
    pANTLR3_BASE_TREE MASTER_USER_SYMBOL1238_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1239_tree;
    pANTLR3_BASE_TREE MASTER_PASSWORD_SYMBOL1241_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1242_tree;
    pANTLR3_BASE_TREE MASTER_PORT_SYMBOL1244_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1245_tree;
    pANTLR3_BASE_TREE MASTER_CONNECT_RETRY_SYMBOL1247_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1248_tree;
    pANTLR3_BASE_TREE MASTER_RETRY_COUNT_SYMBOL1250_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1251_tree;
    pANTLR3_BASE_TREE MASTER_DELAY_SYMBOL1253_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1254_tree;
    pANTLR3_BASE_TREE MASTER_SSL_SYMBOL1256_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1257_tree;
    pANTLR3_BASE_TREE MASTER_SSL_CA_SYMBOL1259_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1260_tree;
    pANTLR3_BASE_TREE MASTER_SSL_CAPATH_SYMBOL1262_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1263_tree;
    pANTLR3_BASE_TREE MASTER_SSL_CERT_SYMBOL1265_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1266_tree;
    pANTLR3_BASE_TREE MASTER_SSL_CIPHER_SYMBOL1268_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1269_tree;
    pANTLR3_BASE_TREE MASTER_SSL_KEY_SYMBOL1271_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1272_tree;
    pANTLR3_BASE_TREE MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL1274_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1275_tree;
    pANTLR3_BASE_TREE MASTER_SSL_CRL_SYMBOL1277_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1278_tree;
    pANTLR3_BASE_TREE MASTER_SSL_CRLPATH_SYMBOL1280_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1281_tree;
    pANTLR3_BASE_TREE MASTER_HEARTBEAT_PERIOD_SYMBOL1283_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1284_tree;
    pANTLR3_BASE_TREE IGNORE_SERVER_IDS_SYMBOL1286_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1287_tree;
    pANTLR3_BASE_TREE MASTER_AUTO_POSITION_SYMBOL1289_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1290_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    MASTER_HOST_SYMBOL1232       = NULL;
    EQUAL_OPERATOR1233       = NULL;
    MASTER_BIND_SYMBOL1235       = NULL;
    EQUAL_OPERATOR1236       = NULL;
    MASTER_USER_SYMBOL1238       = NULL;
    EQUAL_OPERATOR1239       = NULL;
    MASTER_PASSWORD_SYMBOL1241       = NULL;
    EQUAL_OPERATOR1242       = NULL;
    MASTER_PORT_SYMBOL1244       = NULL;
    EQUAL_OPERATOR1245       = NULL;
    MASTER_CONNECT_RETRY_SYMBOL1247       = NULL;
    EQUAL_OPERATOR1248       = NULL;
    MASTER_RETRY_COUNT_SYMBOL1250       = NULL;
    EQUAL_OPERATOR1251       = NULL;
    MASTER_DELAY_SYMBOL1253       = NULL;
    EQUAL_OPERATOR1254       = NULL;
    MASTER_SSL_SYMBOL1256       = NULL;
    EQUAL_OPERATOR1257       = NULL;
    MASTER_SSL_CA_SYMBOL1259       = NULL;
    EQUAL_OPERATOR1260       = NULL;
    MASTER_SSL_CAPATH_SYMBOL1262       = NULL;
    EQUAL_OPERATOR1263       = NULL;
    MASTER_SSL_CERT_SYMBOL1265       = NULL;
    EQUAL_OPERATOR1266       = NULL;
    MASTER_SSL_CIPHER_SYMBOL1268       = NULL;
    EQUAL_OPERATOR1269       = NULL;
    MASTER_SSL_KEY_SYMBOL1271       = NULL;
    EQUAL_OPERATOR1272       = NULL;
    MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL1274       = NULL;
    EQUAL_OPERATOR1275       = NULL;
    MASTER_SSL_CRL_SYMBOL1277       = NULL;
    EQUAL_OPERATOR1278       = NULL;
    MASTER_SSL_CRLPATH_SYMBOL1280       = NULL;
    EQUAL_OPERATOR1281       = NULL;
    MASTER_HEARTBEAT_PERIOD_SYMBOL1283       = NULL;
    EQUAL_OPERATOR1284       = NULL;
    IGNORE_SERVER_IDS_SYMBOL1286       = NULL;
    EQUAL_OPERATOR1287       = NULL;
    MASTER_AUTO_POSITION_SYMBOL1289       = NULL;
    EQUAL_OPERATOR1290       = NULL;
    text_string_no_linebreak1234.tree = NULL;

    text_string_no_linebreak1237.tree = NULL;

    text_string_no_linebreak1240.tree = NULL;

    text_string_no_linebreak1243.tree = NULL;

    ulong_number1246.tree = NULL;

    ulong_number1249.tree = NULL;

    ulong_number1252.tree = NULL;

    ulong_number1255.tree = NULL;

    ulong_number1258.tree = NULL;

    text_string_no_linebreak1261.tree = NULL;

    text_string_no_linebreak1264.tree = NULL;

    text_string_no_linebreak1267.tree = NULL;

    text_string_no_linebreak1270.tree = NULL;

    text_string_no_linebreak1273.tree = NULL;

    ulong_number1276.tree = NULL;

    string_literal1279.tree = NULL;

    text_string_no_linebreak1282.tree = NULL;

    ulong_number1285.tree = NULL;

    server_id_list1288.tree = NULL;

    ulong_number1291.tree = NULL;

    master_file_def1292.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    MASTER_HOST_SYMBOL1232_tree   = NULL;
    EQUAL_OPERATOR1233_tree   = NULL;
    MASTER_BIND_SYMBOL1235_tree   = NULL;
    EQUAL_OPERATOR1236_tree   = NULL;
    MASTER_USER_SYMBOL1238_tree   = NULL;
    EQUAL_OPERATOR1239_tree   = NULL;
    MASTER_PASSWORD_SYMBOL1241_tree   = NULL;
    EQUAL_OPERATOR1242_tree   = NULL;
    MASTER_PORT_SYMBOL1244_tree   = NULL;
    EQUAL_OPERATOR1245_tree   = NULL;
    MASTER_CONNECT_RETRY_SYMBOL1247_tree   = NULL;
    EQUAL_OPERATOR1248_tree   = NULL;
    MASTER_RETRY_COUNT_SYMBOL1250_tree   = NULL;
    EQUAL_OPERATOR1251_tree   = NULL;
    MASTER_DELAY_SYMBOL1253_tree   = NULL;
    EQUAL_OPERATOR1254_tree   = NULL;
    MASTER_SSL_SYMBOL1256_tree   = NULL;
    EQUAL_OPERATOR1257_tree   = NULL;
    MASTER_SSL_CA_SYMBOL1259_tree   = NULL;
    EQUAL_OPERATOR1260_tree   = NULL;
    MASTER_SSL_CAPATH_SYMBOL1262_tree   = NULL;
    EQUAL_OPERATOR1263_tree   = NULL;
    MASTER_SSL_CERT_SYMBOL1265_tree   = NULL;
    EQUAL_OPERATOR1266_tree   = NULL;
    MASTER_SSL_CIPHER_SYMBOL1268_tree   = NULL;
    EQUAL_OPERATOR1269_tree   = NULL;
    MASTER_SSL_KEY_SYMBOL1271_tree   = NULL;
    EQUAL_OPERATOR1272_tree   = NULL;
    MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL1274_tree   = NULL;
    EQUAL_OPERATOR1275_tree   = NULL;
    MASTER_SSL_CRL_SYMBOL1277_tree   = NULL;
    EQUAL_OPERATOR1278_tree   = NULL;
    MASTER_SSL_CRLPATH_SYMBOL1280_tree   = NULL;
    EQUAL_OPERATOR1281_tree   = NULL;
    MASTER_HEARTBEAT_PERIOD_SYMBOL1283_tree   = NULL;
    EQUAL_OPERATOR1284_tree   = NULL;
    IGNORE_SERVER_IDS_SYMBOL1286_tree   = NULL;
    EQUAL_OPERATOR1287_tree   = NULL;
    MASTER_AUTO_POSITION_SYMBOL1289_tree   = NULL;
    EQUAL_OPERATOR1290_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1610: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 alt430;

            alt430=21;

            switch ( LA(1) )
            {
            case MASTER_HOST_SYMBOL:
            	{
            		alt430=1;
            	}
                break;
            case MASTER_BIND_SYMBOL:
            	{
            		alt430=2;
            	}
                break;
            case MASTER_USER_SYMBOL:
            	{
            		alt430=3;
            	}
                break;
            case MASTER_PASSWORD_SYMBOL:
            	{
            		alt430=4;
            	}
                break;
            case MASTER_PORT_SYMBOL:
            	{
            		alt430=5;
            	}
                break;
            case MASTER_CONNECT_RETRY_SYMBOL:
            	{
            		alt430=6;
            	}
                break;
            case MASTER_RETRY_COUNT_SYMBOL:
            	{
            		alt430=7;
            	}
                break;
            case MASTER_DELAY_SYMBOL:
            	{
            		alt430=8;
            	}
                break;
            case MASTER_SSL_SYMBOL:
            	{
            		alt430=9;
            	}
                break;
            case MASTER_SSL_CA_SYMBOL:
            	{
            		alt430=10;
            	}
                break;
            case MASTER_SSL_CAPATH_SYMBOL:
            	{
            		alt430=11;
            	}
                break;
            case MASTER_SSL_CERT_SYMBOL:
            	{
            		alt430=12;
            	}
                break;
            case MASTER_SSL_CIPHER_SYMBOL:
            	{
            		alt430=13;
            	}
                break;
            case MASTER_SSL_KEY_SYMBOL:
            	{
            		alt430=14;
            	}
                break;
            case MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL:
            	{
            		alt430=15;
            	}
                break;
            case MASTER_SSL_CRL_SYMBOL:
            	{
            		alt430=16;
            	}
                break;
            case MASTER_SSL_CRLPATH_SYMBOL:
            	{
            		alt430=17;
            	}
                break;
            case MASTER_HEARTBEAT_PERIOD_SYMBOL:
            	{
            		alt430=18;
            	}
                break;
            case IGNORE_SERVER_IDS_SYMBOL:
            	{
            		alt430=19;
            	}
                break;
            case MASTER_AUTO_POSITION_SYMBOL:
            	{
            		alt430=20;
            	}
                break;
            case MASTER_LOG_FILE_SYMBOL:
            case MASTER_LOG_POS_SYMBOL:
            case RELAY_LOG_FILE_SYMBOL:
            case RELAY_LOG_POS_SYMBOL:
            	{
            		alt430=21;
            	}
                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_optionEx;

            }

            switch (alt430)
            {
        	case 1:
        	    // MySQL.g:1611:2: MASTER_HOST_SYMBOL EQUAL_OPERATOR text_string_no_linebreak
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_HOST_SYMBOL1232 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_HOST_SYMBOL, &FOLLOW_MASTER_HOST_SYMBOL_in_master_option6987);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_HOST_SYMBOL1232_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_HOST_SYMBOL1232));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_HOST_SYMBOL1232_tree);
        	        }

        	        EQUAL_OPERATOR1233 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option6989);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1233_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1233));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1233_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_no_linebreak_in_master_option6991);
        	        text_string_no_linebreak1234=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_linebreak1234.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1612:4: MASTER_BIND_SYMBOL EQUAL_OPERATOR text_string_no_linebreak
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_BIND_SYMBOL1235 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_BIND_SYMBOL, &FOLLOW_MASTER_BIND_SYMBOL_in_master_option6996);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_BIND_SYMBOL1235_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_BIND_SYMBOL1235));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_BIND_SYMBOL1235_tree);
        	        }

        	        EQUAL_OPERATOR1236 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option6998);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1236_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1236));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1236_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_no_linebreak_in_master_option7000);
        	        text_string_no_linebreak1237=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_linebreak1237.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1613:4: MASTER_USER_SYMBOL EQUAL_OPERATOR text_string_no_linebreak
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_USER_SYMBOL1238 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_USER_SYMBOL, &FOLLOW_MASTER_USER_SYMBOL_in_master_option7005);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_USER_SYMBOL1238_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_USER_SYMBOL1238));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_USER_SYMBOL1238_tree);
        	        }

        	        EQUAL_OPERATOR1239 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option7007);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1239_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1239));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1239_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_no_linebreak_in_master_option7009);
        	        text_string_no_linebreak1240=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_linebreak1240.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1614:4: MASTER_PASSWORD_SYMBOL EQUAL_OPERATOR text_string_no_linebreak
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_PASSWORD_SYMBOL1241 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_PASSWORD_SYMBOL, &FOLLOW_MASTER_PASSWORD_SYMBOL_in_master_option7014);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_PASSWORD_SYMBOL1241_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_PASSWORD_SYMBOL1241));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_PASSWORD_SYMBOL1241_tree);
        	        }

        	        EQUAL_OPERATOR1242 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option7016);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1242_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1242));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1242_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_no_linebreak_in_master_option7018);
        	        text_string_no_linebreak1243=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_linebreak1243.tree);

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:1615:4: MASTER_PORT_SYMBOL EQUAL_OPERATOR ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_PORT_SYMBOL1244 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_PORT_SYMBOL, &FOLLOW_MASTER_PORT_SYMBOL_in_master_option7023);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_PORT_SYMBOL1244_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_PORT_SYMBOL1244));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_PORT_SYMBOL1244_tree);
        	        }

        	        EQUAL_OPERATOR1245 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option7025);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1245_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1245));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1245_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_ulong_number_in_master_option7027);
        	        ulong_number1246=ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number1246.tree);

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:1616:4: MASTER_CONNECT_RETRY_SYMBOL EQUAL_OPERATOR ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_CONNECT_RETRY_SYMBOL1247 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_CONNECT_RETRY_SYMBOL, &FOLLOW_MASTER_CONNECT_RETRY_SYMBOL_in_master_option7032);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_CONNECT_RETRY_SYMBOL1247_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_CONNECT_RETRY_SYMBOL1247));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_CONNECT_RETRY_SYMBOL1247_tree);
        	        }

        	        EQUAL_OPERATOR1248 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option7034);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1248_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1248));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1248_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_ulong_number_in_master_option7036);
        	        ulong_number1249=ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number1249.tree);

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:1617:4: MASTER_RETRY_COUNT_SYMBOL EQUAL_OPERATOR ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_RETRY_COUNT_SYMBOL1250 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_RETRY_COUNT_SYMBOL, &FOLLOW_MASTER_RETRY_COUNT_SYMBOL_in_master_option7041);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_RETRY_COUNT_SYMBOL1250_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_RETRY_COUNT_SYMBOL1250));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_RETRY_COUNT_SYMBOL1250_tree);
        	        }

        	        EQUAL_OPERATOR1251 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option7043);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1251_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1251));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1251_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_ulong_number_in_master_option7045);
        	        ulong_number1252=ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number1252.tree);

        	    }
        	    break;
        	case 8:
        	    // MySQL.g:1618:4: MASTER_DELAY_SYMBOL EQUAL_OPERATOR ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_DELAY_SYMBOL1253 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_DELAY_SYMBOL, &FOLLOW_MASTER_DELAY_SYMBOL_in_master_option7050);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_DELAY_SYMBOL1253_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_DELAY_SYMBOL1253));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_DELAY_SYMBOL1253_tree);
        	        }

        	        EQUAL_OPERATOR1254 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option7052);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1254_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1254));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1254_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_ulong_number_in_master_option7054);
        	        ulong_number1255=ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number1255.tree);

        	    }
        	    break;
        	case 9:
        	    // MySQL.g:1619:4: MASTER_SSL_SYMBOL EQUAL_OPERATOR ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_SSL_SYMBOL1256 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_SSL_SYMBOL, &FOLLOW_MASTER_SSL_SYMBOL_in_master_option7059);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_SSL_SYMBOL1256_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_SSL_SYMBOL1256));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_SSL_SYMBOL1256_tree);
        	        }

        	        EQUAL_OPERATOR1257 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option7061);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1257_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1257));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1257_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_ulong_number_in_master_option7063);
        	        ulong_number1258=ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number1258.tree);

        	    }
        	    break;
        	case 10:
        	    // MySQL.g:1620:4: MASTER_SSL_CA_SYMBOL EQUAL_OPERATOR text_string_no_linebreak
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_SSL_CA_SYMBOL1259 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_SSL_CA_SYMBOL, &FOLLOW_MASTER_SSL_CA_SYMBOL_in_master_option7068);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_SSL_CA_SYMBOL1259_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_SSL_CA_SYMBOL1259));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_SSL_CA_SYMBOL1259_tree);
        	        }

        	        EQUAL_OPERATOR1260 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option7070);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1260_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1260));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1260_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_no_linebreak_in_master_option7072);
        	        text_string_no_linebreak1261=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_linebreak1261.tree);

        	    }
        	    break;
        	case 11:
        	    // MySQL.g:1621:4: MASTER_SSL_CAPATH_SYMBOL EQUAL_OPERATOR text_string_no_linebreak
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_SSL_CAPATH_SYMBOL1262 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_SSL_CAPATH_SYMBOL, &FOLLOW_MASTER_SSL_CAPATH_SYMBOL_in_master_option7077);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_SSL_CAPATH_SYMBOL1262_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_SSL_CAPATH_SYMBOL1262));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_SSL_CAPATH_SYMBOL1262_tree);
        	        }

        	        EQUAL_OPERATOR1263 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option7079);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1263_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1263));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1263_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_no_linebreak_in_master_option7081);
        	        text_string_no_linebreak1264=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_linebreak1264.tree);

        	    }
        	    break;
        	case 12:
        	    // MySQL.g:1622:4: MASTER_SSL_CERT_SYMBOL EQUAL_OPERATOR text_string_no_linebreak
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_SSL_CERT_SYMBOL1265 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_SSL_CERT_SYMBOL, &FOLLOW_MASTER_SSL_CERT_SYMBOL_in_master_option7086);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_SSL_CERT_SYMBOL1265_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_SSL_CERT_SYMBOL1265));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_SSL_CERT_SYMBOL1265_tree);
        	        }

        	        EQUAL_OPERATOR1266 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option7088);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1266_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1266));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1266_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_no_linebreak_in_master_option7090);
        	        text_string_no_linebreak1267=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_linebreak1267.tree);

        	    }
        	    break;
        	case 13:
        	    // MySQL.g:1623:4: MASTER_SSL_CIPHER_SYMBOL EQUAL_OPERATOR text_string_no_linebreak
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_SSL_CIPHER_SYMBOL1268 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_SSL_CIPHER_SYMBOL, &FOLLOW_MASTER_SSL_CIPHER_SYMBOL_in_master_option7095);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_SSL_CIPHER_SYMBOL1268_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_SSL_CIPHER_SYMBOL1268));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_SSL_CIPHER_SYMBOL1268_tree);
        	        }

        	        EQUAL_OPERATOR1269 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option7097);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1269_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1269));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1269_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_no_linebreak_in_master_option7099);
        	        text_string_no_linebreak1270=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_linebreak1270.tree);

        	    }
        	    break;
        	case 14:
        	    // MySQL.g:1624:4: MASTER_SSL_KEY_SYMBOL EQUAL_OPERATOR text_string_no_linebreak
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_SSL_KEY_SYMBOL1271 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_SSL_KEY_SYMBOL, &FOLLOW_MASTER_SSL_KEY_SYMBOL_in_master_option7104);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_SSL_KEY_SYMBOL1271_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_SSL_KEY_SYMBOL1271));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_SSL_KEY_SYMBOL1271_tree);
        	        }

        	        EQUAL_OPERATOR1272 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option7106);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1272_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1272));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1272_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_no_linebreak_in_master_option7108);
        	        text_string_no_linebreak1273=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_linebreak1273.tree);

        	    }
        	    break;
        	case 15:
        	    // MySQL.g:1625:4: MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL EQUAL_OPERATOR ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL1274 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL, &FOLLOW_MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL_in_master_option7113);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL1274_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL1274));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL1274_tree);
        	        }

        	        EQUAL_OPERATOR1275 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option7115);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1275_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1275));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1275_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_ulong_number_in_master_option7117);
        	        ulong_number1276=ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number1276.tree);

        	    }
        	    break;
        	case 16:
        	    // MySQL.g:1626:4: MASTER_SSL_CRL_SYMBOL EQUAL_OPERATOR string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_SSL_CRL_SYMBOL1277 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_SSL_CRL_SYMBOL, &FOLLOW_MASTER_SSL_CRL_SYMBOL_in_master_option7122);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_SSL_CRL_SYMBOL1277_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_SSL_CRL_SYMBOL1277));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_SSL_CRL_SYMBOL1277_tree);
        	        }

        	        EQUAL_OPERATOR1278 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option7124);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1278_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1278));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1278_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_master_option7126);
        	        string_literal1279=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal1279.tree);

        	    }
        	    break;
        	case 17:
        	    // MySQL.g:1627:4: MASTER_SSL_CRLPATH_SYMBOL EQUAL_OPERATOR text_string_no_linebreak
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_SSL_CRLPATH_SYMBOL1280 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_SSL_CRLPATH_SYMBOL, &FOLLOW_MASTER_SSL_CRLPATH_SYMBOL_in_master_option7131);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_SSL_CRLPATH_SYMBOL1280_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_SSL_CRLPATH_SYMBOL1280));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_SSL_CRLPATH_SYMBOL1280_tree);
        	        }

        	        EQUAL_OPERATOR1281 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option7133);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1281_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1281));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1281_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_no_linebreak_in_master_option7135);
        	        text_string_no_linebreak1282=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_linebreak1282.tree);

        	    }
        	    break;
        	case 18:
        	    // MySQL.g:1628:4: MASTER_HEARTBEAT_PERIOD_SYMBOL EQUAL_OPERATOR ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_HEARTBEAT_PERIOD_SYMBOL1283 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_HEARTBEAT_PERIOD_SYMBOL, &FOLLOW_MASTER_HEARTBEAT_PERIOD_SYMBOL_in_master_option7140);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_HEARTBEAT_PERIOD_SYMBOL1283_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_HEARTBEAT_PERIOD_SYMBOL1283));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_HEARTBEAT_PERIOD_SYMBOL1283_tree);
        	        }

        	        EQUAL_OPERATOR1284 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option7142);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1284_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1284));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1284_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_ulong_number_in_master_option7144);
        	        ulong_number1285=ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number1285.tree);

        	    }
        	    break;
        	case 19:
        	    // MySQL.g:1629:4: IGNORE_SERVER_IDS_SYMBOL EQUAL_OPERATOR server_id_list
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        IGNORE_SERVER_IDS_SYMBOL1286 = (pANTLR3_COMMON_TOKEN) MATCHT(IGNORE_SERVER_IDS_SYMBOL, &FOLLOW_IGNORE_SERVER_IDS_SYMBOL_in_master_option7149);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        IGNORE_SERVER_IDS_SYMBOL1286_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IGNORE_SERVER_IDS_SYMBOL1286));
        	        ADAPTOR->addChild(ADAPTOR, root_0, IGNORE_SERVER_IDS_SYMBOL1286_tree);
        	        }

        	        EQUAL_OPERATOR1287 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option7151);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        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_server_id_list_in_master_option7153);
        	        server_id_list1288=server_id_list(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, server_id_list1288.tree);

        	    }
        	    break;
        	case 20:
        	    // MySQL.g:1630:4: MASTER_AUTO_POSITION_SYMBOL EQUAL_OPERATOR ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_AUTO_POSITION_SYMBOL1289 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_AUTO_POSITION_SYMBOL, &FOLLOW_MASTER_AUTO_POSITION_SYMBOL_in_master_option7158);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_AUTO_POSITION_SYMBOL1289_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_AUTO_POSITION_SYMBOL1289));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_AUTO_POSITION_SYMBOL1289_tree);
        	        }

        	        EQUAL_OPERATOR1290 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option7160);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        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_ulong_number_in_master_option7162);
        	        ulong_number1291=ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number1291.tree);

        	    }
        	    break;
        	case 21:
        	    // MySQL.g:1631:4: master_file_def
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_master_file_def_in_master_option7167);
        	        master_file_def1292=master_file_def(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, master_file_def1292.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:1634: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_SYMBOL1293;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1294;
    pANTLR3_COMMON_TOKEN    MASTER_LOG_POS_SYMBOL1296;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1297;
    pANTLR3_COMMON_TOKEN    RELAY_LOG_FILE_SYMBOL1299;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1300;
    pANTLR3_COMMON_TOKEN    RELAY_LOG_POS_SYMBOL1302;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1303;
    MySQLParser_text_string_no_linebreak_return text_string_no_linebreak1295;
    #undef	RETURN_TYPE_text_string_no_linebreak1295
    #define	RETURN_TYPE_text_string_no_linebreak1295 MySQLParser_text_string_no_linebreak_return

    MySQLParser_ulonglong_number_return ulonglong_number1298;
    #undef	RETURN_TYPE_ulonglong_number1298
    #define	RETURN_TYPE_ulonglong_number1298 MySQLParser_ulonglong_number_return

    MySQLParser_text_string_no_linebreak_return text_string_no_linebreak1301;
    #undef	RETURN_TYPE_text_string_no_linebreak1301
    #define	RETURN_TYPE_text_string_no_linebreak1301 MySQLParser_text_string_no_linebreak_return

    MySQLParser_ulong_number_return ulong_number1304;
    #undef	RETURN_TYPE_ulong_number1304
    #define	RETURN_TYPE_ulong_number1304 MySQLParser_ulong_number_return

    pANTLR3_BASE_TREE MASTER_LOG_FILE_SYMBOL1293_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1294_tree;
    pANTLR3_BASE_TREE MASTER_LOG_POS_SYMBOL1296_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1297_tree;
    pANTLR3_BASE_TREE RELAY_LOG_FILE_SYMBOL1299_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1300_tree;
    pANTLR3_BASE_TREE RELAY_LOG_POS_SYMBOL1302_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1303_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    MASTER_LOG_FILE_SYMBOL1293       = NULL;
    EQUAL_OPERATOR1294       = NULL;
    MASTER_LOG_POS_SYMBOL1296       = NULL;
    EQUAL_OPERATOR1297       = NULL;
    RELAY_LOG_FILE_SYMBOL1299       = NULL;
    EQUAL_OPERATOR1300       = NULL;
    RELAY_LOG_POS_SYMBOL1302       = NULL;
    EQUAL_OPERATOR1303       = NULL;
    text_string_no_linebreak1295.tree = NULL;

    ulonglong_number1298.tree = NULL;

    text_string_no_linebreak1301.tree = NULL;

    ulong_number1304.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    MASTER_LOG_FILE_SYMBOL1293_tree   = NULL;
    EQUAL_OPERATOR1294_tree   = NULL;
    MASTER_LOG_POS_SYMBOL1296_tree   = NULL;
    EQUAL_OPERATOR1297_tree   = NULL;
    RELAY_LOG_FILE_SYMBOL1299_tree   = NULL;
    EQUAL_OPERATOR1300_tree   = NULL;
    RELAY_LOG_POS_SYMBOL1302_tree   = NULL;
    EQUAL_OPERATOR1303_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1634: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 alt431;

            alt431=4;

            switch ( LA(1) )
            {
            case MASTER_LOG_FILE_SYMBOL:
            	{
            		alt431=1;
            	}
                break;
            case MASTER_LOG_POS_SYMBOL:
            	{
            		alt431=2;
            	}
                break;
            case RELAY_LOG_FILE_SYMBOL:
            	{
            		alt431=3;
            	}
                break;
            case RELAY_LOG_POS_SYMBOL:
            	{
            		alt431=4;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 431;
                EXCEPTION->state        = 0;


                goto rulemaster_file_defEx;

            }

            switch (alt431)
            {
        	case 1:
        	    // MySQL.g:1635:2: MASTER_LOG_FILE_SYMBOL EQUAL_OPERATOR text_string_no_linebreak
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_LOG_FILE_SYMBOL1293 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_LOG_FILE_SYMBOL, &FOLLOW_MASTER_LOG_FILE_SYMBOL_in_master_file_def7176);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_file_defEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_LOG_FILE_SYMBOL1293_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_LOG_FILE_SYMBOL1293));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_LOG_FILE_SYMBOL1293_tree);
        	        }

        	        EQUAL_OPERATOR1294 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_file_def7178);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_file_defEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1294_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1294));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1294_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_no_linebreak_in_master_file_def7180);
        	        text_string_no_linebreak1295=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_linebreak1295.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1636:4: MASTER_LOG_POS_SYMBOL EQUAL_OPERATOR ulonglong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_LOG_POS_SYMBOL1296 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_LOG_POS_SYMBOL, &FOLLOW_MASTER_LOG_POS_SYMBOL_in_master_file_def7185);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_file_defEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_LOG_POS_SYMBOL1296_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_LOG_POS_SYMBOL1296));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_LOG_POS_SYMBOL1296_tree);
        	        }

        	        EQUAL_OPERATOR1297 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_file_def7187);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_file_defEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1297_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1297));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1297_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_ulonglong_number_in_master_file_def7189);
        	        ulonglong_number1298=ulonglong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_file_defEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulonglong_number1298.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1637:4: RELAY_LOG_FILE_SYMBOL EQUAL_OPERATOR text_string_no_linebreak
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        RELAY_LOG_FILE_SYMBOL1299 = (pANTLR3_COMMON_TOKEN) MATCHT(RELAY_LOG_FILE_SYMBOL, &FOLLOW_RELAY_LOG_FILE_SYMBOL_in_master_file_def7194);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_file_defEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        RELAY_LOG_FILE_SYMBOL1299_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RELAY_LOG_FILE_SYMBOL1299));
        	        ADAPTOR->addChild(ADAPTOR, root_0, RELAY_LOG_FILE_SYMBOL1299_tree);
        	        }

        	        EQUAL_OPERATOR1300 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_file_def7196);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_file_defEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1300_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1300));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1300_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_no_linebreak_in_master_file_def7198);
        	        text_string_no_linebreak1301=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_linebreak1301.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1638:4: RELAY_LOG_POS_SYMBOL EQUAL_OPERATOR ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        RELAY_LOG_POS_SYMBOL1302 = (pANTLR3_COMMON_TOKEN) MATCHT(RELAY_LOG_POS_SYMBOL, &FOLLOW_RELAY_LOG_POS_SYMBOL_in_master_file_def7203);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_file_defEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        RELAY_LOG_POS_SYMBOL1302_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RELAY_LOG_POS_SYMBOL1302));
        	        ADAPTOR->addChild(ADAPTOR, root_0, RELAY_LOG_POS_SYMBOL1302_tree);
        	        }

        	        EQUAL_OPERATOR1303 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_file_def7205);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_file_defEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1303_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1303));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1303_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_ulong_number_in_master_file_def7207);
        	        ulong_number1304=ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_file_defEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number1304.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:1641: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_SYMBOL1305;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1307;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1309;
    MySQLParser_ulong_number_return ulong_number1306;
    #undef	RETURN_TYPE_ulong_number1306
    #define	RETURN_TYPE_ulong_number1306 MySQLParser_ulong_number_return

    MySQLParser_ulong_number_return ulong_number1308;
    #undef	RETURN_TYPE_ulong_number1308
    #define	RETURN_TYPE_ulong_number1308 MySQLParser_ulong_number_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1305_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1307_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1309_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL1305       = NULL;
    COMMA_SYMBOL1307       = NULL;
    CLOSE_PAR_SYMBOL1309       = NULL;
    ulong_number1306.tree = NULL;

    ulong_number1308.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL1305_tree   = NULL;
    COMMA_SYMBOL1307_tree   = NULL;
    CLOSE_PAR_SYMBOL1309_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1641:15: ( OPEN_PAR_SYMBOL ( ulong_number ( COMMA_SYMBOL ulong_number )* )? CLOSE_PAR_SYMBOL )
        // MySQL.g:1642:2: OPEN_PAR_SYMBOL ( ulong_number ( COMMA_SYMBOL ulong_number )* )? CLOSE_PAR_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            OPEN_PAR_SYMBOL1305 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_server_id_list7216);
            if  (HASEXCEPTION())
            {
                goto ruleserver_id_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL1305_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1305));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1305_tree);
            }

            // MySQL.g:1642:18: ( ulong_number ( COMMA_SYMBOL ulong_number )* )?
            {
                int alt433=2;
                switch ( LA(1) )
                {
                    case DECIMAL_NUMBER:
                    case FLOAT_NUMBER:
                    case HEX_NUMBER:
                    case INT_NUMBER:
                    case LONG_NUMBER:
                    case ULONGLONG_NUMBER:
                    	{
                    		alt433=1;
                    	}
                        break;
                }

                switch (alt433)
                {
            	case 1:
            	    // MySQL.g:1642:19: ulong_number ( COMMA_SYMBOL ulong_number )*
            	    {
            	        FOLLOWPUSH(FOLLOW_ulong_number_in_server_id_list7219);
            	        ulong_number1306=ulong_number(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleserver_id_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number1306.tree);

            	        // MySQL.g:1642:32: ( COMMA_SYMBOL ulong_number )*

            	        for (;;)
            	        {
            	            int alt432=2;
            	            switch ( LA(1) )
            	            {
            	            case COMMA_SYMBOL:
            	            	{
            	            		alt432=1;
            	            	}
            	                break;

            	            }

            	            switch (alt432)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1642:33: COMMA_SYMBOL ulong_number
            	        	    {
            	        	        COMMA_SYMBOL1307 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_server_id_list7222);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleserver_id_listEx;
            	        	        }
            	        	        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_ulong_number_in_server_id_list7224);
            	        	        ulong_number1308=ulong_number(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleserver_id_listEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number1308.tree);

            	        	    }
            	        	    break;

            	        	default:
            	        	    goto loop432;	/* break out of the loop */
            	        	    break;
            	            }
            	        }
            	        loop432: ; /* Jump out to here if this rule does not match */


            	    }
            	    break;

                }
            }

            CLOSE_PAR_SYMBOL1309 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_server_id_list7230);
            if  (HASEXCEPTION())
            {
                goto ruleserver_id_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL1309_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1309));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1309_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:1645: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_SYMBOL1310;
    pANTLR3_COMMON_TOKEN    REPLICATION_SYMBOL1311;
    pANTLR3_COMMON_TOKEN    FILTER_SYMBOL1312;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1314;
    MySQLParser_filter_definition_return filter_definition1313;
    #undef	RETURN_TYPE_filter_definition1313
    #define	RETURN_TYPE_filter_definition1313 MySQLParser_filter_definition_return

    MySQLParser_filter_definition_return filter_definition1315;
    #undef	RETURN_TYPE_filter_definition1315
    #define	RETURN_TYPE_filter_definition1315 MySQLParser_filter_definition_return

    pANTLR3_BASE_TREE CHANGE_SYMBOL1310_tree;
    pANTLR3_BASE_TREE REPLICATION_SYMBOL1311_tree;
    pANTLR3_BASE_TREE FILTER_SYMBOL1312_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1314_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CHANGE_SYMBOL1310       = NULL;
    REPLICATION_SYMBOL1311       = NULL;
    FILTER_SYMBOL1312       = NULL;
    COMMA_SYMBOL1314       = NULL;
    filter_definition1313.tree = NULL;

    filter_definition1315.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CHANGE_SYMBOL1310_tree   = NULL;
    REPLICATION_SYMBOL1311_tree   = NULL;
    FILTER_SYMBOL1312_tree   = NULL;
    COMMA_SYMBOL1314_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1645:19: ( CHANGE_SYMBOL ^ REPLICATION_SYMBOL FILTER_SYMBOL filter_definition ( COMMA_SYMBOL filter_definition )* )
        // MySQL.g:1646:2: CHANGE_SYMBOL ^ REPLICATION_SYMBOL FILTER_SYMBOL filter_definition ( COMMA_SYMBOL filter_definition )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            CHANGE_SYMBOL1310 = (pANTLR3_COMMON_TOKEN) MATCHT(CHANGE_SYMBOL, &FOLLOW_CHANGE_SYMBOL_in_change_replication7239);
            if  (HASEXCEPTION())
            {
                goto rulechange_replicationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CHANGE_SYMBOL1310_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHANGE_SYMBOL1310))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, CHANGE_SYMBOL1310_tree, root_0));
            }

            REPLICATION_SYMBOL1311 = (pANTLR3_COMMON_TOKEN) MATCHT(REPLICATION_SYMBOL, &FOLLOW_REPLICATION_SYMBOL_in_change_replication7242);
            if  (HASEXCEPTION())
            {
                goto rulechange_replicationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            REPLICATION_SYMBOL1311_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REPLICATION_SYMBOL1311));
            ADAPTOR->addChild(ADAPTOR, root_0, REPLICATION_SYMBOL1311_tree);
            }

            FILTER_SYMBOL1312 = (pANTLR3_COMMON_TOKEN) MATCHT(FILTER_SYMBOL, &FOLLOW_FILTER_SYMBOL_in_change_replication7244);
            if  (HASEXCEPTION())
            {
                goto rulechange_replicationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            FILTER_SYMBOL1312_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FILTER_SYMBOL1312));
            ADAPTOR->addChild(ADAPTOR, root_0, FILTER_SYMBOL1312_tree);
            }

            FOLLOWPUSH(FOLLOW_filter_definition_in_change_replication7246);
            filter_definition1313=filter_definition(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulechange_replicationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, filter_definition1313.tree);

            // MySQL.g:1646:68: ( COMMA_SYMBOL filter_definition )*

            for (;;)
            {
                int alt434=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt434=1;
                	}
                    break;

                }

                switch (alt434)
                {
            	case 1:
            	    // MySQL.g:1646:69: COMMA_SYMBOL filter_definition
            	    {
            	        COMMA_SYMBOL1314 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_change_replication7249);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulechange_replicationEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL1314_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1314));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1314_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_filter_definition_in_change_replication7251);
            	        filter_definition1315=filter_definition(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulechange_replicationEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, filter_definition1315.tree);

            	    }
            	    break;

            	default:
            	    goto loop434;	/* break out of the loop */
            	    break;
                }
            }
            loop434: ; /* 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:1649: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_SYMBOL1316;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1317;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1318;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1320;
    pANTLR3_COMMON_TOKEN    REPLICATE_IGNORE_DB_SYMBOL1321;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1322;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1323;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1325;
    pANTLR3_COMMON_TOKEN    REPLICATE_DO_TABLE_SYMBOL1326;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1327;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1328;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1330;
    pANTLR3_COMMON_TOKEN    REPLICATE_IGNORE_TABLE_SYMBOL1331;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1332;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1333;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1335;
    pANTLR3_COMMON_TOKEN    REPLICATE_WILD_DO_TABLE_SYMBOL1336;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1337;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1338;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1340;
    pANTLR3_COMMON_TOKEN    REPLICATE_WILD_IGNORE_TABLE_SYMBOL1341;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1342;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1343;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1345;
    pANTLR3_COMMON_TOKEN    REPLICATE_REWRITE_DB_SYMBOL1346;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1347;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1348;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1350;
    MySQLParser_filter_db_list_return filter_db_list1319;
    #undef	RETURN_TYPE_filter_db_list1319
    #define	RETURN_TYPE_filter_db_list1319 MySQLParser_filter_db_list_return

    MySQLParser_filter_db_list_return filter_db_list1324;
    #undef	RETURN_TYPE_filter_db_list1324
    #define	RETURN_TYPE_filter_db_list1324 MySQLParser_filter_db_list_return

    MySQLParser_filter_table_list_return filter_table_list1329;
    #undef	RETURN_TYPE_filter_table_list1329
    #define	RETURN_TYPE_filter_table_list1329 MySQLParser_filter_table_list_return

    MySQLParser_filter_table_list_return filter_table_list1334;
    #undef	RETURN_TYPE_filter_table_list1334
    #define	RETURN_TYPE_filter_table_list1334 MySQLParser_filter_table_list_return

    MySQLParser_filter_string_list_return filter_string_list1339;
    #undef	RETURN_TYPE_filter_string_list1339
    #define	RETURN_TYPE_filter_string_list1339 MySQLParser_filter_string_list_return

    MySQLParser_filter_string_list_return filter_string_list1344;
    #undef	RETURN_TYPE_filter_string_list1344
    #define	RETURN_TYPE_filter_string_list1344 MySQLParser_filter_string_list_return

    MySQLParser_filter_db_pair_list_return filter_db_pair_list1349;
    #undef	RETURN_TYPE_filter_db_pair_list1349
    #define	RETURN_TYPE_filter_db_pair_list1349 MySQLParser_filter_db_pair_list_return

    pANTLR3_BASE_TREE REPLICATE_DO_DB_SYMBOL1316_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1317_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1318_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1320_tree;
    pANTLR3_BASE_TREE REPLICATE_IGNORE_DB_SYMBOL1321_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1322_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1323_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1325_tree;
    pANTLR3_BASE_TREE REPLICATE_DO_TABLE_SYMBOL1326_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1327_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1328_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1330_tree;
    pANTLR3_BASE_TREE REPLICATE_IGNORE_TABLE_SYMBOL1331_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1332_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1333_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1335_tree;
    pANTLR3_BASE_TREE REPLICATE_WILD_DO_TABLE_SYMBOL1336_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1337_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1338_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1340_tree;
    pANTLR3_BASE_TREE REPLICATE_WILD_IGNORE_TABLE_SYMBOL1341_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1342_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1343_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1345_tree;
    pANTLR3_BASE_TREE REPLICATE_REWRITE_DB_SYMBOL1346_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1347_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1348_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1350_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    REPLICATE_DO_DB_SYMBOL1316       = NULL;
    EQUAL_OPERATOR1317       = NULL;
    OPEN_PAR_SYMBOL1318       = NULL;
    CLOSE_PAR_SYMBOL1320       = NULL;
    REPLICATE_IGNORE_DB_SYMBOL1321       = NULL;
    EQUAL_OPERATOR1322       = NULL;
    OPEN_PAR_SYMBOL1323       = NULL;
    CLOSE_PAR_SYMBOL1325       = NULL;
    REPLICATE_DO_TABLE_SYMBOL1326       = NULL;
    EQUAL_OPERATOR1327       = NULL;
    OPEN_PAR_SYMBOL1328       = NULL;
    CLOSE_PAR_SYMBOL1330       = NULL;
    REPLICATE_IGNORE_TABLE_SYMBOL1331       = NULL;
    EQUAL_OPERATOR1332       = NULL;
    OPEN_PAR_SYMBOL1333       = NULL;
    CLOSE_PAR_SYMBOL1335       = NULL;
    REPLICATE_WILD_DO_TABLE_SYMBOL1336       = NULL;
    EQUAL_OPERATOR1337       = NULL;
    OPEN_PAR_SYMBOL1338       = NULL;
    CLOSE_PAR_SYMBOL1340       = NULL;
    REPLICATE_WILD_IGNORE_TABLE_SYMBOL1341       = NULL;
    EQUAL_OPERATOR1342       = NULL;
    OPEN_PAR_SYMBOL1343       = NULL;
    CLOSE_PAR_SYMBOL1345       = NULL;
    REPLICATE_REWRITE_DB_SYMBOL1346       = NULL;
    EQUAL_OPERATOR1347       = NULL;
    OPEN_PAR_SYMBOL1348       = NULL;
    CLOSE_PAR_SYMBOL1350       = NULL;
    filter_db_list1319.tree = NULL;

    filter_db_list1324.tree = NULL;

    filter_table_list1329.tree = NULL;

    filter_table_list1334.tree = NULL;

    filter_string_list1339.tree = NULL;

    filter_string_list1344.tree = NULL;

    filter_db_pair_list1349.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    REPLICATE_DO_DB_SYMBOL1316_tree   = NULL;
    EQUAL_OPERATOR1317_tree   = NULL;
    OPEN_PAR_SYMBOL1318_tree   = NULL;
    CLOSE_PAR_SYMBOL1320_tree   = NULL;
    REPLICATE_IGNORE_DB_SYMBOL1321_tree   = NULL;
    EQUAL_OPERATOR1322_tree   = NULL;
    OPEN_PAR_SYMBOL1323_tree   = NULL;
    CLOSE_PAR_SYMBOL1325_tree   = NULL;
    REPLICATE_DO_TABLE_SYMBOL1326_tree   = NULL;
    EQUAL_OPERATOR1327_tree   = NULL;
    OPEN_PAR_SYMBOL1328_tree   = NULL;
    CLOSE_PAR_SYMBOL1330_tree   = NULL;
    REPLICATE_IGNORE_TABLE_SYMBOL1331_tree   = NULL;
    EQUAL_OPERATOR1332_tree   = NULL;
    OPEN_PAR_SYMBOL1333_tree   = NULL;
    CLOSE_PAR_SYMBOL1335_tree   = NULL;
    REPLICATE_WILD_DO_TABLE_SYMBOL1336_tree   = NULL;
    EQUAL_OPERATOR1337_tree   = NULL;
    OPEN_PAR_SYMBOL1338_tree   = NULL;
    CLOSE_PAR_SYMBOL1340_tree   = NULL;
    REPLICATE_WILD_IGNORE_TABLE_SYMBOL1341_tree   = NULL;
    EQUAL_OPERATOR1342_tree   = NULL;
    OPEN_PAR_SYMBOL1343_tree   = NULL;
    CLOSE_PAR_SYMBOL1345_tree   = NULL;
    REPLICATE_REWRITE_DB_SYMBOL1346_tree   = NULL;
    EQUAL_OPERATOR1347_tree   = NULL;
    OPEN_PAR_SYMBOL1348_tree   = NULL;
    CLOSE_PAR_SYMBOL1350_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1649: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 alt442;

            alt442=7;

            switch ( LA(1) )
            {
            case REPLICATE_DO_DB_SYMBOL:
            	{
            		alt442=1;
            	}
                break;
            case REPLICATE_IGNORE_DB_SYMBOL:
            	{
            		alt442=2;
            	}
                break;
            case REPLICATE_DO_TABLE_SYMBOL:
            	{
            		alt442=3;
            	}
                break;
            case REPLICATE_IGNORE_TABLE_SYMBOL:
            	{
            		alt442=4;
            	}
                break;
            case REPLICATE_WILD_DO_TABLE_SYMBOL:
            	{
            		alt442=5;
            	}
                break;
            case REPLICATE_WILD_IGNORE_TABLE_SYMBOL:
            	{
            		alt442=6;
            	}
                break;
            case REPLICATE_REWRITE_DB_SYMBOL:
            	{
            		alt442=7;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 442;
                EXCEPTION->state        = 0;


                goto rulefilter_definitionEx;

            }

            switch (alt442)
            {
        	case 1:
        	    // MySQL.g:1650: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_SYMBOL1316 = (pANTLR3_COMMON_TOKEN) MATCHT(REPLICATE_DO_DB_SYMBOL, &FOLLOW_REPLICATE_DO_DB_SYMBOL_in_filter_definition7262);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        REPLICATE_DO_DB_SYMBOL1316_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REPLICATE_DO_DB_SYMBOL1316));
        	        ADAPTOR->addChild(ADAPTOR, root_0, REPLICATE_DO_DB_SYMBOL1316_tree);
        	        }

        	        EQUAL_OPERATOR1317 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_filter_definition7264);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1317_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1317));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1317_tree);
        	        }

        	        OPEN_PAR_SYMBOL1318 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7266);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1318_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1318));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1318_tree);
        	        }

        	        // MySQL.g:1650:56: ( 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:1650:56: filter_db_list
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_filter_db_list_in_filter_definition7268);
        	        	        filter_db_list1319=filter_db_list(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefilter_definitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, filter_db_list1319.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        CLOSE_PAR_SYMBOL1320 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7271);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1320_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1320));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1320_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1651: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_SYMBOL1321 = (pANTLR3_COMMON_TOKEN) MATCHT(REPLICATE_IGNORE_DB_SYMBOL, &FOLLOW_REPLICATE_IGNORE_DB_SYMBOL_in_filter_definition7276);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        REPLICATE_IGNORE_DB_SYMBOL1321_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REPLICATE_IGNORE_DB_SYMBOL1321));
        	        ADAPTOR->addChild(ADAPTOR, root_0, REPLICATE_IGNORE_DB_SYMBOL1321_tree);
        	        }

        	        EQUAL_OPERATOR1322 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_filter_definition7278);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1322_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1322));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1322_tree);
        	        }

        	        OPEN_PAR_SYMBOL1323 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7280);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1323_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1323));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1323_tree);
        	        }

        	        // MySQL.g:1651:62: ( filter_db_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:1651:62: filter_db_list
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_filter_db_list_in_filter_definition7282);
        	        	        filter_db_list1324=filter_db_list(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefilter_definitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, filter_db_list1324.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        CLOSE_PAR_SYMBOL1325 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7285);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1325_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1325));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1325_tree);
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1652: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_SYMBOL1326 = (pANTLR3_COMMON_TOKEN) MATCHT(REPLICATE_DO_TABLE_SYMBOL, &FOLLOW_REPLICATE_DO_TABLE_SYMBOL_in_filter_definition7290);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        REPLICATE_DO_TABLE_SYMBOL1326_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REPLICATE_DO_TABLE_SYMBOL1326));
        	        ADAPTOR->addChild(ADAPTOR, root_0, REPLICATE_DO_TABLE_SYMBOL1326_tree);
        	        }

        	        EQUAL_OPERATOR1327 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_filter_definition7292);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1327_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1327));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1327_tree);
        	        }

        	        OPEN_PAR_SYMBOL1328 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7294);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1328_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1328));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1328_tree);
        	        }

        	        // MySQL.g:1652:61: ( 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:1652:61: filter_table_list
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_filter_table_list_in_filter_definition7296);
        	        	        filter_table_list1329=filter_table_list(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefilter_definitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, filter_table_list1329.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        CLOSE_PAR_SYMBOL1330 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7299);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1330_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1330));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1330_tree);
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1653: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_SYMBOL1331 = (pANTLR3_COMMON_TOKEN) MATCHT(REPLICATE_IGNORE_TABLE_SYMBOL, &FOLLOW_REPLICATE_IGNORE_TABLE_SYMBOL_in_filter_definition7304);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        REPLICATE_IGNORE_TABLE_SYMBOL1331_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REPLICATE_IGNORE_TABLE_SYMBOL1331));
        	        ADAPTOR->addChild(ADAPTOR, root_0, REPLICATE_IGNORE_TABLE_SYMBOL1331_tree);
        	        }

        	        EQUAL_OPERATOR1332 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_filter_definition7306);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1332_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1332));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1332_tree);
        	        }

        	        OPEN_PAR_SYMBOL1333 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7308);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1333_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1333));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1333_tree);
        	        }

        	        // MySQL.g:1653:65: ( filter_table_list )?
        	        {
        	            int alt438=2;
        	            {
        	                int LA438_0 = LA(1);
        	                if ( (((LA438_0 >= ACCOUNT_SYMBOL) && (LA438_0 <= YEAR_SYMBOL)) || LA438_0 == BACK_TICK_QUOTED_ID || LA438_0 == DOUBLE_QUOTED_TEXT || LA438_0 == IDENTIFIER))
        	                {
        	                    alt438=1;
        	                }
        	            }
        	            switch (alt438)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1653:65: filter_table_list
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_filter_table_list_in_filter_definition7310);
        	        	        filter_table_list1334=filter_table_list(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefilter_definitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, filter_table_list1334.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        CLOSE_PAR_SYMBOL1335 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7313);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1335_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1335));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1335_tree);
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:1654: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_SYMBOL1336 = (pANTLR3_COMMON_TOKEN) MATCHT(REPLICATE_WILD_DO_TABLE_SYMBOL, &FOLLOW_REPLICATE_WILD_DO_TABLE_SYMBOL_in_filter_definition7318);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        REPLICATE_WILD_DO_TABLE_SYMBOL1336_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REPLICATE_WILD_DO_TABLE_SYMBOL1336));
        	        ADAPTOR->addChild(ADAPTOR, root_0, REPLICATE_WILD_DO_TABLE_SYMBOL1336_tree);
        	        }

        	        EQUAL_OPERATOR1337 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_filter_definition7320);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1337_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1337));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1337_tree);
        	        }

        	        OPEN_PAR_SYMBOL1338 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7322);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1338_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1338));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1338_tree);
        	        }

        	        // MySQL.g:1654:66: ( filter_string_list )?
        	        {
        	            int alt439=2;
        	            switch ( LA(1) )
        	            {
        	                case SINGLE_QUOTED_TEXT:
        	                case BIN_NUMBER:
        	                case HEX_NUMBER:
        	                	{
        	                		alt439=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt439)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1654:66: filter_string_list
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_filter_string_list_in_filter_definition7324);
        	        	        filter_string_list1339=filter_string_list(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefilter_definitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, filter_string_list1339.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        CLOSE_PAR_SYMBOL1340 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7327);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1340_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1340));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1340_tree);
        	        }

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:1655: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_SYMBOL1341 = (pANTLR3_COMMON_TOKEN) MATCHT(REPLICATE_WILD_IGNORE_TABLE_SYMBOL, &FOLLOW_REPLICATE_WILD_IGNORE_TABLE_SYMBOL_in_filter_definition7332);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        REPLICATE_WILD_IGNORE_TABLE_SYMBOL1341_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REPLICATE_WILD_IGNORE_TABLE_SYMBOL1341));
        	        ADAPTOR->addChild(ADAPTOR, root_0, REPLICATE_WILD_IGNORE_TABLE_SYMBOL1341_tree);
        	        }

        	        EQUAL_OPERATOR1342 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_filter_definition7334);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1342_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1342));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1342_tree);
        	        }

        	        OPEN_PAR_SYMBOL1343 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7336);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1343_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1343));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1343_tree);
        	        }

        	        // MySQL.g:1655:70: ( filter_string_list )?
        	        {
        	            int alt440=2;
        	            switch ( LA(1) )
        	            {
        	                case SINGLE_QUOTED_TEXT:
        	                case BIN_NUMBER:
        	                case HEX_NUMBER:
        	                	{
        	                		alt440=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt440)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1655:70: filter_string_list
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_filter_string_list_in_filter_definition7338);
        	        	        filter_string_list1344=filter_string_list(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefilter_definitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, filter_string_list1344.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        CLOSE_PAR_SYMBOL1345 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7341);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1345_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1345));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1345_tree);
        	        }

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:1656: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_SYMBOL1346 = (pANTLR3_COMMON_TOKEN) MATCHT(REPLICATE_REWRITE_DB_SYMBOL, &FOLLOW_REPLICATE_REWRITE_DB_SYMBOL_in_filter_definition7346);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        REPLICATE_REWRITE_DB_SYMBOL1346_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REPLICATE_REWRITE_DB_SYMBOL1346));
        	        ADAPTOR->addChild(ADAPTOR, root_0, REPLICATE_REWRITE_DB_SYMBOL1346_tree);
        	        }

        	        EQUAL_OPERATOR1347 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_filter_definition7348);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1347_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1347));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1347_tree);
        	        }

        	        OPEN_PAR_SYMBOL1348 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7350);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1348_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1348));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1348_tree);
        	        }

        	        // MySQL.g:1656:63: ( filter_db_pair_list )?
        	        {
        	            int alt441=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt441=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt441)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1656:63: filter_db_pair_list
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_filter_db_pair_list_in_filter_definition7352);
        	        	        filter_db_pair_list1349=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_list1349.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        CLOSE_PAR_SYMBOL1350 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7355);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1350_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1350));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1350_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:1659: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_SYMBOL1352;
    MySQLParser_schema_ref_return schema_ref1351;
    #undef	RETURN_TYPE_schema_ref1351
    #define	RETURN_TYPE_schema_ref1351 MySQLParser_schema_ref_return

    MySQLParser_schema_ref_return schema_ref1353;
    #undef	RETURN_TYPE_schema_ref1353
    #define	RETURN_TYPE_schema_ref1353 MySQLParser_schema_ref_return

    pANTLR3_BASE_TREE COMMA_SYMBOL1352_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL1352       = NULL;
    schema_ref1351.tree = NULL;

    schema_ref1353.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL1352_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1659:15: ( schema_ref ( COMMA_SYMBOL schema_ref )* )
        // MySQL.g:1660:2: schema_ref ( COMMA_SYMBOL schema_ref )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_schema_ref_in_filter_db_list7364);
            schema_ref1351=schema_ref(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulefilter_db_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, schema_ref1351.tree);

            // MySQL.g:1660:13: ( COMMA_SYMBOL schema_ref )*

            for (;;)
            {
                int alt443=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt443=1;
                	}
                    break;

                }

                switch (alt443)
                {
            	case 1:
            	    // MySQL.g:1660:14: COMMA_SYMBOL schema_ref
            	    {
            	        COMMA_SYMBOL1352 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_filter_db_list7367);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulefilter_db_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL1352_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1352));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1352_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_schema_ref_in_filter_db_list7369);
            	        schema_ref1353=schema_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulefilter_db_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, schema_ref1353.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_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:1663: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_SYMBOL1355;
    MySQLParser_filter_table_ref_return filter_table_ref1354;
    #undef	RETURN_TYPE_filter_table_ref1354
    #define	RETURN_TYPE_filter_table_ref1354 MySQLParser_filter_table_ref_return

    MySQLParser_filter_table_ref_return filter_table_ref1356;
    #undef	RETURN_TYPE_filter_table_ref1356
    #define	RETURN_TYPE_filter_table_ref1356 MySQLParser_filter_table_ref_return

    pANTLR3_BASE_TREE COMMA_SYMBOL1355_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL1355       = NULL;
    filter_table_ref1354.tree = NULL;

    filter_table_ref1356.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL1355_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1663:18: ( filter_table_ref ( COMMA_SYMBOL filter_table_ref )* )
        // MySQL.g:1664: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_list7380);
            filter_table_ref1354=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_ref1354.tree);

            // MySQL.g:1664:19: ( COMMA_SYMBOL filter_table_ref )*

            for (;;)
            {
                int alt444=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt444=1;
                	}
                    break;

                }

                switch (alt444)
                {
            	case 1:
            	    // MySQL.g:1664:20: COMMA_SYMBOL filter_table_ref
            	    {
            	        COMMA_SYMBOL1355 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_filter_table_list7383);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulefilter_table_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_filter_table_ref_in_filter_table_list7385);
            	        filter_table_ref1356=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_ref1356.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_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:1667: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_SYMBOL1358;
    MySQLParser_filter_wild_db_table_string_return filter_wild_db_table_string1357;
    #undef	RETURN_TYPE_filter_wild_db_table_string1357
    #define	RETURN_TYPE_filter_wild_db_table_string1357 MySQLParser_filter_wild_db_table_string_return

    MySQLParser_filter_wild_db_table_string_return filter_wild_db_table_string1359;
    #undef	RETURN_TYPE_filter_wild_db_table_string1359
    #define	RETURN_TYPE_filter_wild_db_table_string1359 MySQLParser_filter_wild_db_table_string_return

    pANTLR3_BASE_TREE COMMA_SYMBOL1358_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL1358       = NULL;
    filter_wild_db_table_string1357.tree = NULL;

    filter_wild_db_table_string1359.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL1358_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1667:19: ( filter_wild_db_table_string ( COMMA_SYMBOL filter_wild_db_table_string )* )
        // MySQL.g:1668: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_list7396);
            filter_wild_db_table_string1357=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_string1357.tree);

            // MySQL.g:1668:30: ( COMMA_SYMBOL filter_wild_db_table_string )*

            for (;;)
            {
                int alt445=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt445=1;
                	}
                    break;

                }

                switch (alt445)
                {
            	case 1:
            	    // MySQL.g:1668:31: COMMA_SYMBOL filter_wild_db_table_string
            	    {
            	        COMMA_SYMBOL1358 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_filter_string_list7399);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulefilter_string_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL1358_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1358));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1358_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_filter_wild_db_table_string_in_filter_string_list7401);
            	        filter_wild_db_table_string1359=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_string1359.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_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:1671: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_linebreak1360;
    #undef	RETURN_TYPE_text_string_no_linebreak1360
    #define	RETURN_TYPE_text_string_no_linebreak1360 MySQLParser_text_string_no_linebreak_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    text_string_no_linebreak1360.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:1671:28: ( text_string_no_linebreak )
        // MySQL.g:1672:2: text_string_no_linebreak
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_text_string_no_linebreak_in_filter_wild_db_table_string7412);
            text_string_no_linebreak1360=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_linebreak1360.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:1675: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_SYMBOL1362;
    MySQLParser_schema_identifier_pair_return schema_identifier_pair1361;
    #undef	RETURN_TYPE_schema_identifier_pair1361
    #define	RETURN_TYPE_schema_identifier_pair1361 MySQLParser_schema_identifier_pair_return

    MySQLParser_schema_identifier_pair_return schema_identifier_pair1363;
    #undef	RETURN_TYPE_schema_identifier_pair1363
    #define	RETURN_TYPE_schema_identifier_pair1363 MySQLParser_schema_identifier_pair_return

    pANTLR3_BASE_TREE COMMA_SYMBOL1362_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL1362       = NULL;
    schema_identifier_pair1361.tree = NULL;

    schema_identifier_pair1363.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL1362_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1675:20: ( schema_identifier_pair ( COMMA_SYMBOL schema_identifier_pair )* )
        // MySQL.g:1676: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_list7422);
            schema_identifier_pair1361=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_pair1361.tree);

            // MySQL.g:1676:25: ( COMMA_SYMBOL schema_identifier_pair )*

            for (;;)
            {
                int alt446=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt446=1;
                	}
                    break;

                }

                switch (alt446)
                {
            	case 1:
            	    // MySQL.g:1676:26: COMMA_SYMBOL schema_identifier_pair
            	    {
            	        COMMA_SYMBOL1362 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_filter_db_pair_list7425);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulefilter_db_pair_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL1362_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1362));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1362_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_schema_identifier_pair_in_filter_db_pair_list7427);
            	        schema_identifier_pair1363=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_pair1363.tree);

            	    }
            	    break;

            	default:
            	    goto loop446;	/* break out of the loop */
            	    break;
                }
            }
            loop446: ; /* 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:1679: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_SYMBOL1364;
    pANTLR3_COMMON_TOKEN    SLAVE_SYMBOL1365;
    pANTLR3_COMMON_TOKEN    UNTIL_SYMBOL1367;
    pANTLR3_COMMON_TOKEN    STOP_SYMBOL1371;
    pANTLR3_COMMON_TOKEN    SLAVE_SYMBOL1372;
    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_slave_until_options_return slave_until_options1368;
    #undef	RETURN_TYPE_slave_until_options1368
    #define	RETURN_TYPE_slave_until_options1368 MySQLParser_slave_until_options_return

    MySQLParser_slave_connection_options_return slave_connection_options1369;
    #undef	RETURN_TYPE_slave_connection_options1369
    #define	RETURN_TYPE_slave_connection_options1369 MySQLParser_slave_connection_options_return

    MySQLParser_channel_return channel1370;
    #undef	RETURN_TYPE_channel1370
    #define	RETURN_TYPE_channel1370 MySQLParser_channel_return

    MySQLParser_slave_thread_options_return slave_thread_options1373;
    #undef	RETURN_TYPE_slave_thread_options1373
    #define	RETURN_TYPE_slave_thread_options1373 MySQLParser_slave_thread_options_return

    MySQLParser_channel_return channel1374;
    #undef	RETURN_TYPE_channel1374
    #define	RETURN_TYPE_channel1374 MySQLParser_channel_return

    pANTLR3_BASE_TREE START_SYMBOL1364_tree;
    pANTLR3_BASE_TREE SLAVE_SYMBOL1365_tree;
    pANTLR3_BASE_TREE UNTIL_SYMBOL1367_tree;
    pANTLR3_BASE_TREE STOP_SYMBOL1371_tree;
    pANTLR3_BASE_TREE SLAVE_SYMBOL1372_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    START_SYMBOL1364       = NULL;
    SLAVE_SYMBOL1365       = NULL;
    UNTIL_SYMBOL1367       = NULL;
    STOP_SYMBOL1371       = NULL;
    SLAVE_SYMBOL1372       = NULL;
    slave_thread_options1366.tree = NULL;

    slave_until_options1368.tree = NULL;

    slave_connection_options1369.tree = NULL;

    channel1370.tree = NULL;

    slave_thread_options1373.tree = NULL;

    channel1374.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    START_SYMBOL1364_tree   = NULL;
    SLAVE_SYMBOL1365_tree   = NULL;
    UNTIL_SYMBOL1367_tree   = NULL;
    STOP_SYMBOL1371_tree   = NULL;
    SLAVE_SYMBOL1372_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1679: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 alt452;

            alt452=2;

            switch ( LA(1) )
            {
            case START_SYMBOL:
            	{
            		alt452=1;
            	}
                break;
            case STOP_SYMBOL:
            	{
            		alt452=2;
            	}
                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 ruleslaveEx;

            }

            switch (alt452)
            {
        	case 1:
        	    // MySQL.g:1680: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_SYMBOL1364 = (pANTLR3_COMMON_TOKEN) MATCHT(START_SYMBOL, &FOLLOW_START_SYMBOL_in_slave7438);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleslaveEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        START_SYMBOL1364_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, START_SYMBOL1364))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, START_SYMBOL1364_tree, root_0));
        	        }

        	        SLAVE_SYMBOL1365 = (pANTLR3_COMMON_TOKEN) MATCHT(SLAVE_SYMBOL, &FOLLOW_SLAVE_SYMBOL_in_slave7441);
        	        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:1680:29: ( slave_thread_options )?
        	        {
        	            int alt447=2;
        	            switch ( LA(1) )
        	            {
        	                case RELAY_THREAD_SYMBOL:
        	                case SQL_THREAD_SYMBOL:
        	                	{
        	                		alt447=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt447)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1680:29: slave_thread_options
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_slave_thread_options_in_slave7443);
        	        	        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:1680:51: ( UNTIL_SYMBOL slave_until_options )?
        	        {
        	            int alt448=2;
        	            switch ( LA(1) )
        	            {
        	                case UNTIL_SYMBOL:
        	                	{
        	                		alt448=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt448)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1680:52: UNTIL_SYMBOL slave_until_options
        	        	    {
        	        	        UNTIL_SYMBOL1367 = (pANTLR3_COMMON_TOKEN) MATCHT(UNTIL_SYMBOL, &FOLLOW_UNTIL_SYMBOL_in_slave7447);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleslaveEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        UNTIL_SYMBOL1367_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNTIL_SYMBOL1367));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, UNTIL_SYMBOL1367_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_slave_until_options_in_slave7449);
        	        	        slave_until_options1368=slave_until_options(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleslaveEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, slave_until_options1368.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_slave_connection_options_in_slave7453);
        	        slave_connection_options1369=slave_connection_options(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleslaveEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, slave_connection_options1369.tree);

        	        // MySQL.g:1680:112: ( channel )?
        	        {
        	            int alt449=2;
        	            {
        	                int LA449_0 = LA(1);
        	                if ( ((SERVER_VERSION >= 50706)) && (LA449_0 == FOR_SYMBOL))
        	                {
        	                    alt449=1;
        	                }
        	            }
        	            switch (alt449)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1680:112: channel
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_channel_in_slave7455);
        	        	        channel1370=channel(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleslaveEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, channel1370.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1681:4: STOP_SYMBOL ^ SLAVE_SYMBOL ( slave_thread_options )? ( channel )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        STOP_SYMBOL1371 = (pANTLR3_COMMON_TOKEN) MATCHT(STOP_SYMBOL, &FOLLOW_STOP_SYMBOL_in_slave7461);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleslaveEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        STOP_SYMBOL1371_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STOP_SYMBOL1371))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, STOP_SYMBOL1371_tree, root_0));
        	        }

        	        SLAVE_SYMBOL1372 = (pANTLR3_COMMON_TOKEN) MATCHT(SLAVE_SYMBOL, &FOLLOW_SLAVE_SYMBOL_in_slave7464);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleslaveEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SLAVE_SYMBOL1372_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SLAVE_SYMBOL1372));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SLAVE_SYMBOL1372_tree);
        	        }

        	        // MySQL.g:1681:30: ( slave_thread_options )?
        	        {
        	            int alt450=2;
        	            switch ( LA(1) )
        	            {
        	                case RELAY_THREAD_SYMBOL:
        	                case SQL_THREAD_SYMBOL:
        	                	{
        	                		alt450=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt450)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1681:30: slave_thread_options
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_slave_thread_options_in_slave7466);
        	        	        slave_thread_options1373=slave_thread_options(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleslaveEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, slave_thread_options1373.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:1681:52: ( channel )?
        	        {
        	            int alt451=2;
        	            {
        	                int LA451_0 = LA(1);
        	                if ( ((SERVER_VERSION >= 50706)) && (LA451_0 == FOR_SYMBOL))
        	                {
        	                    alt451=1;
        	                }
        	            }
        	            switch (alt451)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1681:52: channel
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_channel_in_slave7469);
        	        	        channel1374=channel(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleslaveEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, channel1374.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:1684: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    set1376;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1377;
    pANTLR3_COMMON_TOKEN    SQL_AFTER_MTS_GAPS_SYMBOL1379;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1380;
    MySQLParser_master_file_def_return master_file_def1375;
    #undef	RETURN_TYPE_master_file_def1375
    #define	RETURN_TYPE_master_file_def1375 MySQLParser_master_file_def_return

    MySQLParser_text_string_return text_string1378;
    #undef	RETURN_TYPE_text_string1378
    #define	RETURN_TYPE_text_string1378 MySQLParser_text_string_return

    MySQLParser_master_file_def_return master_file_def1381;
    #undef	RETURN_TYPE_master_file_def1381
    #define	RETURN_TYPE_master_file_def1381 MySQLParser_master_file_def_return

    pANTLR3_BASE_TREE set1376_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1377_tree;
    pANTLR3_BASE_TREE SQL_AFTER_MTS_GAPS_SYMBOL1379_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1380_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1376       = NULL;
    EQUAL_OPERATOR1377       = NULL;
    SQL_AFTER_MTS_GAPS_SYMBOL1379       = NULL;
    COMMA_SYMBOL1380       = NULL;
    master_file_def1375.tree = NULL;

    text_string1378.tree = NULL;

    master_file_def1381.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1376_tree   = NULL;
    EQUAL_OPERATOR1377_tree   = NULL;
    SQL_AFTER_MTS_GAPS_SYMBOL1379_tree   = NULL;
    COMMA_SYMBOL1380_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1684: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:1685: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:1685:2: ( master_file_def |{...}? ( SQL_BEFORE_GTIDS_SYMBOL | SQL_AFTER_GTIDS_SYMBOL ) EQUAL_OPERATOR text_string |{...}? SQL_AFTER_MTS_GAPS_SYMBOL )
            {
                int alt453=3;
                switch ( LA(1) )
                {
                case MASTER_LOG_FILE_SYMBOL:
                case MASTER_LOG_POS_SYMBOL:
                case RELAY_LOG_FILE_SYMBOL:
                case RELAY_LOG_POS_SYMBOL:
                	{
                		alt453=1;
                	}
                    break;
                case SQL_AFTER_GTIDS_SYMBOL:
                case SQL_BEFORE_GTIDS_SYMBOL:
                	{
                		alt453=2;
                	}
                    break;
                case SQL_AFTER_MTS_GAPS_SYMBOL:
                	{
                		alt453=3;
                	}
                    break;

                default:
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }

                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 453;
                    EXCEPTION->state        = 0;


                    goto ruleslave_until_optionsEx;

                }

                switch (alt453)
                {
            	case 1:
            	    // MySQL.g:1686:3: master_file_def
            	    {
            	        FOLLOWPUSH(FOLLOW_master_file_def_in_slave_until_options7483);
            	        master_file_def1375=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_def1375.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1687: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";


            	        }

            	        set1376=(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, set1376))
            	            );
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

            	        }
            	        else
            	        {
            	            if (BACKTRACKING>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_OPERATOR1377 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_slave_until_options7499);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleslave_until_optionsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        EQUAL_OPERATOR1377_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1377));
            	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1377_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_text_string_in_slave_until_options7501);
            	        text_string1378=text_string(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleslave_until_optionsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string1378.tree);

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:1688: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_SYMBOL1379 = (pANTLR3_COMMON_TOKEN) MATCHT(SQL_AFTER_MTS_GAPS_SYMBOL, &FOLLOW_SQL_AFTER_MTS_GAPS_SYMBOL_in_slave_until_options7509);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleslave_until_optionsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SQL_AFTER_MTS_GAPS_SYMBOL1379_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SQL_AFTER_MTS_GAPS_SYMBOL1379));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SQL_AFTER_MTS_GAPS_SYMBOL1379_tree);
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:1690:2: ( COMMA_SYMBOL master_file_def )*

            for (;;)
            {
                int alt454=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt454=1;
                	}
                    break;

                }

                switch (alt454)
                {
            	case 1:
            	    // MySQL.g:1690:3: COMMA_SYMBOL master_file_def
            	    {
            	        COMMA_SYMBOL1380 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_slave_until_options7516);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleslave_until_optionsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL1380_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1380));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1380_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_master_file_def_in_slave_until_options7518);
            	        master_file_def1381=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_def1381.tree);

            	    }
            	    break;

            	default:
            	    goto loop454;	/* break out of the loop */
            	    break;
                }
            }
            loop454: ; /* 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:1693: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_SYMBOL1382;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1383;
    pANTLR3_COMMON_TOKEN    PASSWORD_SYMBOL1385;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1386;
    pANTLR3_COMMON_TOKEN    DEFAULT_AUTH_SYMBOL1388;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1389;
    pANTLR3_COMMON_TOKEN    PLUGIN_DIR_SYMBOL1391;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1392;
    MySQLParser_text_string_return text_string1384;
    #undef	RETURN_TYPE_text_string1384
    #define	RETURN_TYPE_text_string1384 MySQLParser_text_string_return

    MySQLParser_text_string_return text_string1387;
    #undef	RETURN_TYPE_text_string1387
    #define	RETURN_TYPE_text_string1387 MySQLParser_text_string_return

    MySQLParser_text_string_return text_string1390;
    #undef	RETURN_TYPE_text_string1390
    #define	RETURN_TYPE_text_string1390 MySQLParser_text_string_return

    MySQLParser_text_string_return text_string1393;
    #undef	RETURN_TYPE_text_string1393
    #define	RETURN_TYPE_text_string1393 MySQLParser_text_string_return

    pANTLR3_BASE_TREE USER_SYMBOL1382_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1383_tree;
    pANTLR3_BASE_TREE PASSWORD_SYMBOL1385_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1386_tree;
    pANTLR3_BASE_TREE DEFAULT_AUTH_SYMBOL1388_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1389_tree;
    pANTLR3_BASE_TREE PLUGIN_DIR_SYMBOL1391_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1392_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    USER_SYMBOL1382       = NULL;
    EQUAL_OPERATOR1383       = NULL;
    PASSWORD_SYMBOL1385       = NULL;
    EQUAL_OPERATOR1386       = NULL;
    DEFAULT_AUTH_SYMBOL1388       = NULL;
    EQUAL_OPERATOR1389       = NULL;
    PLUGIN_DIR_SYMBOL1391       = NULL;
    EQUAL_OPERATOR1392       = NULL;
    text_string1384.tree = NULL;

    text_string1387.tree = NULL;

    text_string1390.tree = NULL;

    text_string1393.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    USER_SYMBOL1382_tree   = NULL;
    EQUAL_OPERATOR1383_tree   = NULL;
    PASSWORD_SYMBOL1385_tree   = NULL;
    EQUAL_OPERATOR1386_tree   = NULL;
    DEFAULT_AUTH_SYMBOL1388_tree   = NULL;
    EQUAL_OPERATOR1389_tree   = NULL;
    PLUGIN_DIR_SYMBOL1391_tree   = NULL;
    EQUAL_OPERATOR1392_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1693: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 alt459;

            alt459=2;

            {
                int LA459_0 = LA(1);
                if ( (LA459_0 == DEFAULT_AUTH_SYMBOL || LA459_0 == PASSWORD_SYMBOL || LA459_0 == PLUGIN_DIR_SYMBOL || LA459_0 == USER_SYMBOL))
                {
                    alt459=1;
                }
                else if ( ((SERVER_VERSION >= 50706)) && (LA459_0 == FOR_SYMBOL))
                {
                    {
                        int LA459_5 = LA(2);
                        if ( (( (( ((SERVER_VERSION >= 50604)) && ((SERVER_VERSION >= 50604)) )) && ((SERVER_VERSION >= 50706)) )))
                        {
                            alt459=1;
                        }
                        else if ( ((SERVER_VERSION >= 50706)))
                        {
                            alt459=2;
                        }
                        else
                        {
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }


                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 459;
                            EXCEPTION->state        = 5;


                            goto ruleslave_connection_optionsEx;

                        }
                    }
                }
                else if ( (LA459_0 == SEMICOLON_SYMBOL))
                {
                    {
                        int LA459_6 = LA(2);
                        if ( ((SERVER_VERSION >= 50604)))
                        {
                            alt459=1;
                        }
                        else if ( (ANTLR3_TRUE))
                        {
                            alt459=2;
                        }
                        else
                        {
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }


                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 459;
                            EXCEPTION->state        = 6;


                            goto ruleslave_connection_optionsEx;

                        }
                    }
                }
                else if ( (LA459_0 == EOF))
                {
                    {
                        int LA459_7 = LA(2);
                        if ( ((SERVER_VERSION >= 50604)))
                        {
                            alt459=1;
                        }
                        else if ( (ANTLR3_TRUE))
                        {
                            alt459=2;
                        }
                        else
                        {
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }


                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 459;
                            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  = 459;
                    EXCEPTION->state        = 0;


                    goto ruleslave_connection_optionsEx;

                }
            }
            switch (alt459)
            {
        	case 1:
        	    // MySQL.g:1694: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:1694:29: ( USER_SYMBOL EQUAL_OPERATOR text_string )?
        	        {
        	            int alt455=2;
        	            switch ( LA(1) )
        	            {
        	                case USER_SYMBOL:
        	                	{
        	                		alt455=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt455)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1694:30: USER_SYMBOL EQUAL_OPERATOR text_string
        	        	    {
        	        	        USER_SYMBOL1382 = (pANTLR3_COMMON_TOKEN) MATCHT(USER_SYMBOL, &FOLLOW_USER_SYMBOL_in_slave_connection_options7532);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleslave_connection_optionsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        USER_SYMBOL1382_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USER_SYMBOL1382));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, USER_SYMBOL1382_tree);
        	        	        }

        	        	        EQUAL_OPERATOR1383 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_slave_connection_options7534);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleslave_connection_optionsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR1383_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1383));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1383_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_text_string_in_slave_connection_options7536);
        	        	        text_string1384=text_string(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleslave_connection_optionsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string1384.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:1694:71: ( PASSWORD_SYMBOL EQUAL_OPERATOR text_string )?
        	        {
        	            int alt456=2;
        	            switch ( LA(1) )
        	            {
        	                case PASSWORD_SYMBOL:
        	                	{
        	                		alt456=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt456)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1694:72: PASSWORD_SYMBOL EQUAL_OPERATOR text_string
        	        	    {
        	        	        PASSWORD_SYMBOL1385 = (pANTLR3_COMMON_TOKEN) MATCHT(PASSWORD_SYMBOL, &FOLLOW_PASSWORD_SYMBOL_in_slave_connection_options7541);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleslave_connection_optionsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        PASSWORD_SYMBOL1385_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PASSWORD_SYMBOL1385));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, PASSWORD_SYMBOL1385_tree);
        	        	        }

        	        	        EQUAL_OPERATOR1386 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_slave_connection_options7543);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleslave_connection_optionsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR1386_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1386));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1386_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_text_string_in_slave_connection_options7545);
        	        	        text_string1387=text_string(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleslave_connection_optionsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string1387.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:1695:3: ( DEFAULT_AUTH_SYMBOL EQUAL_OPERATOR text_string )?
        	        {
        	            int alt457=2;
        	            switch ( LA(1) )
        	            {
        	                case DEFAULT_AUTH_SYMBOL:
        	                	{
        	                		alt457=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt457)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1695:4: DEFAULT_AUTH_SYMBOL EQUAL_OPERATOR text_string
        	        	    {
        	        	        DEFAULT_AUTH_SYMBOL1388 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_AUTH_SYMBOL, &FOLLOW_DEFAULT_AUTH_SYMBOL_in_slave_connection_options7552);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleslave_connection_optionsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        DEFAULT_AUTH_SYMBOL1388_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_AUTH_SYMBOL1388));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_AUTH_SYMBOL1388_tree);
        	        	        }

        	        	        EQUAL_OPERATOR1389 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_slave_connection_options7554);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleslave_connection_optionsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR1389_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1389));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1389_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_text_string_in_slave_connection_options7556);
        	        	        text_string1390=text_string(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleslave_connection_optionsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string1390.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:1695:53: ( PLUGIN_DIR_SYMBOL EQUAL_OPERATOR text_string )?
        	        {
        	            int alt458=2;
        	            switch ( LA(1) )
        	            {
        	                case PLUGIN_DIR_SYMBOL:
        	                	{
        	                		alt458=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt458)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1695:54: PLUGIN_DIR_SYMBOL EQUAL_OPERATOR text_string
        	        	    {
        	        	        PLUGIN_DIR_SYMBOL1391 = (pANTLR3_COMMON_TOKEN) MATCHT(PLUGIN_DIR_SYMBOL, &FOLLOW_PLUGIN_DIR_SYMBOL_in_slave_connection_options7561);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleslave_connection_optionsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        PLUGIN_DIR_SYMBOL1391_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PLUGIN_DIR_SYMBOL1391));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, PLUGIN_DIR_SYMBOL1391_tree);
        	        	        }

        	        	        EQUAL_OPERATOR1392 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_slave_connection_options7563);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleslave_connection_optionsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR1392_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1392));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1392_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_text_string_in_slave_connection_options7565);
        	        	        text_string1393=text_string(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleslave_connection_optionsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string1393.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1697: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:1699: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_SYMBOL1395;
    MySQLParser_slave_thread_option_return slave_thread_option1394;
    #undef	RETURN_TYPE_slave_thread_option1394
    #define	RETURN_TYPE_slave_thread_option1394 MySQLParser_slave_thread_option_return

    MySQLParser_slave_thread_option_return slave_thread_option1396;
    #undef	RETURN_TYPE_slave_thread_option1396
    #define	RETURN_TYPE_slave_thread_option1396 MySQLParser_slave_thread_option_return

    pANTLR3_BASE_TREE COMMA_SYMBOL1395_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_SYMBOL1395       = NULL;
    slave_thread_option1394.tree = NULL;

    slave_thread_option1396.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL1395_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:1699:21: ( slave_thread_option ( COMMA_SYMBOL slave_thread_option )* -> ^( SLAVE_THREAD_OPTIONS_TOKEN slave_thread_option ( COMMA_SYMBOL slave_thread_option )* ) )
        // MySQL.g:1700:2: slave_thread_option ( COMMA_SYMBOL slave_thread_option )*
        {
            FOLLOWPUSH(FOLLOW_slave_thread_option_in_slave_thread_options7581);
            slave_thread_option1394=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_option1394.tree, NULL); }

            // MySQL.g:1700:22: ( COMMA_SYMBOL slave_thread_option )*

            for (;;)
            {
                int alt460=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt460=1;
                	}
                    break;

                }

                switch (alt460)
                {
            	case 1:
            	    // MySQL.g:1700:23: COMMA_SYMBOL slave_thread_option
            	    {
            	        COMMA_SYMBOL1395 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_slave_thread_options7584);
            	        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_SYMBOL1395, NULL); }


            	        FOLLOWPUSH(FOLLOW_slave_thread_option_in_slave_thread_options7586);
            	        slave_thread_option1396=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_option1396.tree, NULL); }

            	    }
            	    break;

            	default:
            	    goto loop460;	/* break out of the loop */
            	    break;
                }
            }
            loop460: ; /* 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;
            	// 1700:58: -> ^( SLAVE_THREAD_OPTIONS_TOKEN slave_thread_option ( COMMA_SYMBOL slave_thread_option )* )
            	{
            	    // MySQL.g:1700: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:1700: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:1703: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    set1397;

    pANTLR3_BASE_TREE set1397_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1397       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1397_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1703:20: ( RELAY_THREAD_SYMBOL | SQL_THREAD_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set1397=(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, set1397))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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:1707: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    set1398;
    pANTLR3_COMMON_TOKEN    GROUP_REPLICATION_SYMBOL1399;

    pANTLR3_BASE_TREE set1398_tree;
    pANTLR3_BASE_TREE GROUP_REPLICATION_SYMBOL1399_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1398       = NULL;
    GROUP_REPLICATION_SYMBOL1399       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1398_tree   = NULL;
    GROUP_REPLICATION_SYMBOL1399_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1707:18: ( ( START_SYMBOL | STOP_SYMBOL ) GROUP_REPLICATION_SYMBOL )
        // MySQL.g:1708:2: ( START_SYMBOL | STOP_SYMBOL ) GROUP_REPLICATION_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set1398=(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, set1398))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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_SYMBOL1399 = (pANTLR3_COMMON_TOKEN) MATCHT(GROUP_REPLICATION_SYMBOL, &FOLLOW_GROUP_REPLICATION_SYMBOL_in_group_replication7633);
            if  (HASEXCEPTION())
            {
                goto rulegroup_replicationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            GROUP_REPLICATION_SYMBOL1399_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GROUP_REPLICATION_SYMBOL1399));
            ADAPTOR->addChild(ADAPTOR, root_0, GROUP_REPLICATION_SYMBOL1399_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:1713: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_SYMBOL1400;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL1402;
    pANTLR3_COMMON_TOKEN    set1406;
    pANTLR3_COMMON_TOKEN    PREPARE_SYMBOL1407;
    MySQLParser_identifier_return identifier1401;
    #undef	RETURN_TYPE_identifier1401
    #define	RETURN_TYPE_identifier1401 MySQLParser_identifier_return

    MySQLParser_string_literal_return string_literal1403;
    #undef	RETURN_TYPE_string_literal1403
    #define	RETURN_TYPE_string_literal1403 MySQLParser_string_literal_return

    MySQLParser_user_variable_return user_variable1404;
    #undef	RETURN_TYPE_user_variable1404
    #define	RETURN_TYPE_user_variable1404 MySQLParser_user_variable_return

    MySQLParser_execute_statement_return execute_statement1405;
    #undef	RETURN_TYPE_execute_statement1405
    #define	RETURN_TYPE_execute_statement1405 MySQLParser_execute_statement_return

    MySQLParser_identifier_return identifier1408;
    #undef	RETURN_TYPE_identifier1408
    #define	RETURN_TYPE_identifier1408 MySQLParser_identifier_return

    pANTLR3_BASE_TREE PREPARE_SYMBOL1400_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL1402_tree;
    pANTLR3_BASE_TREE set1406_tree;
    pANTLR3_BASE_TREE PREPARE_SYMBOL1407_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    PREPARE_SYMBOL1400       = NULL;
    FROM_SYMBOL1402       = NULL;
    set1406       = NULL;
    PREPARE_SYMBOL1407       = NULL;
    identifier1401.tree = NULL;

    string_literal1403.tree = NULL;

    user_variable1404.tree = NULL;

    execute_statement1405.tree = NULL;

    identifier1408.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    PREPARE_SYMBOL1400_tree   = NULL;
    FROM_SYMBOL1402_tree   = NULL;
    set1406_tree   = NULL;
    PREPARE_SYMBOL1407_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1713:19: ( PREPARE_SYMBOL ^ identifier FROM_SYMBOL ( string_literal | user_variable ) | execute_statement | ( DEALLOCATE_SYMBOL | DROP_SYMBOL ) ^ PREPARE_SYMBOL identifier )

            ANTLR3_UINT32 alt462;

            alt462=3;

            switch ( LA(1) )
            {
            case PREPARE_SYMBOL:
            	{
            		alt462=1;
            	}
                break;
            case EXECUTE_SYMBOL:
            	{
            		alt462=2;
            	}
                break;
            case DEALLOCATE_SYMBOL:
            case DROP_SYMBOL:
            	{
            		alt462=3;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 462;
                EXCEPTION->state        = 0;


                goto ruleprepared_statementEx;

            }

            switch (alt462)
            {
        	case 1:
        	    // MySQL.g:1714:2: PREPARE_SYMBOL ^ identifier FROM_SYMBOL ( string_literal | user_variable )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        PREPARE_SYMBOL1400 = (pANTLR3_COMMON_TOKEN) MATCHT(PREPARE_SYMBOL, &FOLLOW_PREPARE_SYMBOL_in_prepared_statement7644);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprepared_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PREPARE_SYMBOL1400_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PREPARE_SYMBOL1400))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, PREPARE_SYMBOL1400_tree, root_0));
        	        }

        	        FOLLOWPUSH(FOLLOW_identifier_in_prepared_statement7647);
        	        identifier1401=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprepared_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier1401.tree);

        	        FROM_SYMBOL1402 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_prepared_statement7649);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprepared_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FROM_SYMBOL1402_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL1402));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL1402_tree);
        	        }

        	        // MySQL.g:1714:41: ( string_literal | user_variable )
        	        {
        	            int alt461=2;
        	            switch ( LA(1) )
        	            {
        	            case NCHAR_TEXT:
        	            case SINGLE_QUOTED_TEXT:
        	            case DOUBLE_QUOTED_TEXT:
        	            case UNDERSCORE_CHARSET:
        	            	{
        	            		alt461=1;
        	            	}
        	                break;
        	            case AT_SIGN_SYMBOL:
        	            case AT_TEXT_SUFFIX:
        	            	{
        	            		alt461=2;
        	            	}
        	                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:1714:42: string_literal
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_string_literal_in_prepared_statement7652);
        	        	        string_literal1403=string_literal(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleprepared_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal1403.tree);

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:1714:59: user_variable
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_user_variable_in_prepared_statement7656);
        	        	        user_variable1404=user_variable(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleprepared_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user_variable1404.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1715:4: execute_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_execute_statement_in_prepared_statement7662);
        	        execute_statement1405=execute_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprepared_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, execute_statement1405.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1716:4: ( DEALLOCATE_SYMBOL | DROP_SYMBOL ) ^ PREPARE_SYMBOL identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        set1406=(pANTLR3_COMMON_TOKEN)LT(1);

        	        set1406=(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, set1406))
        	            , 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_SYMBOL1407 = (pANTLR3_COMMON_TOKEN) MATCHT(PREPARE_SYMBOL, &FOLLOW_PREPARE_SYMBOL_in_prepared_statement7676);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprepared_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PREPARE_SYMBOL1407_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PREPARE_SYMBOL1407));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PREPARE_SYMBOL1407_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_identifier_in_prepared_statement7678);
        	        identifier1408=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprepared_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier1408.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:1719: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_SYMBOL1409;
    pANTLR3_COMMON_TOKEN    USING_SYMBOL1411;
    MySQLParser_identifier_return identifier1410;
    #undef	RETURN_TYPE_identifier1410
    #define	RETURN_TYPE_identifier1410 MySQLParser_identifier_return

    MySQLParser_execute_var_list_return execute_var_list1412;
    #undef	RETURN_TYPE_execute_var_list1412
    #define	RETURN_TYPE_execute_var_list1412 MySQLParser_execute_var_list_return

    pANTLR3_BASE_TREE EXECUTE_SYMBOL1409_tree;
    pANTLR3_BASE_TREE USING_SYMBOL1411_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    EXECUTE_SYMBOL1409       = NULL;
    USING_SYMBOL1411       = NULL;
    identifier1410.tree = NULL;

    execute_var_list1412.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    EXECUTE_SYMBOL1409_tree   = NULL;
    USING_SYMBOL1411_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1719:18: ( EXECUTE_SYMBOL ^ identifier ( USING_SYMBOL execute_var_list )? )
        // MySQL.g:1720:2: EXECUTE_SYMBOL ^ identifier ( USING_SYMBOL execute_var_list )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            EXECUTE_SYMBOL1409 = (pANTLR3_COMMON_TOKEN) MATCHT(EXECUTE_SYMBOL, &FOLLOW_EXECUTE_SYMBOL_in_execute_statement7687);
            if  (HASEXCEPTION())
            {
                goto ruleexecute_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EXECUTE_SYMBOL1409_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EXECUTE_SYMBOL1409))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, EXECUTE_SYMBOL1409_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_identifier_in_execute_statement7690);
            identifier1410=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleexecute_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier1410.tree);

            // MySQL.g:1720:29: ( USING_SYMBOL execute_var_list )?
            {
                int alt463=2;
                switch ( LA(1) )
                {
                    case USING_SYMBOL:
                    	{
                    		alt463=1;
                    	}
                        break;
                }

                switch (alt463)
                {
            	case 1:
            	    // MySQL.g:1720:30: USING_SYMBOL execute_var_list
            	    {
            	        USING_SYMBOL1411 = (pANTLR3_COMMON_TOKEN) MATCHT(USING_SYMBOL, &FOLLOW_USING_SYMBOL_in_execute_statement7693);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleexecute_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        USING_SYMBOL1411_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USING_SYMBOL1411));
            	        ADAPTOR->addChild(ADAPTOR, root_0, USING_SYMBOL1411_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_execute_var_list_in_execute_statement7695);
            	        execute_var_list1412=execute_var_list(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleexecute_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, execute_var_list1412.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:1723: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_SYMBOL1414;
    MySQLParser_user_variable_return user_variable1413;
    #undef	RETURN_TYPE_user_variable1413
    #define	RETURN_TYPE_user_variable1413 MySQLParser_user_variable_return

    MySQLParser_user_variable_return user_variable1415;
    #undef	RETURN_TYPE_user_variable1415
    #define	RETURN_TYPE_user_variable1415 MySQLParser_user_variable_return

    pANTLR3_BASE_TREE COMMA_SYMBOL1414_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL1414       = NULL;
    user_variable1413.tree = NULL;

    user_variable1415.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL1414_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1723:17: ( user_variable ( COMMA_SYMBOL user_variable )* )
        // MySQL.g:1724:2: user_variable ( COMMA_SYMBOL user_variable )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_user_variable_in_execute_var_list7706);
            user_variable1413=user_variable(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleexecute_var_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user_variable1413.tree);

            // MySQL.g:1724:16: ( COMMA_SYMBOL user_variable )*

            for (;;)
            {
                int alt464=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt464=1;
                	}
                    break;

                }

                switch (alt464)
                {
            	case 1:
            	    // MySQL.g:1724:17: COMMA_SYMBOL user_variable
            	    {
            	        COMMA_SYMBOL1414 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_execute_var_list7709);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleexecute_var_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL1414_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1414));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1414_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_user_variable_in_execute_var_list7711);
            	        user_variable1415=user_variable(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleexecute_var_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user_variable1415.tree);

            	    }
            	    break;

            	default:
            	    goto loop464;	/* break out of the loop */
            	    break;
                }
            }
            loop464: ; /* 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:1729: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_user1416;
    #undef	RETURN_TYPE_alter_user1416
    #define	RETURN_TYPE_alter_user1416 MySQLParser_alter_user_return

    MySQLParser_create_user_return create_user1417;
    #undef	RETURN_TYPE_create_user1417
    #define	RETURN_TYPE_create_user1417 MySQLParser_create_user_return

    MySQLParser_drop_user_return drop_user1418;
    #undef	RETURN_TYPE_drop_user1418
    #define	RETURN_TYPE_drop_user1418 MySQLParser_drop_user_return

    MySQLParser_grant_proxy_return grant_proxy1419;
    #undef	RETURN_TYPE_grant_proxy1419
    #define	RETURN_TYPE_grant_proxy1419 MySQLParser_grant_proxy_return

    MySQLParser_grant_return grant1420;
    #undef	RETURN_TYPE_grant1420
    #define	RETURN_TYPE_grant1420 MySQLParser_grant_return

    MySQLParser_rename_user_return rename_user1421;
    #undef	RETURN_TYPE_rename_user1421
    #define	RETURN_TYPE_rename_user1421 MySQLParser_rename_user_return

    MySQLParser_revoke_statement_return revoke_statement1422;
    #undef	RETURN_TYPE_revoke_statement1422
    #define	RETURN_TYPE_revoke_statement1422 MySQLParser_revoke_statement_return

    MySQLParser_set_password_return set_password1423;
    #undef	RETURN_TYPE_set_password1423
    #define	RETURN_TYPE_set_password1423 MySQLParser_set_password_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    alter_user1416.tree = NULL;

    create_user1417.tree = NULL;

    drop_user1418.tree = NULL;

    grant_proxy1419.tree = NULL;

    grant1420.tree = NULL;

    rename_user1421.tree = NULL;

    revoke_statement1422.tree = NULL;

    set_password1423.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1729:29: ({...}? alter_user | create_user | drop_user |{...}? grant_proxy | grant | rename_user | revoke_statement | set_password )

            ANTLR3_UINT32 alt465;

            alt465=8;

            switch ( LA(1) )
            {
            case ALTER_SYMBOL:
            	{
            		alt465=1;
            	}
                break;
            case CREATE_SYMBOL:
            	{
            		alt465=2;
            	}
                break;
            case DROP_SYMBOL:
            	{
            		alt465=3;
            	}
                break;
            case GRANT_SYMBOL:
            	{
            		switch ( LA(2) )
            		{
            		case PROXY_SYMBOL:
            			{
            				{
            				    int LA465_8 = LA(3);
            				    if ( ((SERVER_VERSION >= 50500)))
            				    {
            				        alt465=4;
            				    }
            				    else if ( (ANTLR3_TRUE))
            				    {
            				        alt465=5;
            				    }
            				    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        = 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:
            			{
            				alt465=5;
            			}
            		    break;

            		default:
            		    if (BACKTRACKING>0)
            		    {
            		        FAILEDFLAG = ANTLR3_TRUE;
            		        return retval;
            		    }

            		    CONSTRUCTEX();
            		    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            		    EXCEPTION->message      = (void *)"";
            		    EXCEPTION->decisionNum  = 465;
            		    EXCEPTION->state        = 4;


            		    goto ruleaccount_management_statementEx;

            		}

            	}
                break;
            case RENAME_SYMBOL:
            	{
            		alt465=6;
            	}
                break;
            case REVOKE_SYMBOL:
            	{
            		alt465=7;
            	}
                break;
            case SET_SYMBOL:
            	{
            		alt465=8;
            	}
                break;

            default:
                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 ruleaccount_management_statementEx;

            }

            switch (alt465)
            {
        	case 1:
        	    // MySQL.g:1730: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_statement7726);
        	        alter_user1416=alter_user(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaccount_management_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, alter_user1416.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1731:4: create_user
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_create_user_in_account_management_statement7731);
        	        create_user1417=create_user(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaccount_management_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_user1417.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1732:4: drop_user
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_drop_user_in_account_management_statement7736);
        	        drop_user1418=drop_user(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaccount_management_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, drop_user1418.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1733: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_statement7743);
        	        grant_proxy1419=grant_proxy(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaccount_management_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, grant_proxy1419.tree);

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:1734:4: grant
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_grant_in_account_management_statement7748);
        	        grant1420=grant(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaccount_management_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, grant1420.tree);

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:1735:4: rename_user
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_rename_user_in_account_management_statement7753);
        	        rename_user1421=rename_user(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaccount_management_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, rename_user1421.tree);

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:1736:4: revoke_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_revoke_statement_in_account_management_statement7758);
        	        revoke_statement1422=revoke_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaccount_management_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, revoke_statement1422.tree);

        	    }
        	    break;
        	case 8:
        	    // MySQL.g:1737:4: set_password
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_set_password_in_account_management_statement7763);
        	        set_password1423=set_password(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaccount_management_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, set_password1423.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:1740: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_SYMBOL1424;
    pANTLR3_COMMON_TOKEN    USER_SYMBOL1425;
    MySQLParser_if_exists_return if_exists1426;
    #undef	RETURN_TYPE_if_exists1426
    #define	RETURN_TYPE_if_exists1426 MySQLParser_if_exists_return

    MySQLParser_alter_user_tail_return alter_user_tail1427;
    #undef	RETURN_TYPE_alter_user_tail1427
    #define	RETURN_TYPE_alter_user_tail1427 MySQLParser_alter_user_tail_return

    pANTLR3_BASE_TREE ALTER_SYMBOL1424_tree;
    pANTLR3_BASE_TREE USER_SYMBOL1425_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ALTER_SYMBOL1424       = NULL;
    USER_SYMBOL1425       = NULL;
    if_exists1426.tree = NULL;

    alter_user_tail1427.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ALTER_SYMBOL1424_tree   = NULL;
    USER_SYMBOL1425_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1740:11: ( ALTER_SYMBOL ^ USER_SYMBOL ({...}? if_exists |) alter_user_tail )
        // MySQL.g:1741:2: ALTER_SYMBOL ^ USER_SYMBOL ({...}? if_exists |) alter_user_tail
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            ALTER_SYMBOL1424 = (pANTLR3_COMMON_TOKEN) MATCHT(ALTER_SYMBOL, &FOLLOW_ALTER_SYMBOL_in_alter_user7772);
            if  (HASEXCEPTION())
            {
                goto rulealter_userEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ALTER_SYMBOL1424_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ALTER_SYMBOL1424))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, ALTER_SYMBOL1424_tree, root_0));
            }

            USER_SYMBOL1425 = (pANTLR3_COMMON_TOKEN) MATCHT(USER_SYMBOL, &FOLLOW_USER_SYMBOL_in_alter_user7775);
            if  (HASEXCEPTION())
            {
                goto rulealter_userEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            USER_SYMBOL1425_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USER_SYMBOL1425));
            ADAPTOR->addChild(ADAPTOR, root_0, USER_SYMBOL1425_tree);
            }

            // MySQL.g:1741:28: ({...}? if_exists |)
            {
                int alt466=2;
                {
                    int LA466_0 = LA(1);
                    if ( (LA466_0 == IF_SYMBOL))
                    {
                        alt466=1;
                    }
                    else if ( (((LA466_0 >= ACCOUNT_SYMBOL) && (LA466_0 <= YEAR_SYMBOL)) || LA466_0 == CURRENT_USER_SYMBOL || LA466_0 == SINGLE_QUOTED_TEXT || LA466_0 == BACK_TICK_QUOTED_ID || LA466_0 == DOUBLE_QUOTED_TEXT || LA466_0 == IDENTIFIER))
                    {
                        alt466=2;
                    }
                    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_userEx;

                    }
                }
                switch (alt466)
                {
            	case 1:
            	    // MySQL.g:1741: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_user7780);
            	        if_exists1426=if_exists(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_userEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, if_exists1426.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1741:79: 
            	    {
            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_alter_user_tail_in_alter_user7787);
            alter_user_tail1427=alter_user_tail(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulealter_userEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, alter_user_tail1427.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:1744: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_SYMBOL1430;
    pANTLR3_COMMON_TOKEN    IDENTIFIED_SYMBOL1432;
    pANTLR3_COMMON_TOKEN    BY_SYMBOL1433;
    MySQLParser_grant_list_return grant_list1428;
    #undef	RETURN_TYPE_grant_list1428
    #define	RETURN_TYPE_grant_list1428 MySQLParser_grant_list_return

    MySQLParser_create_user_tail_return create_user_tail1429;
    #undef	RETURN_TYPE_create_user_tail1429
    #define	RETURN_TYPE_create_user_tail1429 MySQLParser_create_user_tail_return

    MySQLParser_parentheses_return parentheses1431;
    #undef	RETURN_TYPE_parentheses1431
    #define	RETURN_TYPE_parentheses1431 MySQLParser_parentheses_return

    MySQLParser_text_string_return text_string1434;
    #undef	RETURN_TYPE_text_string1434
    #define	RETURN_TYPE_text_string1434 MySQLParser_text_string_return

    pANTLR3_BASE_TREE USER_SYMBOL1430_tree;
    pANTLR3_BASE_TREE IDENTIFIED_SYMBOL1432_tree;
    pANTLR3_BASE_TREE BY_SYMBOL1433_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    USER_SYMBOL1430       = NULL;
    IDENTIFIED_SYMBOL1432       = NULL;
    BY_SYMBOL1433       = NULL;
    grant_list1428.tree = NULL;

    create_user_tail1429.tree = NULL;

    parentheses1431.tree = NULL;

    text_string1434.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    USER_SYMBOL1430_tree   = NULL;
    IDENTIFIED_SYMBOL1432_tree   = NULL;
    BY_SYMBOL1433_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1744:16: ( grant_list create_user_tail |{...}? USER_SYMBOL parentheses IDENTIFIED_SYMBOL BY_SYMBOL text_string )

            ANTLR3_UINT32 alt467;

            alt467=2;

            {
                int LA467_0 = LA(1);
                if ( (((LA467_0 >= ACCOUNT_SYMBOL) && (LA467_0 <= USER_RESOURCES_SYMBOL)) || ((LA467_0 >= USE_FRM_SYMBOL) && (LA467_0 <= YEAR_SYMBOL)) || LA467_0 == CURRENT_USER_SYMBOL || LA467_0 == SINGLE_QUOTED_TEXT || LA467_0 == BACK_TICK_QUOTED_ID || LA467_0 == DOUBLE_QUOTED_TEXT || LA467_0 == IDENTIFIER))
                {
                    alt467=1;
                }
                else if ( (LA467_0 == USER_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case EOF:
                    case ACCOUNT_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case REQUIRE_SYMBOL:
                    case SEMICOLON_SYMBOL:
                    case WITH_SYMBOL:
                    case AT_SIGN_SYMBOL:
                    case AT_TEXT_SUFFIX:
                    case COMMA_SYMBOL:
                    	{
                    		alt467=1;
                    	}
                        break;
                    case OPEN_PAR_SYMBOL:
                    	{
                    		alt467=2;
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 467;
                        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  = 467;
                    EXCEPTION->state        = 0;


                    goto rulealter_user_tailEx;

                }
            }
            switch (alt467)
            {
        	case 1:
        	    // MySQL.g:1745:2: grant_list create_user_tail
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_grant_list_in_alter_user_tail7796);
        	        grant_list1428=grant_list(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_user_tailEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, grant_list1428.tree);

        	        FOLLOWPUSH(FOLLOW_create_user_tail_in_alter_user_tail7798);
        	        create_user_tail1429=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_tail1429.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1746: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_SYMBOL1430 = (pANTLR3_COMMON_TOKEN) MATCHT(USER_SYMBOL, &FOLLOW_USER_SYMBOL_in_alter_user_tail7805);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_user_tailEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        USER_SYMBOL1430_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USER_SYMBOL1430));
        	        ADAPTOR->addChild(ADAPTOR, root_0, USER_SYMBOL1430_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_parentheses_in_alter_user_tail7807);
        	        parentheses1431=parentheses(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_user_tailEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, parentheses1431.tree);

        	        IDENTIFIED_SYMBOL1432 = (pANTLR3_COMMON_TOKEN) MATCHT(IDENTIFIED_SYMBOL, &FOLLOW_IDENTIFIED_SYMBOL_in_alter_user_tail7809);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_user_tailEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        IDENTIFIED_SYMBOL1432_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IDENTIFIED_SYMBOL1432));
        	        ADAPTOR->addChild(ADAPTOR, root_0, IDENTIFIED_SYMBOL1432_tree);
        	        }

        	        BY_SYMBOL1433 = (pANTLR3_COMMON_TOKEN) MATCHT(BY_SYMBOL, &FOLLOW_BY_SYMBOL_in_alter_user_tail7811);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_user_tailEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BY_SYMBOL1433_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BY_SYMBOL1433));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BY_SYMBOL1433_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_in_alter_user_tail7813);
        	        text_string1434=text_string(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_user_tailEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string1434.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:1749: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_SYMBOL1435;
    pANTLR3_COMMON_TOKEN    USER_SYMBOL1436;
    MySQLParser_if_not_exists_return if_not_exists1437;
    #undef	RETURN_TYPE_if_not_exists1437
    #define	RETURN_TYPE_if_not_exists1437 MySQLParser_if_not_exists_return

    MySQLParser_grant_list_return grant_list1438;
    #undef	RETURN_TYPE_grant_list1438
    #define	RETURN_TYPE_grant_list1438 MySQLParser_grant_list_return

    MySQLParser_create_user_tail_return create_user_tail1439;
    #undef	RETURN_TYPE_create_user_tail1439
    #define	RETURN_TYPE_create_user_tail1439 MySQLParser_create_user_tail_return

    pANTLR3_BASE_TREE CREATE_SYMBOL1435_tree;
    pANTLR3_BASE_TREE USER_SYMBOL1436_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CREATE_SYMBOL1435       = NULL;
    USER_SYMBOL1436       = NULL;
    if_not_exists1437.tree = NULL;

    grant_list1438.tree = NULL;

    create_user_tail1439.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CREATE_SYMBOL1435_tree   = NULL;
    USER_SYMBOL1436_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1749:12: ( CREATE_SYMBOL ^ USER_SYMBOL ({...}? if_not_exists |) grant_list create_user_tail )
        // MySQL.g:1750:2: CREATE_SYMBOL ^ USER_SYMBOL ({...}? if_not_exists |) grant_list create_user_tail
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            CREATE_SYMBOL1435 = (pANTLR3_COMMON_TOKEN) MATCHT(CREATE_SYMBOL, &FOLLOW_CREATE_SYMBOL_in_create_user7822);
            if  (HASEXCEPTION())
            {
                goto rulecreate_userEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CREATE_SYMBOL1435_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CREATE_SYMBOL1435))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, CREATE_SYMBOL1435_tree, root_0));
            }

            USER_SYMBOL1436 = (pANTLR3_COMMON_TOKEN) MATCHT(USER_SYMBOL, &FOLLOW_USER_SYMBOL_in_create_user7825);
            if  (HASEXCEPTION())
            {
                goto rulecreate_userEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            USER_SYMBOL1436_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USER_SYMBOL1436));
            ADAPTOR->addChild(ADAPTOR, root_0, USER_SYMBOL1436_tree);
            }

            // MySQL.g:1750:29: ({...}? if_not_exists |)
            {
                int alt468=2;
                {
                    int LA468_0 = LA(1);
                    if ( (LA468_0 == IF_SYMBOL))
                    {
                        alt468=1;
                    }
                    else if ( (((LA468_0 >= ACCOUNT_SYMBOL) && (LA468_0 <= YEAR_SYMBOL)) || LA468_0 == CURRENT_USER_SYMBOL || LA468_0 == SINGLE_QUOTED_TEXT || LA468_0 == BACK_TICK_QUOTED_ID || LA468_0 == DOUBLE_QUOTED_TEXT || LA468_0 == IDENTIFIER))
                    {
                        alt468=2;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 468;
                        EXCEPTION->state        = 0;


                        goto rulecreate_userEx;

                    }
                }
                switch (alt468)
                {
            	case 1:
            	    // MySQL.g:1750: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_user7830);
            	        if_not_exists1437=if_not_exists(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_userEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, if_not_exists1437.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1750:84: 
            	    {
            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_grant_list_in_create_user7837);
            grant_list1438=grant_list(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_userEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, grant_list1438.tree);

            FOLLOWPUSH(FOLLOW_create_user_tail_in_create_user7839);
            create_user_tail1439=create_user_tail(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_userEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_user_tail1439.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:1753: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_clause1440;
    #undef	RETURN_TYPE_require_clause1440
    #define	RETURN_TYPE_require_clause1440 MySQLParser_require_clause_return

    MySQLParser_connect_options_return connect_options1441;
    #undef	RETURN_TYPE_connect_options1441
    #define	RETURN_TYPE_connect_options1441 MySQLParser_connect_options_return

    MySQLParser_account_lock_password_expire_options_return account_lock_password_expire_options1442;
    #undef	RETURN_TYPE_account_lock_password_expire_options1442
    #define	RETURN_TYPE_account_lock_password_expire_options1442 MySQLParser_account_lock_password_expire_options_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    require_clause1440.tree = NULL;

    connect_options1441.tree = NULL;

    account_lock_password_expire_options1442.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1753:17: ({...}? ( require_clause )? ( connect_options )? ( account_lock_password_expire_options )? |)

            ANTLR3_UINT32 alt472;

            alt472=2;

            switch ( LA(1) )
            {
            case ACCOUNT_SYMBOL:
            case PASSWORD_SYMBOL:
            case REQUIRE_SYMBOL:
            case WITH_SYMBOL:
            	{
            		alt472=1;
            	}
                break;
            case SEMICOLON_SYMBOL:
            	{
            		{
            		    int LA472_5 = LA(2);
            		    if ( ((SERVER_VERSION >= 50706)))
            		    {
            		        alt472=1;
            		    }
            		    else if ( (ANTLR3_TRUE))
            		    {
            		        alt472=2;
            		    }
            		    else
            		    {
            		        if (BACKTRACKING>0)
            		        {
            		            FAILEDFLAG = ANTLR3_TRUE;
            		            return retval;
            		        }


            		        CONSTRUCTEX();
            		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            		        EXCEPTION->message      = (void *)"";
            		        EXCEPTION->decisionNum  = 472;
            		        EXCEPTION->state        = 5;


            		        goto rulecreate_user_tailEx;

            		    }
            		}
            	}
                break;
            case EOF:
            	{
            		{
            		    int LA472_6 = LA(2);
            		    if ( ((SERVER_VERSION >= 50706)))
            		    {
            		        alt472=1;
            		    }
            		    else if ( (ANTLR3_TRUE))
            		    {
            		        alt472=2;
            		    }
            		    else
            		    {
            		        if (BACKTRACKING>0)
            		        {
            		            FAILEDFLAG = ANTLR3_TRUE;
            		            return retval;
            		        }


            		        CONSTRUCTEX();
            		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            		        EXCEPTION->message      = (void *)"";
            		        EXCEPTION->decisionNum  = 472;
            		        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  = 472;
                EXCEPTION->state        = 0;


                goto rulecreate_user_tailEx;

            }

            switch (alt472)
            {
        	case 1:
        	    // MySQL.g:1754: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:1754:29: ( require_clause )?
        	        {
        	            int alt469=2;
        	            switch ( LA(1) )
        	            {
        	                case REQUIRE_SYMBOL:
        	                	{
        	                		alt469=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt469)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1754:29: require_clause
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_require_clause_in_create_user_tail7850);
        	        	        require_clause1440=require_clause(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_user_tailEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, require_clause1440.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:1754:45: ( connect_options )?
        	        {
        	            int alt470=2;
        	            switch ( LA(1) )
        	            {
        	                case WITH_SYMBOL:
        	                	{
        	                		alt470=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt470)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1754:45: connect_options
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_connect_options_in_create_user_tail7853);
        	        	        connect_options1441=connect_options(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_user_tailEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, connect_options1441.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:1754:62: ( account_lock_password_expire_options )?
        	        {
        	            int alt471=2;
        	            switch ( LA(1) )
        	            {
        	                case ACCOUNT_SYMBOL:
        	                case PASSWORD_SYMBOL:
        	                	{
        	                		alt471=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt471)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1754:62: account_lock_password_expire_options
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_account_lock_password_expire_options_in_create_user_tail7856);
        	        	        account_lock_password_expire_options1442=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_options1442.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1756: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:1758: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_SYMBOL1443;
    pANTLR3_COMMON_TOKEN    SSL_SYMBOL1445;
    pANTLR3_COMMON_TOKEN    X509_SYMBOL1446;
    pANTLR3_COMMON_TOKEN    NONE_SYMBOL1447;
    MySQLParser_require_list_return require_list1444;
    #undef	RETURN_TYPE_require_list1444
    #define	RETURN_TYPE_require_list1444 MySQLParser_require_list_return

    pANTLR3_BASE_TREE REQUIRE_SYMBOL1443_tree;
    pANTLR3_BASE_TREE SSL_SYMBOL1445_tree;
    pANTLR3_BASE_TREE X509_SYMBOL1446_tree;
    pANTLR3_BASE_TREE NONE_SYMBOL1447_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    REQUIRE_SYMBOL1443       = NULL;
    SSL_SYMBOL1445       = NULL;
    X509_SYMBOL1446       = NULL;
    NONE_SYMBOL1447       = NULL;
    require_list1444.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    REQUIRE_SYMBOL1443_tree   = NULL;
    SSL_SYMBOL1445_tree   = NULL;
    X509_SYMBOL1446_tree   = NULL;
    NONE_SYMBOL1447_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1758:15: ( REQUIRE_SYMBOL ( require_list | SSL_SYMBOL | X509_SYMBOL | NONE_SYMBOL ) )
        // MySQL.g:1759:2: REQUIRE_SYMBOL ( require_list | SSL_SYMBOL | X509_SYMBOL | NONE_SYMBOL )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            REQUIRE_SYMBOL1443 = (pANTLR3_COMMON_TOKEN) MATCHT(REQUIRE_SYMBOL, &FOLLOW_REQUIRE_SYMBOL_in_require_clause7871);
            if  (HASEXCEPTION())
            {
                goto rulerequire_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            REQUIRE_SYMBOL1443_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REQUIRE_SYMBOL1443));
            ADAPTOR->addChild(ADAPTOR, root_0, REQUIRE_SYMBOL1443_tree);
            }

            // MySQL.g:1759:17: ( require_list | SSL_SYMBOL | X509_SYMBOL | NONE_SYMBOL )
            {
                int alt473=4;
                switch ( LA(1) )
                {
                case CIPHER_SYMBOL:
                case ISSUER_SYMBOL:
                case SUBJECT_SYMBOL:
                	{
                		alt473=1;
                	}
                    break;
                case SSL_SYMBOL:
                	{
                		alt473=2;
                	}
                    break;
                case X509_SYMBOL:
                	{
                		alt473=3;
                	}
                    break;
                case NONE_SYMBOL:
                	{
                		alt473=4;
                	}
                    break;

                default:
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }

                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 473;
                    EXCEPTION->state        = 0;


                    goto rulerequire_clauseEx;

                }

                switch (alt473)
                {
            	case 1:
            	    // MySQL.g:1759:18: require_list
            	    {
            	        FOLLOWPUSH(FOLLOW_require_list_in_require_clause7874);
            	        require_list1444=require_list(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerequire_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, require_list1444.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1759:33: SSL_SYMBOL
            	    {
            	        SSL_SYMBOL1445 = (pANTLR3_COMMON_TOKEN) MATCHT(SSL_SYMBOL, &FOLLOW_SSL_SYMBOL_in_require_clause7878);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerequire_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SSL_SYMBOL1445_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SSL_SYMBOL1445));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SSL_SYMBOL1445_tree);
            	        }

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:1759:46: X509_SYMBOL
            	    {
            	        X509_SYMBOL1446 = (pANTLR3_COMMON_TOKEN) MATCHT(X509_SYMBOL, &FOLLOW_X509_SYMBOL_in_require_clause7882);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerequire_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        X509_SYMBOL1446_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, X509_SYMBOL1446));
            	        ADAPTOR->addChild(ADAPTOR, root_0, X509_SYMBOL1446_tree);
            	        }

            	    }
            	    break;
            	case 4:
            	    // MySQL.g:1759:60: NONE_SYMBOL
            	    {
            	        NONE_SYMBOL1447 = (pANTLR3_COMMON_TOKEN) MATCHT(NONE_SYMBOL, &FOLLOW_NONE_SYMBOL_in_require_clause7886);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerequire_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        NONE_SYMBOL1447_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NONE_SYMBOL1447));
            	        ADAPTOR->addChild(ADAPTOR, root_0, NONE_SYMBOL1447_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:1762: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_SYMBOL1448;
    pANTLR3_COMMON_TOKEN    MAX_QUERIES_PER_HOUR_SYMBOL1449;
    pANTLR3_COMMON_TOKEN    MAX_UPDATES_PER_HOUR_SYMBOL1451;
    pANTLR3_COMMON_TOKEN    MAX_CONNECTIONS_PER_HOUR_SYMBOL1453;
    pANTLR3_COMMON_TOKEN    MAX_USER_CONNECTIONS_SYMBOL1455;
    MySQLParser_ulong_number_return ulong_number1450;
    #undef	RETURN_TYPE_ulong_number1450
    #define	RETURN_TYPE_ulong_number1450 MySQLParser_ulong_number_return

    MySQLParser_ulong_number_return ulong_number1452;
    #undef	RETURN_TYPE_ulong_number1452
    #define	RETURN_TYPE_ulong_number1452 MySQLParser_ulong_number_return

    MySQLParser_ulong_number_return ulong_number1454;
    #undef	RETURN_TYPE_ulong_number1454
    #define	RETURN_TYPE_ulong_number1454 MySQLParser_ulong_number_return

    MySQLParser_ulong_number_return ulong_number1456;
    #undef	RETURN_TYPE_ulong_number1456
    #define	RETURN_TYPE_ulong_number1456 MySQLParser_ulong_number_return

    pANTLR3_BASE_TREE WITH_SYMBOL1448_tree;
    pANTLR3_BASE_TREE MAX_QUERIES_PER_HOUR_SYMBOL1449_tree;
    pANTLR3_BASE_TREE MAX_UPDATES_PER_HOUR_SYMBOL1451_tree;
    pANTLR3_BASE_TREE MAX_CONNECTIONS_PER_HOUR_SYMBOL1453_tree;
    pANTLR3_BASE_TREE MAX_USER_CONNECTIONS_SYMBOL1455_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    WITH_SYMBOL1448       = NULL;
    MAX_QUERIES_PER_HOUR_SYMBOL1449       = NULL;
    MAX_UPDATES_PER_HOUR_SYMBOL1451       = NULL;
    MAX_CONNECTIONS_PER_HOUR_SYMBOL1453       = NULL;
    MAX_USER_CONNECTIONS_SYMBOL1455       = NULL;
    ulong_number1450.tree = NULL;

    ulong_number1452.tree = NULL;

    ulong_number1454.tree = NULL;

    ulong_number1456.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    WITH_SYMBOL1448_tree   = NULL;
    MAX_QUERIES_PER_HOUR_SYMBOL1449_tree   = NULL;
    MAX_UPDATES_PER_HOUR_SYMBOL1451_tree   = NULL;
    MAX_CONNECTIONS_PER_HOUR_SYMBOL1453_tree   = NULL;
    MAX_USER_CONNECTIONS_SYMBOL1455_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1762: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:1763: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_SYMBOL1448 = (pANTLR3_COMMON_TOKEN) MATCHT(WITH_SYMBOL, &FOLLOW_WITH_SYMBOL_in_connect_options7896);
            if  (HASEXCEPTION())
            {
                goto ruleconnect_optionsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            WITH_SYMBOL1448_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WITH_SYMBOL1448));
            ADAPTOR->addChild(ADAPTOR, root_0, WITH_SYMBOL1448_tree);
            }

            // MySQL.g:1764: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 cnt474=0;

                for (;;)
                {
                    int alt474=5;
            	switch ( LA(1) )
            	{
            	case MAX_QUERIES_PER_HOUR_SYMBOL:
            		{
            			alt474=1;
            		}
            	    break;
            	case MAX_UPDATES_PER_HOUR_SYMBOL:
            		{
            			alt474=2;
            		}
            	    break;
            	case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
            		{
            			alt474=3;
            		}
            	    break;
            	case MAX_USER_CONNECTIONS_SYMBOL:
            		{
            			alt474=4;
            		}
            	    break;

            	}

            	switch (alt474)
            	{
            	    case 1:
            	        // MySQL.g:1765:3: MAX_QUERIES_PER_HOUR_SYMBOL ulong_number
            	        {
            	            MAX_QUERIES_PER_HOUR_SYMBOL1449 = (pANTLR3_COMMON_TOKEN) MATCHT(MAX_QUERIES_PER_HOUR_SYMBOL, &FOLLOW_MAX_QUERIES_PER_HOUR_SYMBOL_in_connect_options7903);
            	            if  (HASEXCEPTION())
            	            {
            	                goto ruleconnect_optionsEx;
            	            }
            	            if (HASFAILED())
            	            {
            	                return retval;
            	            }

            	            if ( BACKTRACKING==0 ) {
            	            MAX_QUERIES_PER_HOUR_SYMBOL1449_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MAX_QUERIES_PER_HOUR_SYMBOL1449));
            	            ADAPTOR->addChild(ADAPTOR, root_0, MAX_QUERIES_PER_HOUR_SYMBOL1449_tree);
            	            }

            	            FOLLOWPUSH(FOLLOW_ulong_number_in_connect_options7905);
            	            ulong_number1450=ulong_number(ctx);

            	            FOLLOWPOP();
            	            if  (HASEXCEPTION())
            	            {
            	                goto ruleconnect_optionsEx;
            	            }
            	            if (HASFAILED())
            	            {
            	                return retval;
            	            }

            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number1450.tree);

            	        }
            	        break;
            	    case 2:
            	        // MySQL.g:1766:5: MAX_UPDATES_PER_HOUR_SYMBOL ulong_number
            	        {
            	            MAX_UPDATES_PER_HOUR_SYMBOL1451 = (pANTLR3_COMMON_TOKEN) MATCHT(MAX_UPDATES_PER_HOUR_SYMBOL, &FOLLOW_MAX_UPDATES_PER_HOUR_SYMBOL_in_connect_options7911);
            	            if  (HASEXCEPTION())
            	            {
            	                goto ruleconnect_optionsEx;
            	            }
            	            if (HASFAILED())
            	            {
            	                return retval;
            	            }

            	            if ( BACKTRACKING==0 ) {
            	            MAX_UPDATES_PER_HOUR_SYMBOL1451_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MAX_UPDATES_PER_HOUR_SYMBOL1451));
            	            ADAPTOR->addChild(ADAPTOR, root_0, MAX_UPDATES_PER_HOUR_SYMBOL1451_tree);
            	            }

            	            FOLLOWPUSH(FOLLOW_ulong_number_in_connect_options7913);
            	            ulong_number1452=ulong_number(ctx);

            	            FOLLOWPOP();
            	            if  (HASEXCEPTION())
            	            {
            	                goto ruleconnect_optionsEx;
            	            }
            	            if (HASFAILED())
            	            {
            	                return retval;
            	            }

            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number1452.tree);

            	        }
            	        break;
            	    case 3:
            	        // MySQL.g:1767:5: MAX_CONNECTIONS_PER_HOUR_SYMBOL ulong_number
            	        {
            	            MAX_CONNECTIONS_PER_HOUR_SYMBOL1453 = (pANTLR3_COMMON_TOKEN) MATCHT(MAX_CONNECTIONS_PER_HOUR_SYMBOL, &FOLLOW_MAX_CONNECTIONS_PER_HOUR_SYMBOL_in_connect_options7919);
            	            if  (HASEXCEPTION())
            	            {
            	                goto ruleconnect_optionsEx;
            	            }
            	            if (HASFAILED())
            	            {
            	                return retval;
            	            }

            	            if ( BACKTRACKING==0 ) {
            	            MAX_CONNECTIONS_PER_HOUR_SYMBOL1453_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MAX_CONNECTIONS_PER_HOUR_SYMBOL1453));
            	            ADAPTOR->addChild(ADAPTOR, root_0, MAX_CONNECTIONS_PER_HOUR_SYMBOL1453_tree);
            	            }

            	            FOLLOWPUSH(FOLLOW_ulong_number_in_connect_options7921);
            	            ulong_number1454=ulong_number(ctx);

            	            FOLLOWPOP();
            	            if  (HASEXCEPTION())
            	            {
            	                goto ruleconnect_optionsEx;
            	            }
            	            if (HASFAILED())
            	            {
            	                return retval;
            	            }

            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number1454.tree);

            	        }
            	        break;
            	    case 4:
            	        // MySQL.g:1768:5: MAX_USER_CONNECTIONS_SYMBOL ulong_number
            	        {
            	            MAX_USER_CONNECTIONS_SYMBOL1455 = (pANTLR3_COMMON_TOKEN) MATCHT(MAX_USER_CONNECTIONS_SYMBOL, &FOLLOW_MAX_USER_CONNECTIONS_SYMBOL_in_connect_options7927);
            	            if  (HASEXCEPTION())
            	            {
            	                goto ruleconnect_optionsEx;
            	            }
            	            if (HASFAILED())
            	            {
            	                return retval;
            	            }

            	            if ( BACKTRACKING==0 ) {
            	            MAX_USER_CONNECTIONS_SYMBOL1455_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MAX_USER_CONNECTIONS_SYMBOL1455));
            	            ADAPTOR->addChild(ADAPTOR, root_0, MAX_USER_CONNECTIONS_SYMBOL1455_tree);
            	            }

            	            FOLLOWPUSH(FOLLOW_ulong_number_in_connect_options7929);
            	            ulong_number1456=ulong_number(ctx);

            	            FOLLOWPOP();
            	            if  (HASEXCEPTION())
            	            {
            	                goto ruleconnect_optionsEx;
            	            }
            	            if (HASFAILED())
            	            {
            	                return retval;
            	            }

            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number1456.tree);

            	        }
            	        break;

            	    default:

            		if ( cnt474 >= 1 )
            		{
            		    goto loop474;
            		}
            		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;
            	}
            	cnt474++;
                }
                loop474: ;	/* 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:1772: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_SYMBOL1457;
    pANTLR3_COMMON_TOKEN    set1458;
    pANTLR3_COMMON_TOKEN    PASSWORD_SYMBOL1459;
    pANTLR3_COMMON_TOKEN    EXPIRE_SYMBOL1460;
    pANTLR3_COMMON_TOKEN    INTERVAL_SYMBOL1461;
    pANTLR3_COMMON_TOKEN    DAY_SYMBOL1463;
    pANTLR3_COMMON_TOKEN    NEVER_SYMBOL1464;
    pANTLR3_COMMON_TOKEN    DEFAULT_SYMBOL1465;
    MySQLParser_real_ulong_number_return real_ulong_number1462;
    #undef	RETURN_TYPE_real_ulong_number1462
    #define	RETURN_TYPE_real_ulong_number1462 MySQLParser_real_ulong_number_return

    pANTLR3_BASE_TREE ACCOUNT_SYMBOL1457_tree;
    pANTLR3_BASE_TREE set1458_tree;
    pANTLR3_BASE_TREE PASSWORD_SYMBOL1459_tree;
    pANTLR3_BASE_TREE EXPIRE_SYMBOL1460_tree;
    pANTLR3_BASE_TREE INTERVAL_SYMBOL1461_tree;
    pANTLR3_BASE_TREE DAY_SYMBOL1463_tree;
    pANTLR3_BASE_TREE NEVER_SYMBOL1464_tree;
    pANTLR3_BASE_TREE DEFAULT_SYMBOL1465_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ACCOUNT_SYMBOL1457       = NULL;
    set1458       = NULL;
    PASSWORD_SYMBOL1459       = NULL;
    EXPIRE_SYMBOL1460       = NULL;
    INTERVAL_SYMBOL1461       = NULL;
    DAY_SYMBOL1463       = NULL;
    NEVER_SYMBOL1464       = NULL;
    DEFAULT_SYMBOL1465       = NULL;
    real_ulong_number1462.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ACCOUNT_SYMBOL1457_tree   = NULL;
    set1458_tree   = NULL;
    PASSWORD_SYMBOL1459_tree   = NULL;
    EXPIRE_SYMBOL1460_tree   = NULL;
    INTERVAL_SYMBOL1461_tree   = NULL;
    DAY_SYMBOL1463_tree   = NULL;
    NEVER_SYMBOL1464_tree   = NULL;
    DEFAULT_SYMBOL1465_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1772:37: ( ACCOUNT_SYMBOL ( LOCK_SYMBOL | UNLOCK_SYMBOL ) | PASSWORD_SYMBOL EXPIRE_SYMBOL ( INTERVAL_SYMBOL real_ulong_number DAY_SYMBOL | NEVER_SYMBOL | DEFAULT_SYMBOL ) )

            ANTLR3_UINT32 alt476;

            alt476=2;

            switch ( LA(1) )
            {
            case ACCOUNT_SYMBOL:
            	{
            		alt476=1;
            	}
                break;
            case PASSWORD_SYMBOL:
            	{
            		alt476=2;
            	}
                break;

            default:
                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 ruleaccount_lock_password_expire_optionsEx;

            }

            switch (alt476)
            {
        	case 1:
        	    // MySQL.g:1773:2: ACCOUNT_SYMBOL ( LOCK_SYMBOL | UNLOCK_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ACCOUNT_SYMBOL1457 = (pANTLR3_COMMON_TOKEN) MATCHT(ACCOUNT_SYMBOL, &FOLLOW_ACCOUNT_SYMBOL_in_account_lock_password_expire_options7942);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaccount_lock_password_expire_optionsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ACCOUNT_SYMBOL1457_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ACCOUNT_SYMBOL1457));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ACCOUNT_SYMBOL1457_tree);
        	        }

        	        set1458=(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, set1458))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>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:1774: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_SYMBOL1459 = (pANTLR3_COMMON_TOKEN) MATCHT(PASSWORD_SYMBOL, &FOLLOW_PASSWORD_SYMBOL_in_account_lock_password_expire_options7955);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaccount_lock_password_expire_optionsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PASSWORD_SYMBOL1459_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PASSWORD_SYMBOL1459));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PASSWORD_SYMBOL1459_tree);
        	        }

        	        EXPIRE_SYMBOL1460 = (pANTLR3_COMMON_TOKEN) MATCHT(EXPIRE_SYMBOL, &FOLLOW_EXPIRE_SYMBOL_in_account_lock_password_expire_options7957);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaccount_lock_password_expire_optionsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EXPIRE_SYMBOL1460_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EXPIRE_SYMBOL1460));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EXPIRE_SYMBOL1460_tree);
        	        }

        	        // MySQL.g:1775:3: ( INTERVAL_SYMBOL real_ulong_number DAY_SYMBOL | NEVER_SYMBOL | DEFAULT_SYMBOL )
        	        {
        	            int alt475=3;
        	            switch ( LA(1) )
        	            {
        	            case INTERVAL_SYMBOL:
        	            	{
        	            		alt475=1;
        	            	}
        	                break;
        	            case NEVER_SYMBOL:
        	            	{
        	            		alt475=2;
        	            	}
        	                break;
        	            case DEFAULT_SYMBOL:
        	            	{
        	            		alt475=3;
        	            	}
        	                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:1776:4: INTERVAL_SYMBOL real_ulong_number DAY_SYMBOL
        	        	    {
        	        	        INTERVAL_SYMBOL1461 = (pANTLR3_COMMON_TOKEN) MATCHT(INTERVAL_SYMBOL, &FOLLOW_INTERVAL_SYMBOL_in_account_lock_password_expire_options7966);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleaccount_lock_password_expire_optionsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        INTERVAL_SYMBOL1461_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTERVAL_SYMBOL1461));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, INTERVAL_SYMBOL1461_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_real_ulong_number_in_account_lock_password_expire_options7968);
        	        	        real_ulong_number1462=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_number1462.tree);

        	        	        DAY_SYMBOL1463 = (pANTLR3_COMMON_TOKEN) MATCHT(DAY_SYMBOL, &FOLLOW_DAY_SYMBOL_in_account_lock_password_expire_options7970);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleaccount_lock_password_expire_optionsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        DAY_SYMBOL1463_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DAY_SYMBOL1463));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, DAY_SYMBOL1463_tree);
        	        	        }

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:1777:6: NEVER_SYMBOL
        	        	    {
        	        	        NEVER_SYMBOL1464 = (pANTLR3_COMMON_TOKEN) MATCHT(NEVER_SYMBOL, &FOLLOW_NEVER_SYMBOL_in_account_lock_password_expire_options7977);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleaccount_lock_password_expire_optionsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        NEVER_SYMBOL1464_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NEVER_SYMBOL1464));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, NEVER_SYMBOL1464_tree);
        	        	        }

        	        	    }
        	        	    break;
        	        	case 3:
        	        	    // MySQL.g:1778:6: DEFAULT_SYMBOL
        	        	    {
        	        	        DEFAULT_SYMBOL1465 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_account_lock_password_expire_options7984);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleaccount_lock_password_expire_optionsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        DEFAULT_SYMBOL1465_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL1465));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL1465_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:1782: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_SYMBOL1466;
    pANTLR3_COMMON_TOKEN    USER_SYMBOL1467;
    MySQLParser_if_exists_return if_exists1468;
    #undef	RETURN_TYPE_if_exists1468
    #define	RETURN_TYPE_if_exists1468 MySQLParser_if_exists_return

    MySQLParser_user_list_return user_list1469;
    #undef	RETURN_TYPE_user_list1469
    #define	RETURN_TYPE_user_list1469 MySQLParser_user_list_return

    pANTLR3_BASE_TREE DROP_SYMBOL1466_tree;
    pANTLR3_BASE_TREE USER_SYMBOL1467_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DROP_SYMBOL1466       = NULL;
    USER_SYMBOL1467       = NULL;
    if_exists1468.tree = NULL;

    user_list1469.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DROP_SYMBOL1466_tree   = NULL;
    USER_SYMBOL1467_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1782:10: ( DROP_SYMBOL ^ USER_SYMBOL ({...}? if_exists |) user_list )
        // MySQL.g:1783:2: DROP_SYMBOL ^ USER_SYMBOL ({...}? if_exists |) user_list
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            DROP_SYMBOL1466 = (pANTLR3_COMMON_TOKEN) MATCHT(DROP_SYMBOL, &FOLLOW_DROP_SYMBOL_in_drop_user7998);
            if  (HASEXCEPTION())
            {
                goto ruledrop_userEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            DROP_SYMBOL1466_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DROP_SYMBOL1466))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, DROP_SYMBOL1466_tree, root_0));
            }

            USER_SYMBOL1467 = (pANTLR3_COMMON_TOKEN) MATCHT(USER_SYMBOL, &FOLLOW_USER_SYMBOL_in_drop_user8001);
            if  (HASEXCEPTION())
            {
                goto ruledrop_userEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            USER_SYMBOL1467_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USER_SYMBOL1467));
            ADAPTOR->addChild(ADAPTOR, root_0, USER_SYMBOL1467_tree);
            }

            // MySQL.g:1783:27: ({...}? if_exists |)
            {
                int alt477=2;
                {
                    int LA477_0 = LA(1);
                    if ( (LA477_0 == IF_SYMBOL))
                    {
                        alt477=1;
                    }
                    else if ( (((LA477_0 >= ACCOUNT_SYMBOL) && (LA477_0 <= YEAR_SYMBOL)) || LA477_0 == CURRENT_USER_SYMBOL || LA477_0 == SINGLE_QUOTED_TEXT || LA477_0 == BACK_TICK_QUOTED_ID || LA477_0 == DOUBLE_QUOTED_TEXT || LA477_0 == IDENTIFIER))
                    {
                        alt477=2;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 477;
                        EXCEPTION->state        = 0;


                        goto ruledrop_userEx;

                    }
                }
                switch (alt477)
                {
            	case 1:
            	    // MySQL.g:1783: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_user8006);
            	        if_exists1468=if_exists(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_userEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, if_exists1468.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1783:78: 
            	    {
            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_user_list_in_drop_user8013);
            user_list1469=user_list(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruledrop_userEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user_list1469.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:1786: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    EOF1471;
    MySQLParser_grant_return grant1470;
    #undef	RETURN_TYPE_grant1470
    #define	RETURN_TYPE_grant1470 MySQLParser_grant_return

    pANTLR3_BASE_TREE EOF1471_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    EOF1471       = NULL;
    grant1470.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    EOF1471_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1786:12: ( grant EOF )
        // MySQL.g:1787:2: grant EOF
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_grant_in_parse_grant8023);
            grant1470=grant(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleparse_grantEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, grant1470.tree);

            EOF1471 = (pANTLR3_COMMON_TOKEN) MATCHT(EOF, &FOLLOW_EOF_in_parse_grant8025);
            if  (HASEXCEPTION())
            {
                goto ruleparse_grantEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EOF1471_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EOF1471));
            ADAPTOR->addChild(ADAPTOR, root_0, EOF1471_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:1790: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_SYMBOL1472;
    pANTLR3_COMMON_TOKEN    TO_SYMBOL1475;
    pANTLR3_COMMON_TOKEN    WITH_SYMBOL1478;
    MySQLParser_grant_privileges_return grant_privileges1473;
    #undef	RETURN_TYPE_grant_privileges1473
    #define	RETURN_TYPE_grant_privileges1473 MySQLParser_grant_privileges_return

    MySQLParser_privilege_target_return privilege_target1474;
    #undef	RETURN_TYPE_privilege_target1474
    #define	RETURN_TYPE_privilege_target1474 MySQLParser_privilege_target_return

    MySQLParser_grant_list_return grant_list1476;
    #undef	RETURN_TYPE_grant_list1476
    #define	RETURN_TYPE_grant_list1476 MySQLParser_grant_list_return

    MySQLParser_require_clause_return require_clause1477;
    #undef	RETURN_TYPE_require_clause1477
    #define	RETURN_TYPE_require_clause1477 MySQLParser_require_clause_return

    MySQLParser_grant_option_return grant_option1479;
    #undef	RETURN_TYPE_grant_option1479
    #define	RETURN_TYPE_grant_option1479 MySQLParser_grant_option_return

    pANTLR3_BASE_TREE GRANT_SYMBOL1472_tree;
    pANTLR3_BASE_TREE TO_SYMBOL1475_tree;
    pANTLR3_BASE_TREE WITH_SYMBOL1478_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    GRANT_SYMBOL1472       = NULL;
    TO_SYMBOL1475       = NULL;
    WITH_SYMBOL1478       = NULL;
    grant_privileges1473.tree = NULL;

    privilege_target1474.tree = NULL;

    grant_list1476.tree = NULL;

    require_clause1477.tree = NULL;

    grant_option1479.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    GRANT_SYMBOL1472_tree   = NULL;
    TO_SYMBOL1475_tree   = NULL;
    WITH_SYMBOL1478_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1790:6: ( GRANT_SYMBOL ^ grant_privileges privilege_target TO_SYMBOL grant_list ( require_clause )? ( WITH_SYMBOL ( grant_option )+ )? )
        // MySQL.g:1791: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_SYMBOL1472 = (pANTLR3_COMMON_TOKEN) MATCHT(GRANT_SYMBOL, &FOLLOW_GRANT_SYMBOL_in_grant8034);
            if  (HASEXCEPTION())
            {
                goto rulegrantEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            GRANT_SYMBOL1472_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GRANT_SYMBOL1472))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, GRANT_SYMBOL1472_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_grant_privileges_in_grant8037);
            grant_privileges1473=grant_privileges(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulegrantEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, grant_privileges1473.tree);

            FOLLOWPUSH(FOLLOW_privilege_target_in_grant8039);
            privilege_target1474=privilege_target(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulegrantEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, privilege_target1474.tree);

            TO_SYMBOL1475 = (pANTLR3_COMMON_TOKEN) MATCHT(TO_SYMBOL, &FOLLOW_TO_SYMBOL_in_grant8043);
            if  (HASEXCEPTION())
            {
                goto rulegrantEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            TO_SYMBOL1475_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TO_SYMBOL1475));
            ADAPTOR->addChild(ADAPTOR, root_0, TO_SYMBOL1475_tree);
            }

            FOLLOWPUSH(FOLLOW_grant_list_in_grant8045);
            grant_list1476=grant_list(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulegrantEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, grant_list1476.tree);

            // MySQL.g:1792:24: ( require_clause )?
            {
                int alt478=2;
                switch ( LA(1) )
                {
                    case REQUIRE_SYMBOL:
                    	{
                    		alt478=1;
                    	}
                        break;
                }

                switch (alt478)
                {
            	case 1:
            	    // MySQL.g:1792:24: require_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_require_clause_in_grant8047);
            	        require_clause1477=require_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulegrantEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, require_clause1477.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1792:40: ( WITH_SYMBOL ( grant_option )+ )?
            {
                int alt480=2;
                switch ( LA(1) )
                {
                    case WITH_SYMBOL:
                    	{
                    		alt480=1;
                    	}
                        break;
                }

                switch (alt480)
                {
            	case 1:
            	    // MySQL.g:1792:41: WITH_SYMBOL ( grant_option )+
            	    {
            	        WITH_SYMBOL1478 = (pANTLR3_COMMON_TOKEN) MATCHT(WITH_SYMBOL, &FOLLOW_WITH_SYMBOL_in_grant8051);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulegrantEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        WITH_SYMBOL1478_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WITH_SYMBOL1478));
            	        ADAPTOR->addChild(ADAPTOR, root_0, WITH_SYMBOL1478_tree);
            	        }

            	        // MySQL.g:1792:53: ( grant_option )+
            	        {
            	            int cnt479=0;

            	            for (;;)
            	            {
            	                int alt479=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:
            	        		{
            	        			alt479=1;
            	        		}
            	        	    break;

            	        	}

            	        	switch (alt479)
            	        	{
            	        	    case 1:
            	        	        // MySQL.g:1792:53: grant_option
            	        	        {
            	        	            FOLLOWPUSH(FOLLOW_grant_option_in_grant8053);
            	        	            grant_option1479=grant_option(ctx);

            	        	            FOLLOWPOP();
            	        	            if  (HASEXCEPTION())
            	        	            {
            	        	                goto rulegrantEx;
            	        	            }
            	        	            if (HASFAILED())
            	        	            {
            	        	                return retval;
            	        	            }

            	        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, grant_option1479.tree);

            	        	        }
            	        	        break;

            	        	    default:

            	        		if ( cnt479 >= 1 )
            	        		{
            	        		    goto loop479;
            	        		}
            	        		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;
            	        	}
            	        	cnt479++;
            	            }
            	            loop479: ;	/* 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:1795: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_SYMBOL1480;
    pANTLR3_COMMON_TOKEN    PROXY_SYMBOL1481;
    pANTLR3_COMMON_TOKEN    ON_SYMBOL1482;
    pANTLR3_COMMON_TOKEN    TO_SYMBOL1484;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1486;
    pANTLR3_COMMON_TOKEN    WITH_SYMBOL1488;
    pANTLR3_COMMON_TOKEN    GRANT_SYMBOL1489;
    pANTLR3_COMMON_TOKEN    OPTION_SYMBOL1490;
    MySQLParser_grant_user_return grant_user1483;
    #undef	RETURN_TYPE_grant_user1483
    #define	RETURN_TYPE_grant_user1483 MySQLParser_grant_user_return

    MySQLParser_grant_user_return grant_user1485;
    #undef	RETURN_TYPE_grant_user1485
    #define	RETURN_TYPE_grant_user1485 MySQLParser_grant_user_return

    MySQLParser_grant_user_return grant_user1487;
    #undef	RETURN_TYPE_grant_user1487
    #define	RETURN_TYPE_grant_user1487 MySQLParser_grant_user_return

    pANTLR3_BASE_TREE GRANT_SYMBOL1480_tree;
    pANTLR3_BASE_TREE PROXY_SYMBOL1481_tree;
    pANTLR3_BASE_TREE ON_SYMBOL1482_tree;
    pANTLR3_BASE_TREE TO_SYMBOL1484_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1486_tree;
    pANTLR3_BASE_TREE WITH_SYMBOL1488_tree;
    pANTLR3_BASE_TREE GRANT_SYMBOL1489_tree;
    pANTLR3_BASE_TREE OPTION_SYMBOL1490_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    GRANT_SYMBOL1480       = NULL;
    PROXY_SYMBOL1481       = NULL;
    ON_SYMBOL1482       = NULL;
    TO_SYMBOL1484       = NULL;
    COMMA_SYMBOL1486       = NULL;
    WITH_SYMBOL1488       = NULL;
    GRANT_SYMBOL1489       = NULL;
    OPTION_SYMBOL1490       = NULL;
    grant_user1483.tree = NULL;

    grant_user1485.tree = NULL;

    grant_user1487.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    GRANT_SYMBOL1480_tree   = NULL;
    PROXY_SYMBOL1481_tree   = NULL;
    ON_SYMBOL1482_tree   = NULL;
    TO_SYMBOL1484_tree   = NULL;
    COMMA_SYMBOL1486_tree   = NULL;
    WITH_SYMBOL1488_tree   = NULL;
    GRANT_SYMBOL1489_tree   = NULL;
    OPTION_SYMBOL1490_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1795: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:1796: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_SYMBOL1480 = (pANTLR3_COMMON_TOKEN) MATCHT(GRANT_SYMBOL, &FOLLOW_GRANT_SYMBOL_in_grant_proxy8065);
            if  (HASEXCEPTION())
            {
                goto rulegrant_proxyEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            GRANT_SYMBOL1480_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GRANT_SYMBOL1480))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, GRANT_SYMBOL1480_tree, root_0));
            }

            PROXY_SYMBOL1481 = (pANTLR3_COMMON_TOKEN) MATCHT(PROXY_SYMBOL, &FOLLOW_PROXY_SYMBOL_in_grant_proxy8068);
            if  (HASEXCEPTION())
            {
                goto rulegrant_proxyEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            PROXY_SYMBOL1481_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PROXY_SYMBOL1481));
            ADAPTOR->addChild(ADAPTOR, root_0, PROXY_SYMBOL1481_tree);
            }

            ON_SYMBOL1482 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_grant_proxy8070);
            if  (HASEXCEPTION())
            {
                goto rulegrant_proxyEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ON_SYMBOL1482_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ON_SYMBOL1482));
            ADAPTOR->addChild(ADAPTOR, root_0, ON_SYMBOL1482_tree);
            }

            FOLLOWPUSH(FOLLOW_grant_user_in_grant_proxy8072);
            grant_user1483=grant_user(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulegrant_proxyEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, grant_user1483.tree);

            TO_SYMBOL1484 = (pANTLR3_COMMON_TOKEN) MATCHT(TO_SYMBOL, &FOLLOW_TO_SYMBOL_in_grant_proxy8074);
            if  (HASEXCEPTION())
            {
                goto rulegrant_proxyEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            TO_SYMBOL1484_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TO_SYMBOL1484));
            ADAPTOR->addChild(ADAPTOR, root_0, TO_SYMBOL1484_tree);
            }

            FOLLOWPUSH(FOLLOW_grant_user_in_grant_proxy8076);
            grant_user1485=grant_user(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulegrant_proxyEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, grant_user1485.tree);

            // MySQL.g:1796:71: ( COMMA_SYMBOL grant_user )*

            for (;;)
            {
                int alt481=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt481=1;
                	}
                    break;

                }

                switch (alt481)
                {
            	case 1:
            	    // MySQL.g:1796:72: COMMA_SYMBOL grant_user
            	    {
            	        COMMA_SYMBOL1486 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_grant_proxy8079);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulegrant_proxyEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL1486_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1486));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1486_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_grant_user_in_grant_proxy8081);
            	        grant_user1487=grant_user(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulegrant_proxyEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, grant_user1487.tree);

            	    }
            	    break;

            	default:
            	    goto loop481;	/* break out of the loop */
            	    break;
                }
            }
            loop481: ; /* Jump out to here if this rule does not match */


            // MySQL.g:1797:3: ( WITH_SYMBOL GRANT_SYMBOL OPTION_SYMBOL )?
            {
                int alt482=2;
                switch ( LA(1) )
                {
                    case WITH_SYMBOL:
                    	{
                    		alt482=1;
                    	}
                        break;
                }

                switch (alt482)
                {
            	case 1:
            	    // MySQL.g:1797:4: WITH_SYMBOL GRANT_SYMBOL OPTION_SYMBOL
            	    {
            	        WITH_SYMBOL1488 = (pANTLR3_COMMON_TOKEN) MATCHT(WITH_SYMBOL, &FOLLOW_WITH_SYMBOL_in_grant_proxy8088);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulegrant_proxyEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        WITH_SYMBOL1488_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WITH_SYMBOL1488));
            	        ADAPTOR->addChild(ADAPTOR, root_0, WITH_SYMBOL1488_tree);
            	        }

            	        GRANT_SYMBOL1489 = (pANTLR3_COMMON_TOKEN) MATCHT(GRANT_SYMBOL, &FOLLOW_GRANT_SYMBOL_in_grant_proxy8090);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulegrant_proxyEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        GRANT_SYMBOL1489_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GRANT_SYMBOL1489));
            	        ADAPTOR->addChild(ADAPTOR, root_0, GRANT_SYMBOL1489_tree);
            	        }

            	        OPTION_SYMBOL1490 = (pANTLR3_COMMON_TOKEN) MATCHT(OPTION_SYMBOL, &FOLLOW_OPTION_SYMBOL_in_grant_proxy8092);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulegrant_proxyEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OPTION_SYMBOL1490_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPTION_SYMBOL1490));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OPTION_SYMBOL1490_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:1800: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_SYMBOL1491;
    pANTLR3_COMMON_TOKEN    USER_SYMBOL1492;
    pANTLR3_COMMON_TOKEN    TO_SYMBOL1494;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1496;
    pANTLR3_COMMON_TOKEN    TO_SYMBOL1498;
    MySQLParser_user_return user1493;
    #undef	RETURN_TYPE_user1493
    #define	RETURN_TYPE_user1493 MySQLParser_user_return

    MySQLParser_user_return user1495;
    #undef	RETURN_TYPE_user1495
    #define	RETURN_TYPE_user1495 MySQLParser_user_return

    MySQLParser_user_return user1497;
    #undef	RETURN_TYPE_user1497
    #define	RETURN_TYPE_user1497 MySQLParser_user_return

    MySQLParser_user_return user1499;
    #undef	RETURN_TYPE_user1499
    #define	RETURN_TYPE_user1499 MySQLParser_user_return

    pANTLR3_BASE_TREE RENAME_SYMBOL1491_tree;
    pANTLR3_BASE_TREE USER_SYMBOL1492_tree;
    pANTLR3_BASE_TREE TO_SYMBOL1494_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1496_tree;
    pANTLR3_BASE_TREE TO_SYMBOL1498_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    RENAME_SYMBOL1491       = NULL;
    USER_SYMBOL1492       = NULL;
    TO_SYMBOL1494       = NULL;
    COMMA_SYMBOL1496       = NULL;
    TO_SYMBOL1498       = NULL;
    user1493.tree = NULL;

    user1495.tree = NULL;

    user1497.tree = NULL;

    user1499.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    RENAME_SYMBOL1491_tree   = NULL;
    USER_SYMBOL1492_tree   = NULL;
    TO_SYMBOL1494_tree   = NULL;
    COMMA_SYMBOL1496_tree   = NULL;
    TO_SYMBOL1498_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1800:12: ( RENAME_SYMBOL ^ USER_SYMBOL user TO_SYMBOL user ( COMMA_SYMBOL user TO_SYMBOL user )* )
        // MySQL.g:1801:2: RENAME_SYMBOL ^ USER_SYMBOL user TO_SYMBOL user ( COMMA_SYMBOL user TO_SYMBOL user )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            RENAME_SYMBOL1491 = (pANTLR3_COMMON_TOKEN) MATCHT(RENAME_SYMBOL, &FOLLOW_RENAME_SYMBOL_in_rename_user8103);
            if  (HASEXCEPTION())
            {
                goto rulerename_userEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            RENAME_SYMBOL1491_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RENAME_SYMBOL1491))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, RENAME_SYMBOL1491_tree, root_0));
            }

            USER_SYMBOL1492 = (pANTLR3_COMMON_TOKEN) MATCHT(USER_SYMBOL, &FOLLOW_USER_SYMBOL_in_rename_user8106);
            if  (HASEXCEPTION())
            {
                goto rulerename_userEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            USER_SYMBOL1492_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USER_SYMBOL1492));
            ADAPTOR->addChild(ADAPTOR, root_0, USER_SYMBOL1492_tree);
            }

            FOLLOWPUSH(FOLLOW_user_in_rename_user8108);
            user1493=user(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulerename_userEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user1493.tree);

            TO_SYMBOL1494 = (pANTLR3_COMMON_TOKEN) MATCHT(TO_SYMBOL, &FOLLOW_TO_SYMBOL_in_rename_user8110);
            if  (HASEXCEPTION())
            {
                goto rulerename_userEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            TO_SYMBOL1494_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TO_SYMBOL1494));
            ADAPTOR->addChild(ADAPTOR, root_0, TO_SYMBOL1494_tree);
            }

            FOLLOWPUSH(FOLLOW_user_in_rename_user8112);
            user1495=user(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulerename_userEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user1495.tree);

            // MySQL.g:1801:49: ( COMMA_SYMBOL user TO_SYMBOL user )*

            for (;;)
            {
                int alt483=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt483=1;
                	}
                    break;

                }

                switch (alt483)
                {
            	case 1:
            	    // MySQL.g:1801:50: COMMA_SYMBOL user TO_SYMBOL user
            	    {
            	        COMMA_SYMBOL1496 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_rename_user8115);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerename_userEx;
            	        }
            	        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);
            	        }

            	        FOLLOWPUSH(FOLLOW_user_in_rename_user8117);
            	        user1497=user(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerename_userEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user1497.tree);

            	        TO_SYMBOL1498 = (pANTLR3_COMMON_TOKEN) MATCHT(TO_SYMBOL, &FOLLOW_TO_SYMBOL_in_rename_user8119);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerename_userEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        TO_SYMBOL1498_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TO_SYMBOL1498));
            	        ADAPTOR->addChild(ADAPTOR, root_0, TO_SYMBOL1498_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_user_in_rename_user8121);
            	        user1499=user(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerename_userEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user1499.tree);

            	    }
            	    break;

            	default:
            	    goto loop483;	/* break out of the loop */
            	    break;
                }
            }
            loop483: ; /* 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:1804: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_SYMBOL1500;
    pANTLR3_COMMON_TOKEN    ALL_SYMBOL1501;
    pANTLR3_COMMON_TOKEN    PRIVILEGES_SYMBOL1502;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1503;
    pANTLR3_COMMON_TOKEN    GRANT_SYMBOL1504;
    pANTLR3_COMMON_TOKEN    OPTION_SYMBOL1505;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL1506;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL1510;
    pANTLR3_COMMON_TOKEN    PROXY_SYMBOL1512;
    pANTLR3_COMMON_TOKEN    ON_SYMBOL1513;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL1515;
    MySQLParser_user_list_return user_list1507;
    #undef	RETURN_TYPE_user_list1507
    #define	RETURN_TYPE_user_list1507 MySQLParser_user_list_return

    MySQLParser_grant_privileges_return grant_privileges1508;
    #undef	RETURN_TYPE_grant_privileges1508
    #define	RETURN_TYPE_grant_privileges1508 MySQLParser_grant_privileges_return

    MySQLParser_privilege_target_return privilege_target1509;
    #undef	RETURN_TYPE_privilege_target1509
    #define	RETURN_TYPE_privilege_target1509 MySQLParser_privilege_target_return

    MySQLParser_user_list_return user_list1511;
    #undef	RETURN_TYPE_user_list1511
    #define	RETURN_TYPE_user_list1511 MySQLParser_user_list_return

    MySQLParser_user_return user1514;
    #undef	RETURN_TYPE_user1514
    #define	RETURN_TYPE_user1514 MySQLParser_user_return

    MySQLParser_user_list_return user_list1516;
    #undef	RETURN_TYPE_user_list1516
    #define	RETURN_TYPE_user_list1516 MySQLParser_user_list_return

    pANTLR3_BASE_TREE REVOKE_SYMBOL1500_tree;
    pANTLR3_BASE_TREE ALL_SYMBOL1501_tree;
    pANTLR3_BASE_TREE PRIVILEGES_SYMBOL1502_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1503_tree;
    pANTLR3_BASE_TREE GRANT_SYMBOL1504_tree;
    pANTLR3_BASE_TREE OPTION_SYMBOL1505_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL1506_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL1510_tree;
    pANTLR3_BASE_TREE PROXY_SYMBOL1512_tree;
    pANTLR3_BASE_TREE ON_SYMBOL1513_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL1515_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    REVOKE_SYMBOL1500       = NULL;
    ALL_SYMBOL1501       = NULL;
    PRIVILEGES_SYMBOL1502       = NULL;
    COMMA_SYMBOL1503       = NULL;
    GRANT_SYMBOL1504       = NULL;
    OPTION_SYMBOL1505       = NULL;
    FROM_SYMBOL1506       = NULL;
    FROM_SYMBOL1510       = NULL;
    PROXY_SYMBOL1512       = NULL;
    ON_SYMBOL1513       = NULL;
    FROM_SYMBOL1515       = NULL;
    user_list1507.tree = NULL;

    grant_privileges1508.tree = NULL;

    privilege_target1509.tree = NULL;

    user_list1511.tree = NULL;

    user1514.tree = NULL;

    user_list1516.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    REVOKE_SYMBOL1500_tree   = NULL;
    ALL_SYMBOL1501_tree   = NULL;
    PRIVILEGES_SYMBOL1502_tree   = NULL;
    COMMA_SYMBOL1503_tree   = NULL;
    GRANT_SYMBOL1504_tree   = NULL;
    OPTION_SYMBOL1505_tree   = NULL;
    FROM_SYMBOL1506_tree   = NULL;
    FROM_SYMBOL1510_tree   = NULL;
    PROXY_SYMBOL1512_tree   = NULL;
    ON_SYMBOL1513_tree   = NULL;
    FROM_SYMBOL1515_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1804: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:1805: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_SYMBOL1500 = (pANTLR3_COMMON_TOKEN) MATCHT(REVOKE_SYMBOL, &FOLLOW_REVOKE_SYMBOL_in_revoke_statement8132);
            if  (HASEXCEPTION())
            {
                goto rulerevoke_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            REVOKE_SYMBOL1500_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REVOKE_SYMBOL1500))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, REVOKE_SYMBOL1500_tree, root_0));
            }

            // MySQL.g:1806: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 alt485=3;
                switch ( LA(1) )
                {
                case ALL_SYMBOL:
                	{
                		{
                		    int LA485_1 = LA(2);
                		    if ( (LA485_1 == PRIVILEGES_SYMBOL))
                		    {
                		        {
                		            int LA485_25 = LA(3);
                		            if ( ((LA(1) == ALL_SYMBOL)))
                		            {
                		                alt485=1;
                		            }
                		            else if ( (ANTLR3_TRUE))
                		            {
                		                alt485=2;
                		            }
                		            else
                		            {
                		                if (BACKTRACKING>0)
                		                {
                		                    FAILEDFLAG = ANTLR3_TRUE;
                		                    return retval;
                		                }


                		                CONSTRUCTEX();
                		                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                		                EXCEPTION->message      = (void *)"";
                		                EXCEPTION->decisionNum  = 485;
                		                EXCEPTION->state        = 25;


                		                goto rulerevoke_statementEx;

                		            }
                		        }
                		    }
                		    else if ( ((LA(1) == ALL_SYMBOL)) && (LA485_1 == COMMA_SYMBOL))
                		    {
                		        alt485=1;
                		    }
                		    else if ( (LA485_1 == ON_SYMBOL))
                		    {
                		        alt485=2;
                		    }
                		    else
                		    {
                		        if (BACKTRACKING>0)
                		        {
                		            FAILEDFLAG = ANTLR3_TRUE;
                		            return retval;
                		        }


                		        CONSTRUCTEX();
                		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                		        EXCEPTION->message      = (void *)"";
                		        EXCEPTION->decisionNum  = 485;
                		        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:
                	{
                		alt485=2;
                	}
                    break;
                case PROXY_SYMBOL:
                	{
                		switch ( LA(2) )
                		{
                		case ON_SYMBOL:
                			{
                				{
                				    int LA485_28 = LA(3);
                				    if ( (!( ((SERVER_VERSION >= 50500)) )))
                				    {
                				        alt485=2;
                				    }
                				    else if ( ((SERVER_VERSION >= 50500)))
                				    {
                				        alt485=3;
                				    }
                				    else
                				    {
                				        if (BACKTRACKING>0)
                				        {
                				            FAILEDFLAG = ANTLR3_TRUE;
                				            return retval;
                				        }


                				        CONSTRUCTEX();
                				        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                				        EXCEPTION->message      = (void *)"";
                				        EXCEPTION->decisionNum  = 485;
                				        EXCEPTION->state        = 28;


                				        goto rulerevoke_statementEx;

                				    }
                				}
                			}
                		    break;
                		case COMMA_SYMBOL:
                			{
                				alt485=2;
                			}
                		    break;

                		default:
                		    if (BACKTRACKING>0)
                		    {
                		        FAILEDFLAG = ANTLR3_TRUE;
                		        return retval;
                		    }

                		    CONSTRUCTEX();
                		    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                		    EXCEPTION->message      = (void *)"";
                		    EXCEPTION->decisionNum  = 485;
                		    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  = 485;
                    EXCEPTION->state        = 0;


                    goto rulerevoke_statementEx;

                }

                switch (alt485)
                {
            	case 1:
            	    // MySQL.g:1807: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_SYMBOL1501 = (pANTLR3_COMMON_TOKEN) MATCHT(ALL_SYMBOL, &FOLLOW_ALL_SYMBOL_in_revoke_statement8144);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerevoke_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ALL_SYMBOL1501_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ALL_SYMBOL1501));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ALL_SYMBOL1501_tree);
            	        }

            	        // MySQL.g:1807:40: ( PRIVILEGES_SYMBOL )?
            	        {
            	            int alt484=2;
            	            switch ( LA(1) )
            	            {
            	                case PRIVILEGES_SYMBOL:
            	                	{
            	                		alt484=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt484)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1807:40: PRIVILEGES_SYMBOL
            	        	    {
            	        	        PRIVILEGES_SYMBOL1502 = (pANTLR3_COMMON_TOKEN) MATCHT(PRIVILEGES_SYMBOL, &FOLLOW_PRIVILEGES_SYMBOL_in_revoke_statement8146);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulerevoke_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        PRIVILEGES_SYMBOL1502_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PRIVILEGES_SYMBOL1502));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, PRIVILEGES_SYMBOL1502_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        COMMA_SYMBOL1503 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_revoke_statement8149);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerevoke_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL1503_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1503));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1503_tree);
            	        }

            	        GRANT_SYMBOL1504 = (pANTLR3_COMMON_TOKEN) MATCHT(GRANT_SYMBOL, &FOLLOW_GRANT_SYMBOL_in_revoke_statement8151);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerevoke_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        GRANT_SYMBOL1504_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GRANT_SYMBOL1504));
            	        ADAPTOR->addChild(ADAPTOR, root_0, GRANT_SYMBOL1504_tree);
            	        }

            	        OPTION_SYMBOL1505 = (pANTLR3_COMMON_TOKEN) MATCHT(OPTION_SYMBOL, &FOLLOW_OPTION_SYMBOL_in_revoke_statement8153);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerevoke_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OPTION_SYMBOL1505_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPTION_SYMBOL1505));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OPTION_SYMBOL1505_tree);
            	        }

            	        FROM_SYMBOL1506 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_revoke_statement8155);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerevoke_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        FROM_SYMBOL1506_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL1506));
            	        ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL1506_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_user_list_in_revoke_statement8157);
            	        user_list1507=user_list(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerevoke_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user_list1507.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1808:5: grant_privileges privilege_target FROM_SYMBOL user_list
            	    {
            	        FOLLOWPUSH(FOLLOW_grant_privileges_in_revoke_statement8163);
            	        grant_privileges1508=grant_privileges(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerevoke_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, grant_privileges1508.tree);

            	        FOLLOWPUSH(FOLLOW_privilege_target_in_revoke_statement8165);
            	        privilege_target1509=privilege_target(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerevoke_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, privilege_target1509.tree);

            	        FROM_SYMBOL1510 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_revoke_statement8167);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerevoke_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        FROM_SYMBOL1510_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL1510));
            	        ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL1510_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_user_list_in_revoke_statement8169);
            	        user_list1511=user_list(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerevoke_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user_list1511.tree);

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:1809: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_SYMBOL1512 = (pANTLR3_COMMON_TOKEN) MATCHT(PROXY_SYMBOL, &FOLLOW_PROXY_SYMBOL_in_revoke_statement8177);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerevoke_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        PROXY_SYMBOL1512_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PROXY_SYMBOL1512));
            	        ADAPTOR->addChild(ADAPTOR, root_0, PROXY_SYMBOL1512_tree);
            	        }

            	        ON_SYMBOL1513 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_revoke_statement8179);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerevoke_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ON_SYMBOL1513_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ON_SYMBOL1513));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ON_SYMBOL1513_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_user_in_revoke_statement8181);
            	        user1514=user(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerevoke_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user1514.tree);

            	        FROM_SYMBOL1515 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_revoke_statement8183);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerevoke_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        FROM_SYMBOL1515_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL1515));
            	        ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL1515_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_user_list_in_revoke_statement8185);
            	        user_list1516=user_list(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerevoke_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user_list1516.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:1813: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_SYMBOL1517;
    MySQLParser_grant_object_type_return grant_object_type1518;
    #undef	RETURN_TYPE_grant_object_type1518
    #define	RETURN_TYPE_grant_object_type1518 MySQLParser_grant_object_type_return

    MySQLParser_privilege_level_return privilege_level1519;
    #undef	RETURN_TYPE_privilege_level1519
    #define	RETURN_TYPE_privilege_level1519 MySQLParser_privilege_level_return

    pANTLR3_BASE_TREE ON_SYMBOL1517_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_SYMBOL1517       = NULL;
    grant_object_type1518.tree = NULL;

    privilege_level1519.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ON_SYMBOL1517_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:1813:17: ( ON_SYMBOL grant_object_type privilege_level -> ^( PRIVILEGE_TARGET_TOKEN ON_SYMBOL grant_object_type privilege_level ) )
        // MySQL.g:1814:2: ON_SYMBOL grant_object_type privilege_level
        {
            ON_SYMBOL1517 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_privilege_target8197);
            if  (HASEXCEPTION())
            {
                goto ruleprivilege_targetEx;
            }
            if (HASFAILED())
            {
                return retval;
            }
             
            if ( BACKTRACKING==0 ) { CREATE_stream_ON_SYMBOL; stream_ON_SYMBOL->add(stream_ON_SYMBOL, ON_SYMBOL1517, NULL); }


            FOLLOWPUSH(FOLLOW_grant_object_type_in_privilege_target8199);
            grant_object_type1518=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_type1518.tree, NULL); }

            FOLLOWPUSH(FOLLOW_privilege_level_in_privilege_target8201);
            privilege_level1519=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_level1519.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;
            	// 1814:46: -> ^( PRIVILEGE_TARGET_TOKEN ON_SYMBOL grant_object_type privilege_level )
            	{
            	    // MySQL.g:1814: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:1817: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_SYMBOL1520;
    pANTLR3_COMMON_TOKEN    PASSWORD_SYMBOL1521;
    pANTLR3_COMMON_TOKEN    FOR_SYMBOL1522;
    pANTLR3_COMMON_TOKEN    PASSWORD_SYMBOL1525;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1526;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1528;
    pANTLR3_COMMON_TOKEN    OLD_PASSWORD_SYMBOL1529;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1530;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1532;
    MySQLParser_user_return user1523;
    #undef	RETURN_TYPE_user1523
    #define	RETURN_TYPE_user1523 MySQLParser_user_return

    MySQLParser_equal_return equal1524;
    #undef	RETURN_TYPE_equal1524
    #define	RETURN_TYPE_equal1524 MySQLParser_equal_return

    MySQLParser_text_string_return text_string1527;
    #undef	RETURN_TYPE_text_string1527
    #define	RETURN_TYPE_text_string1527 MySQLParser_text_string_return

    MySQLParser_text_string_return text_string1531;
    #undef	RETURN_TYPE_text_string1531
    #define	RETURN_TYPE_text_string1531 MySQLParser_text_string_return

    MySQLParser_text_string_return text_string1533;
    #undef	RETURN_TYPE_text_string1533
    #define	RETURN_TYPE_text_string1533 MySQLParser_text_string_return

    pANTLR3_BASE_TREE SET_SYMBOL1520_tree;
    pANTLR3_BASE_TREE PASSWORD_SYMBOL1521_tree;
    pANTLR3_BASE_TREE FOR_SYMBOL1522_tree;
    pANTLR3_BASE_TREE PASSWORD_SYMBOL1525_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1526_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1528_tree;
    pANTLR3_BASE_TREE OLD_PASSWORD_SYMBOL1529_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1530_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1532_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SET_SYMBOL1520       = NULL;
    PASSWORD_SYMBOL1521       = NULL;
    FOR_SYMBOL1522       = NULL;
    PASSWORD_SYMBOL1525       = NULL;
    OPEN_PAR_SYMBOL1526       = NULL;
    CLOSE_PAR_SYMBOL1528       = NULL;
    OLD_PASSWORD_SYMBOL1529       = NULL;
    OPEN_PAR_SYMBOL1530       = NULL;
    CLOSE_PAR_SYMBOL1532       = NULL;
    user1523.tree = NULL;

    equal1524.tree = NULL;

    text_string1527.tree = NULL;

    text_string1531.tree = NULL;

    text_string1533.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SET_SYMBOL1520_tree   = NULL;
    PASSWORD_SYMBOL1521_tree   = NULL;
    FOR_SYMBOL1522_tree   = NULL;
    PASSWORD_SYMBOL1525_tree   = NULL;
    OPEN_PAR_SYMBOL1526_tree   = NULL;
    CLOSE_PAR_SYMBOL1528_tree   = NULL;
    OLD_PASSWORD_SYMBOL1529_tree   = NULL;
    OPEN_PAR_SYMBOL1530_tree   = NULL;
    CLOSE_PAR_SYMBOL1532_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1817: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:1818: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_SYMBOL1520 = (pANTLR3_COMMON_TOKEN) MATCHT(SET_SYMBOL, &FOLLOW_SET_SYMBOL_in_set_password8222);
            if  (HASEXCEPTION())
            {
                goto ruleset_passwordEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            SET_SYMBOL1520_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SET_SYMBOL1520))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, SET_SYMBOL1520_tree, root_0));
            }

            PASSWORD_SYMBOL1521 = (pANTLR3_COMMON_TOKEN) MATCHT(PASSWORD_SYMBOL, &FOLLOW_PASSWORD_SYMBOL_in_set_password8225);
            if  (HASEXCEPTION())
            {
                goto ruleset_passwordEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            PASSWORD_SYMBOL1521_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PASSWORD_SYMBOL1521));
            ADAPTOR->addChild(ADAPTOR, root_0, PASSWORD_SYMBOL1521_tree);
            }

            // MySQL.g:1818:30: ( FOR_SYMBOL user )?
            {
                int alt486=2;
                switch ( LA(1) )
                {
                    case FOR_SYMBOL:
                    	{
                    		alt486=1;
                    	}
                        break;
                }

                switch (alt486)
                {
            	case 1:
            	    // MySQL.g:1818:31: FOR_SYMBOL user
            	    {
            	        FOR_SYMBOL1522 = (pANTLR3_COMMON_TOKEN) MATCHT(FOR_SYMBOL, &FOLLOW_FOR_SYMBOL_in_set_password8228);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleset_passwordEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        FOR_SYMBOL1522_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOR_SYMBOL1522));
            	        ADAPTOR->addChild(ADAPTOR, root_0, FOR_SYMBOL1522_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_user_in_set_password8230);
            	        user1523=user(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleset_passwordEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user1523.tree);

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_equal_in_set_password8234);
            equal1524=equal(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleset_passwordEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, equal1524.tree);

            // MySQL.g:1819: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 alt487=3;
                switch ( LA(1) )
                {
                case PASSWORD_SYMBOL:
                	{
                		alt487=1;
                	}
                    break;
                case OLD_PASSWORD_SYMBOL:
                	{
                		alt487=2;
                	}
                    break;
                case SINGLE_QUOTED_TEXT:
                case BIN_NUMBER:
                case HEX_NUMBER:
                	{
                		alt487=3;
                	}
                    break;

                default:
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }

                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 487;
                    EXCEPTION->state        = 0;


                    goto ruleset_passwordEx;

                }

                switch (alt487)
                {
            	case 1:
            	    // MySQL.g:1820:3: PASSWORD_SYMBOL OPEN_PAR_SYMBOL text_string CLOSE_PAR_SYMBOL
            	    {
            	        PASSWORD_SYMBOL1525 = (pANTLR3_COMMON_TOKEN) MATCHT(PASSWORD_SYMBOL, &FOLLOW_PASSWORD_SYMBOL_in_set_password8241);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleset_passwordEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        PASSWORD_SYMBOL1525_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PASSWORD_SYMBOL1525));
            	        ADAPTOR->addChild(ADAPTOR, root_0, PASSWORD_SYMBOL1525_tree);
            	        }

            	        OPEN_PAR_SYMBOL1526 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_set_password8243);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleset_passwordEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OPEN_PAR_SYMBOL1526_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1526));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1526_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_text_string_in_set_password8245);
            	        text_string1527=text_string(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleset_passwordEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string1527.tree);

            	        CLOSE_PAR_SYMBOL1528 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_set_password8247);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleset_passwordEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CLOSE_PAR_SYMBOL1528_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1528));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1528_tree);
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1821: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_SYMBOL1529 = (pANTLR3_COMMON_TOKEN) MATCHT(OLD_PASSWORD_SYMBOL, &FOLLOW_OLD_PASSWORD_SYMBOL_in_set_password8255);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleset_passwordEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OLD_PASSWORD_SYMBOL1529_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OLD_PASSWORD_SYMBOL1529));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OLD_PASSWORD_SYMBOL1529_tree);
            	        }

            	        OPEN_PAR_SYMBOL1530 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_set_password8257);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleset_passwordEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OPEN_PAR_SYMBOL1530_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1530));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1530_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_text_string_in_set_password8259);
            	        text_string1531=text_string(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleset_passwordEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string1531.tree);

            	        CLOSE_PAR_SYMBOL1532 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_set_password8261);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleset_passwordEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CLOSE_PAR_SYMBOL1532_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1532));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1532_tree);
            	        }

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:1822:5: text_string
            	    {
            	        FOLLOWPUSH(FOLLOW_text_string_in_set_password8267);
            	        text_string1533=text_string(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleset_passwordEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string1533.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:1826: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_SYMBOL1534;
    pANTLR3_COMMON_TOKEN    FUNCTION_SYMBOL1535;
    pANTLR3_COMMON_TOKEN    PROCEDURE_SYMBOL1536;

    pANTLR3_BASE_TREE TABLE_SYMBOL1534_tree;
    pANTLR3_BASE_TREE FUNCTION_SYMBOL1535_tree;
    pANTLR3_BASE_TREE PROCEDURE_SYMBOL1536_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    TABLE_SYMBOL1534       = NULL;
    FUNCTION_SYMBOL1535       = NULL;
    PROCEDURE_SYMBOL1536       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    TABLE_SYMBOL1534_tree   = NULL;
    FUNCTION_SYMBOL1535_tree   = NULL;
    PROCEDURE_SYMBOL1536_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1826:18: ( ( ( TABLE_SYMBOL )? | FUNCTION_SYMBOL | PROCEDURE_SYMBOL ) )
        // MySQL.g:1827:2: ( ( TABLE_SYMBOL )? | FUNCTION_SYMBOL | PROCEDURE_SYMBOL )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:1827:2: ( ( TABLE_SYMBOL )? | FUNCTION_SYMBOL | PROCEDURE_SYMBOL )
            {
                int alt489=3;
                {
                    int LA489_0 = LA(1);
                    if ( (((LA489_0 >= ACCOUNT_SYMBOL) && (LA489_0 <= UDF_RETURNS_SYMBOL)) || ((LA489_0 >= UNCOMMITTED_SYMBOL) && (LA489_0 <= YEAR_SYMBOL)) || LA489_0 == TABLE_SYMBOL || LA489_0 == BACK_TICK_QUOTED_ID || LA489_0 == DOUBLE_QUOTED_TEXT || LA489_0 == IDENTIFIER || LA489_0 == MULT_OPERATOR))
                    {
                        alt489=1;
                    }
                    else if ( (LA489_0 == FUNCTION_SYMBOL))
                    {
                        {
                            int LA489_6 = LA(2);
                            if ( (LA489_6 == FROM_SYMBOL || LA489_6 == TO_SYMBOL || LA489_6 == DOT_SYMBOL))
                            {
                                alt489=1;
                            }
                            else if ( (((LA489_6 >= ACCOUNT_SYMBOL) && (LA489_6 <= YEAR_SYMBOL)) || LA489_6 == BACK_TICK_QUOTED_ID || LA489_6 == DOUBLE_QUOTED_TEXT || LA489_6 == IDENTIFIER || LA489_6 == MULT_OPERATOR))
                            {
                                alt489=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 489;
                                EXCEPTION->state        = 6;


                                goto rulegrant_object_typeEx;

                            }
                        }
                    }
                    else if ( (LA489_0 == PROCEDURE_SYMBOL))
                    {
                        alt489=3;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 489;
                        EXCEPTION->state        = 0;


                        goto rulegrant_object_typeEx;

                    }
                }
                switch (alt489)
                {
            	case 1:
            	    // MySQL.g:1827:3: ( TABLE_SYMBOL )?
            	    {
            	        // MySQL.g:1827:3: ( TABLE_SYMBOL )?
            	        {
            	            int alt488=2;
            	            switch ( LA(1) )
            	            {
            	                case TABLE_SYMBOL:
            	                	{
            	                		alt488=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt488)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1827:3: TABLE_SYMBOL
            	        	    {
            	        	        TABLE_SYMBOL1534 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLE_SYMBOL, &FOLLOW_TABLE_SYMBOL_in_grant_object_type8280);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulegrant_object_typeEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        TABLE_SYMBOL1534_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLE_SYMBOL1534));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, TABLE_SYMBOL1534_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1827:19: FUNCTION_SYMBOL
            	    {
            	        FUNCTION_SYMBOL1535 = (pANTLR3_COMMON_TOKEN) MATCHT(FUNCTION_SYMBOL, &FOLLOW_FUNCTION_SYMBOL_in_grant_object_type8285);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulegrant_object_typeEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        FUNCTION_SYMBOL1535_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FUNCTION_SYMBOL1535));
            	        ADAPTOR->addChild(ADAPTOR, root_0, FUNCTION_SYMBOL1535_tree);
            	        }

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:1827:37: PROCEDURE_SYMBOL
            	    {
            	        PROCEDURE_SYMBOL1536 = (pANTLR3_COMMON_TOKEN) MATCHT(PROCEDURE_SYMBOL, &FOLLOW_PROCEDURE_SYMBOL_in_grant_object_type8289);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulegrant_object_typeEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        PROCEDURE_SYMBOL1536_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PROCEDURE_SYMBOL1536));
            	        ADAPTOR->addChild(ADAPTOR, root_0, PROCEDURE_SYMBOL1536_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:1830: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_SYMBOL1537;
    pANTLR3_COMMON_TOKEN    PRIVILEGES_SYMBOL1538;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1540;
    MySQLParser_privilege_type_return privilege_type1539;
    #undef	RETURN_TYPE_privilege_type1539
    #define	RETURN_TYPE_privilege_type1539 MySQLParser_privilege_type_return

    MySQLParser_privilege_type_return privilege_type1541;
    #undef	RETURN_TYPE_privilege_type1541
    #define	RETURN_TYPE_privilege_type1541 MySQLParser_privilege_type_return

    pANTLR3_BASE_TREE ALL_SYMBOL1537_tree;
    pANTLR3_BASE_TREE PRIVILEGES_SYMBOL1538_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1540_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ALL_SYMBOL1537       = NULL;
    PRIVILEGES_SYMBOL1538       = NULL;
    COMMA_SYMBOL1540       = NULL;
    privilege_type1539.tree = NULL;

    privilege_type1541.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ALL_SYMBOL1537_tree   = NULL;
    PRIVILEGES_SYMBOL1538_tree   = NULL;
    COMMA_SYMBOL1540_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1830:17: ( ALL_SYMBOL ( PRIVILEGES_SYMBOL )? | privilege_type ( COMMA_SYMBOL privilege_type )* )

            ANTLR3_UINT32 alt492;

            alt492=2;

            switch ( LA(1) )
            {
            case ALL_SYMBOL:
            	{
            		alt492=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:
            	{
            		alt492=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 492;
                EXCEPTION->state        = 0;


                goto rulegrant_privilegesEx;

            }

            switch (alt492)
            {
        	case 1:
        	    // MySQL.g:1831:2: ALL_SYMBOL ( PRIVILEGES_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ALL_SYMBOL1537 = (pANTLR3_COMMON_TOKEN) MATCHT(ALL_SYMBOL, &FOLLOW_ALL_SYMBOL_in_grant_privileges8299);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegrant_privilegesEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ALL_SYMBOL1537_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ALL_SYMBOL1537));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ALL_SYMBOL1537_tree);
        	        }

        	        // MySQL.g:1831:13: ( PRIVILEGES_SYMBOL )?
        	        {
        	            int alt490=2;
        	            switch ( LA(1) )
        	            {
        	                case PRIVILEGES_SYMBOL:
        	                	{
        	                		alt490=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt490)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1831:13: PRIVILEGES_SYMBOL
        	        	    {
        	        	        PRIVILEGES_SYMBOL1538 = (pANTLR3_COMMON_TOKEN) MATCHT(PRIVILEGES_SYMBOL, &FOLLOW_PRIVILEGES_SYMBOL_in_grant_privileges8301);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulegrant_privilegesEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        PRIVILEGES_SYMBOL1538_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PRIVILEGES_SYMBOL1538));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, PRIVILEGES_SYMBOL1538_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1832:4: privilege_type ( COMMA_SYMBOL privilege_type )*
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_privilege_type_in_grant_privileges8307);
        	        privilege_type1539=privilege_type(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegrant_privilegesEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, privilege_type1539.tree);

        	        // MySQL.g:1832:19: ( COMMA_SYMBOL privilege_type )*

        	        for (;;)
        	        {
        	            int alt491=2;
        	            switch ( LA(1) )
        	            {
        	            case COMMA_SYMBOL:
        	            	{
        	            		alt491=1;
        	            	}
        	                break;

        	            }

        	            switch (alt491)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1832:20: COMMA_SYMBOL privilege_type
        	        	    {
        	        	        COMMA_SYMBOL1540 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_grant_privileges8310);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulegrant_privilegesEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        COMMA_SYMBOL1540_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1540));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1540_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_privilege_type_in_grant_privileges8312);
        	        	        privilege_type1541=privilege_type(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulegrant_privilegesEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, privilege_type1541.tree);

        	        	    }
        	        	    break;

        	        	default:
        	        	    goto loop491;	/* break out of the loop */
        	        	    break;
        	            }
        	        }
        	        loop491: ; /* 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:1835: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_SYMBOL1542;
    pANTLR3_COMMON_TOKEN    ROUTINE_SYMBOL1543;
    pANTLR3_COMMON_TOKEN    CREATE_SYMBOL1544;
    pANTLR3_COMMON_TOKEN    ROUTINE_SYMBOL1545;
    pANTLR3_COMMON_TOKEN    TABLESPACE_SYMBOL1546;
    pANTLR3_COMMON_TOKEN    TEMPORARY_SYMBOL1547;
    pANTLR3_COMMON_TOKEN    TABLES_SYMBOL1548;
    pANTLR3_COMMON_TOKEN    USER_SYMBOL1549;
    pANTLR3_COMMON_TOKEN    VIEW_SYMBOL1550;
    pANTLR3_COMMON_TOKEN    DELETE_SYMBOL1551;
    pANTLR3_COMMON_TOKEN    DROP_SYMBOL1552;
    pANTLR3_COMMON_TOKEN    EVENT_SYMBOL1553;
    pANTLR3_COMMON_TOKEN    EXECUTE_SYMBOL1554;
    pANTLR3_COMMON_TOKEN    FILE_SYMBOL1555;
    pANTLR3_COMMON_TOKEN    GRANT_SYMBOL1556;
    pANTLR3_COMMON_TOKEN    OPTION_SYMBOL1557;
    pANTLR3_COMMON_TOKEN    INDEX_SYMBOL1558;
    pANTLR3_COMMON_TOKEN    INSERT_SYMBOL1559;
    pANTLR3_COMMON_TOKEN    LOCK_SYMBOL1561;
    pANTLR3_COMMON_TOKEN    TABLES_SYMBOL1562;
    pANTLR3_COMMON_TOKEN    PROCESS_SYMBOL1563;
    pANTLR3_COMMON_TOKEN    PROXY_SYMBOL1564;
    pANTLR3_COMMON_TOKEN    REFERENCES_SYMBOL1565;
    pANTLR3_COMMON_TOKEN    RELOAD_SYMBOL1567;
    pANTLR3_COMMON_TOKEN    REPLICATION_SYMBOL1568;
    pANTLR3_COMMON_TOKEN    set1569;
    pANTLR3_COMMON_TOKEN    SELECT_SYMBOL1570;
    pANTLR3_COMMON_TOKEN    SHOW_SYMBOL1572;
    pANTLR3_COMMON_TOKEN    DATABASES_SYMBOL1573;
    pANTLR3_COMMON_TOKEN    SHOW_SYMBOL1574;
    pANTLR3_COMMON_TOKEN    VIEW_SYMBOL1575;
    pANTLR3_COMMON_TOKEN    SHUTDOWN_SYMBOL1576;
    pANTLR3_COMMON_TOKEN    SUPER_SYMBOL1577;
    pANTLR3_COMMON_TOKEN    TRIGGER_SYMBOL1578;
    pANTLR3_COMMON_TOKEN    UPDATE_SYMBOL1579;
    pANTLR3_COMMON_TOKEN    USAGE_SYMBOL1581;
    MySQLParser_identifier_list_with_parentheses_return identifier_list_with_parentheses1560;
    #undef	RETURN_TYPE_identifier_list_with_parentheses1560
    #define	RETURN_TYPE_identifier_list_with_parentheses1560 MySQLParser_identifier_list_with_parentheses_return

    MySQLParser_identifier_list_with_parentheses_return identifier_list_with_parentheses1566;
    #undef	RETURN_TYPE_identifier_list_with_parentheses1566
    #define	RETURN_TYPE_identifier_list_with_parentheses1566 MySQLParser_identifier_list_with_parentheses_return

    MySQLParser_identifier_list_with_parentheses_return identifier_list_with_parentheses1571;
    #undef	RETURN_TYPE_identifier_list_with_parentheses1571
    #define	RETURN_TYPE_identifier_list_with_parentheses1571 MySQLParser_identifier_list_with_parentheses_return

    MySQLParser_identifier_list_with_parentheses_return identifier_list_with_parentheses1580;
    #undef	RETURN_TYPE_identifier_list_with_parentheses1580
    #define	RETURN_TYPE_identifier_list_with_parentheses1580 MySQLParser_identifier_list_with_parentheses_return

    pANTLR3_BASE_TREE ALTER_SYMBOL1542_tree;
    pANTLR3_BASE_TREE ROUTINE_SYMBOL1543_tree;
    pANTLR3_BASE_TREE CREATE_SYMBOL1544_tree;
    pANTLR3_BASE_TREE ROUTINE_SYMBOL1545_tree;
    pANTLR3_BASE_TREE TABLESPACE_SYMBOL1546_tree;
    pANTLR3_BASE_TREE TEMPORARY_SYMBOL1547_tree;
    pANTLR3_BASE_TREE TABLES_SYMBOL1548_tree;
    pANTLR3_BASE_TREE USER_SYMBOL1549_tree;
    pANTLR3_BASE_TREE VIEW_SYMBOL1550_tree;
    pANTLR3_BASE_TREE DELETE_SYMBOL1551_tree;
    pANTLR3_BASE_TREE DROP_SYMBOL1552_tree;
    pANTLR3_BASE_TREE EVENT_SYMBOL1553_tree;
    pANTLR3_BASE_TREE EXECUTE_SYMBOL1554_tree;
    pANTLR3_BASE_TREE FILE_SYMBOL1555_tree;
    pANTLR3_BASE_TREE GRANT_SYMBOL1556_tree;
    pANTLR3_BASE_TREE OPTION_SYMBOL1557_tree;
    pANTLR3_BASE_TREE INDEX_SYMBOL1558_tree;
    pANTLR3_BASE_TREE INSERT_SYMBOL1559_tree;
    pANTLR3_BASE_TREE LOCK_SYMBOL1561_tree;
    pANTLR3_BASE_TREE TABLES_SYMBOL1562_tree;
    pANTLR3_BASE_TREE PROCESS_SYMBOL1563_tree;
    pANTLR3_BASE_TREE PROXY_SYMBOL1564_tree;
    pANTLR3_BASE_TREE REFERENCES_SYMBOL1565_tree;
    pANTLR3_BASE_TREE RELOAD_SYMBOL1567_tree;
    pANTLR3_BASE_TREE REPLICATION_SYMBOL1568_tree;
    pANTLR3_BASE_TREE set1569_tree;
    pANTLR3_BASE_TREE SELECT_SYMBOL1570_tree;
    pANTLR3_BASE_TREE SHOW_SYMBOL1572_tree;
    pANTLR3_BASE_TREE DATABASES_SYMBOL1573_tree;
    pANTLR3_BASE_TREE SHOW_SYMBOL1574_tree;
    pANTLR3_BASE_TREE VIEW_SYMBOL1575_tree;
    pANTLR3_BASE_TREE SHUTDOWN_SYMBOL1576_tree;
    pANTLR3_BASE_TREE SUPER_SYMBOL1577_tree;
    pANTLR3_BASE_TREE TRIGGER_SYMBOL1578_tree;
    pANTLR3_BASE_TREE UPDATE_SYMBOL1579_tree;
    pANTLR3_BASE_TREE USAGE_SYMBOL1581_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ALTER_SYMBOL1542       = NULL;
    ROUTINE_SYMBOL1543       = NULL;
    CREATE_SYMBOL1544       = NULL;
    ROUTINE_SYMBOL1545       = NULL;
    TABLESPACE_SYMBOL1546       = NULL;
    TEMPORARY_SYMBOL1547       = NULL;
    TABLES_SYMBOL1548       = NULL;
    USER_SYMBOL1549       = NULL;
    VIEW_SYMBOL1550       = NULL;
    DELETE_SYMBOL1551       = NULL;
    DROP_SYMBOL1552       = NULL;
    EVENT_SYMBOL1553       = NULL;
    EXECUTE_SYMBOL1554       = NULL;
    FILE_SYMBOL1555       = NULL;
    GRANT_SYMBOL1556       = NULL;
    OPTION_SYMBOL1557       = NULL;
    INDEX_SYMBOL1558       = NULL;
    INSERT_SYMBOL1559       = NULL;
    LOCK_SYMBOL1561       = NULL;
    TABLES_SYMBOL1562       = NULL;
    PROCESS_SYMBOL1563       = NULL;
    PROXY_SYMBOL1564       = NULL;
    REFERENCES_SYMBOL1565       = NULL;
    RELOAD_SYMBOL1567       = NULL;
    REPLICATION_SYMBOL1568       = NULL;
    set1569       = NULL;
    SELECT_SYMBOL1570       = NULL;
    SHOW_SYMBOL1572       = NULL;
    DATABASES_SYMBOL1573       = NULL;
    SHOW_SYMBOL1574       = NULL;
    VIEW_SYMBOL1575       = NULL;
    SHUTDOWN_SYMBOL1576       = NULL;
    SUPER_SYMBOL1577       = NULL;
    TRIGGER_SYMBOL1578       = NULL;
    UPDATE_SYMBOL1579       = NULL;
    USAGE_SYMBOL1581       = NULL;
    identifier_list_with_parentheses1560.tree = NULL;

    identifier_list_with_parentheses1566.tree = NULL;

    identifier_list_with_parentheses1571.tree = NULL;

    identifier_list_with_parentheses1580.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ALTER_SYMBOL1542_tree   = NULL;
    ROUTINE_SYMBOL1543_tree   = NULL;
    CREATE_SYMBOL1544_tree   = NULL;
    ROUTINE_SYMBOL1545_tree   = NULL;
    TABLESPACE_SYMBOL1546_tree   = NULL;
    TEMPORARY_SYMBOL1547_tree   = NULL;
    TABLES_SYMBOL1548_tree   = NULL;
    USER_SYMBOL1549_tree   = NULL;
    VIEW_SYMBOL1550_tree   = NULL;
    DELETE_SYMBOL1551_tree   = NULL;
    DROP_SYMBOL1552_tree   = NULL;
    EVENT_SYMBOL1553_tree   = NULL;
    EXECUTE_SYMBOL1554_tree   = NULL;
    FILE_SYMBOL1555_tree   = NULL;
    GRANT_SYMBOL1556_tree   = NULL;
    OPTION_SYMBOL1557_tree   = NULL;
    INDEX_SYMBOL1558_tree   = NULL;
    INSERT_SYMBOL1559_tree   = NULL;
    LOCK_SYMBOL1561_tree   = NULL;
    TABLES_SYMBOL1562_tree   = NULL;
    PROCESS_SYMBOL1563_tree   = NULL;
    PROXY_SYMBOL1564_tree   = NULL;
    REFERENCES_SYMBOL1565_tree   = NULL;
    RELOAD_SYMBOL1567_tree   = NULL;
    REPLICATION_SYMBOL1568_tree   = NULL;
    set1569_tree   = NULL;
    SELECT_SYMBOL1570_tree   = NULL;
    SHOW_SYMBOL1572_tree   = NULL;
    DATABASES_SYMBOL1573_tree   = NULL;
    SHOW_SYMBOL1574_tree   = NULL;
    VIEW_SYMBOL1575_tree   = NULL;
    SHUTDOWN_SYMBOL1576_tree   = NULL;
    SUPER_SYMBOL1577_tree   = NULL;
    TRIGGER_SYMBOL1578_tree   = NULL;
    UPDATE_SYMBOL1579_tree   = NULL;
    USAGE_SYMBOL1581_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1835: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 alt499;

            alt499=24;

            switch ( LA(1) )
            {
            case ALTER_SYMBOL:
            	{
            		alt499=1;
            	}
                break;
            case CREATE_SYMBOL:
            	{
            		alt499=2;
            	}
                break;
            case DELETE_SYMBOL:
            	{
            		alt499=3;
            	}
                break;
            case DROP_SYMBOL:
            	{
            		alt499=4;
            	}
                break;
            case EVENT_SYMBOL:
            	{
            		alt499=5;
            	}
                break;
            case EXECUTE_SYMBOL:
            	{
            		alt499=6;
            	}
                break;
            case FILE_SYMBOL:
            	{
            		alt499=7;
            	}
                break;
            case GRANT_SYMBOL:
            	{
            		alt499=8;
            	}
                break;
            case INDEX_SYMBOL:
            	{
            		alt499=9;
            	}
                break;
            case INSERT_SYMBOL:
            	{
            		alt499=10;
            	}
                break;
            case LOCK_SYMBOL:
            	{
            		alt499=11;
            	}
                break;
            case PROCESS_SYMBOL:
            	{
            		alt499=12;
            	}
                break;
            case PROXY_SYMBOL:
            	{
            		alt499=13;
            	}
                break;
            case REFERENCES_SYMBOL:
            	{
            		alt499=14;
            	}
                break;
            case RELOAD_SYMBOL:
            	{
            		alt499=15;
            	}
                break;
            case REPLICATION_SYMBOL:
            	{
            		alt499=16;
            	}
                break;
            case SELECT_SYMBOL:
            	{
            		alt499=17;
            	}
                break;
            case SHOW_SYMBOL:
            	{
            		switch ( LA(2) )
            		{
            		case DATABASES_SYMBOL:
            			{
            				alt499=18;
            			}
            		    break;
            		case VIEW_SYMBOL:
            			{
            				alt499=19;
            			}
            		    break;

            		default:
            		    if (BACKTRACKING>0)
            		    {
            		        FAILEDFLAG = ANTLR3_TRUE;
            		        return retval;
            		    }

            		    CONSTRUCTEX();
            		    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            		    EXCEPTION->message      = (void *)"";
            		    EXCEPTION->decisionNum  = 499;
            		    EXCEPTION->state        = 18;


            		    goto ruleprivilege_typeEx;

            		}

            	}
                break;
            case SHUTDOWN_SYMBOL:
            	{
            		alt499=20;
            	}
                break;
            case SUPER_SYMBOL:
            	{
            		alt499=21;
            	}
                break;
            case TRIGGER_SYMBOL:
            	{
            		alt499=22;
            	}
                break;
            case UPDATE_SYMBOL:
            	{
            		alt499=23;
            	}
                break;
            case USAGE_SYMBOL:
            	{
            		alt499=24;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 499;
                EXCEPTION->state        = 0;


                goto ruleprivilege_typeEx;

            }

            switch (alt499)
            {
        	case 1:
        	    // MySQL.g:1836:2: ALTER_SYMBOL ( ROUTINE_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ALTER_SYMBOL1542 = (pANTLR3_COMMON_TOKEN) MATCHT(ALTER_SYMBOL, &FOLLOW_ALTER_SYMBOL_in_privilege_type8323);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ALTER_SYMBOL1542_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ALTER_SYMBOL1542));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ALTER_SYMBOL1542_tree);
        	        }

        	        // MySQL.g:1836:15: ( ROUTINE_SYMBOL )?
        	        {
        	            int alt493=2;
        	            switch ( LA(1) )
        	            {
        	                case ROUTINE_SYMBOL:
        	                	{
        	                		alt493=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt493)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1836:15: ROUTINE_SYMBOL
        	        	    {
        	        	        ROUTINE_SYMBOL1543 = (pANTLR3_COMMON_TOKEN) MATCHT(ROUTINE_SYMBOL, &FOLLOW_ROUTINE_SYMBOL_in_privilege_type8325);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleprivilege_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        ROUTINE_SYMBOL1543_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ROUTINE_SYMBOL1543));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, ROUTINE_SYMBOL1543_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1837:4: CREATE_SYMBOL ( ROUTINE_SYMBOL | TABLESPACE_SYMBOL | TEMPORARY_SYMBOL TABLES_SYMBOL | USER_SYMBOL | VIEW_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CREATE_SYMBOL1544 = (pANTLR3_COMMON_TOKEN) MATCHT(CREATE_SYMBOL, &FOLLOW_CREATE_SYMBOL_in_privilege_type8331);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CREATE_SYMBOL1544_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CREATE_SYMBOL1544));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CREATE_SYMBOL1544_tree);
        	        }

        	        // MySQL.g:1837:18: ( ROUTINE_SYMBOL | TABLESPACE_SYMBOL | TEMPORARY_SYMBOL TABLES_SYMBOL | USER_SYMBOL | VIEW_SYMBOL )?
        	        {
        	            int alt494=6;
        	            switch ( LA(1) )
        	            {
        	                case ROUTINE_SYMBOL:
        	                	{
        	                		alt494=1;
        	                	}
        	                    break;
        	                case TABLESPACE_SYMBOL:
        	                	{
        	                		alt494=2;
        	                	}
        	                    break;
        	                case TEMPORARY_SYMBOL:
        	                	{
        	                		alt494=3;
        	                	}
        	                    break;
        	                case USER_SYMBOL:
        	                	{
        	                		alt494=4;
        	                	}
        	                    break;
        	                case VIEW_SYMBOL:
        	                	{
        	                		alt494=5;
        	                	}
        	                    break;
        	            }

        	            switch (alt494)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1837:19: ROUTINE_SYMBOL
        	        	    {
        	        	        ROUTINE_SYMBOL1545 = (pANTLR3_COMMON_TOKEN) MATCHT(ROUTINE_SYMBOL, &FOLLOW_ROUTINE_SYMBOL_in_privilege_type8334);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleprivilege_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        ROUTINE_SYMBOL1545_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ROUTINE_SYMBOL1545));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, ROUTINE_SYMBOL1545_tree);
        	        	        }

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:1837:36: TABLESPACE_SYMBOL
        	        	    {
        	        	        TABLESPACE_SYMBOL1546 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLESPACE_SYMBOL, &FOLLOW_TABLESPACE_SYMBOL_in_privilege_type8338);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleprivilege_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        TABLESPACE_SYMBOL1546_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLESPACE_SYMBOL1546));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, TABLESPACE_SYMBOL1546_tree);
        	        	        }

        	        	    }
        	        	    break;
        	        	case 3:
        	        	    // MySQL.g:1837:56: TEMPORARY_SYMBOL TABLES_SYMBOL
        	        	    {
        	        	        TEMPORARY_SYMBOL1547 = (pANTLR3_COMMON_TOKEN) MATCHT(TEMPORARY_SYMBOL, &FOLLOW_TEMPORARY_SYMBOL_in_privilege_type8342);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleprivilege_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        TEMPORARY_SYMBOL1547_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TEMPORARY_SYMBOL1547));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, TEMPORARY_SYMBOL1547_tree);
        	        	        }

        	        	        TABLES_SYMBOL1548 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLES_SYMBOL, &FOLLOW_TABLES_SYMBOL_in_privilege_type8344);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleprivilege_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        TABLES_SYMBOL1548_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLES_SYMBOL1548));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, TABLES_SYMBOL1548_tree);
        	        	        }

        	        	    }
        	        	    break;
        	        	case 4:
        	        	    // MySQL.g:1837:89: USER_SYMBOL
        	        	    {
        	        	        USER_SYMBOL1549 = (pANTLR3_COMMON_TOKEN) MATCHT(USER_SYMBOL, &FOLLOW_USER_SYMBOL_in_privilege_type8348);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleprivilege_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        USER_SYMBOL1549_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USER_SYMBOL1549));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, USER_SYMBOL1549_tree);
        	        	        }

        	        	    }
        	        	    break;
        	        	case 5:
        	        	    // MySQL.g:1837:103: VIEW_SYMBOL
        	        	    {
        	        	        VIEW_SYMBOL1550 = (pANTLR3_COMMON_TOKEN) MATCHT(VIEW_SYMBOL, &FOLLOW_VIEW_SYMBOL_in_privilege_type8352);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleprivilege_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        VIEW_SYMBOL1550_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VIEW_SYMBOL1550));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, VIEW_SYMBOL1550_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1838:4: DELETE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DELETE_SYMBOL1551 = (pANTLR3_COMMON_TOKEN) MATCHT(DELETE_SYMBOL, &FOLLOW_DELETE_SYMBOL_in_privilege_type8359);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DELETE_SYMBOL1551_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DELETE_SYMBOL1551));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DELETE_SYMBOL1551_tree);
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1839:4: DROP_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DROP_SYMBOL1552 = (pANTLR3_COMMON_TOKEN) MATCHT(DROP_SYMBOL, &FOLLOW_DROP_SYMBOL_in_privilege_type8364);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DROP_SYMBOL1552_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DROP_SYMBOL1552));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DROP_SYMBOL1552_tree);
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:1840:4: EVENT_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        EVENT_SYMBOL1553 = (pANTLR3_COMMON_TOKEN) MATCHT(EVENT_SYMBOL, &FOLLOW_EVENT_SYMBOL_in_privilege_type8369);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EVENT_SYMBOL1553_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EVENT_SYMBOL1553));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EVENT_SYMBOL1553_tree);
        	        }

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:1841:4: EXECUTE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        EXECUTE_SYMBOL1554 = (pANTLR3_COMMON_TOKEN) MATCHT(EXECUTE_SYMBOL, &FOLLOW_EXECUTE_SYMBOL_in_privilege_type8374);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EXECUTE_SYMBOL1554_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EXECUTE_SYMBOL1554));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EXECUTE_SYMBOL1554_tree);
        	        }

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:1842:4: FILE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FILE_SYMBOL1555 = (pANTLR3_COMMON_TOKEN) MATCHT(FILE_SYMBOL, &FOLLOW_FILE_SYMBOL_in_privilege_type8379);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FILE_SYMBOL1555_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FILE_SYMBOL1555));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FILE_SYMBOL1555_tree);
        	        }

        	    }
        	    break;
        	case 8:
        	    // MySQL.g:1843:4: GRANT_SYMBOL OPTION_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        GRANT_SYMBOL1556 = (pANTLR3_COMMON_TOKEN) MATCHT(GRANT_SYMBOL, &FOLLOW_GRANT_SYMBOL_in_privilege_type8384);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        GRANT_SYMBOL1556_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GRANT_SYMBOL1556));
        	        ADAPTOR->addChild(ADAPTOR, root_0, GRANT_SYMBOL1556_tree);
        	        }

        	        OPTION_SYMBOL1557 = (pANTLR3_COMMON_TOKEN) MATCHT(OPTION_SYMBOL, &FOLLOW_OPTION_SYMBOL_in_privilege_type8386);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPTION_SYMBOL1557_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPTION_SYMBOL1557));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPTION_SYMBOL1557_tree);
        	        }

        	    }
        	    break;
        	case 9:
        	    // MySQL.g:1844:4: INDEX_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        INDEX_SYMBOL1558 = (pANTLR3_COMMON_TOKEN) MATCHT(INDEX_SYMBOL, &FOLLOW_INDEX_SYMBOL_in_privilege_type8391);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INDEX_SYMBOL1558_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INDEX_SYMBOL1558));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INDEX_SYMBOL1558_tree);
        	        }

        	    }
        	    break;
        	case 10:
        	    // MySQL.g:1845:4: INSERT_SYMBOL ( identifier_list_with_parentheses )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        INSERT_SYMBOL1559 = (pANTLR3_COMMON_TOKEN) MATCHT(INSERT_SYMBOL, &FOLLOW_INSERT_SYMBOL_in_privilege_type8396);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INSERT_SYMBOL1559_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INSERT_SYMBOL1559));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INSERT_SYMBOL1559_tree);
        	        }

        	        // MySQL.g:1845:18: ( identifier_list_with_parentheses )?
        	        {
        	            int alt495=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt495=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt495)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1845:18: identifier_list_with_parentheses
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_identifier_list_with_parentheses_in_privilege_type8398);
        	        	        identifier_list_with_parentheses1560=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_parentheses1560.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 11:
        	    // MySQL.g:1846:4: LOCK_SYMBOL TABLES_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        LOCK_SYMBOL1561 = (pANTLR3_COMMON_TOKEN) MATCHT(LOCK_SYMBOL, &FOLLOW_LOCK_SYMBOL_in_privilege_type8404);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LOCK_SYMBOL1561_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOCK_SYMBOL1561));
        	        ADAPTOR->addChild(ADAPTOR, root_0, LOCK_SYMBOL1561_tree);
        	        }

        	        TABLES_SYMBOL1562 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLES_SYMBOL, &FOLLOW_TABLES_SYMBOL_in_privilege_type8406);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TABLES_SYMBOL1562_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLES_SYMBOL1562));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TABLES_SYMBOL1562_tree);
        	        }

        	    }
        	    break;
        	case 12:
        	    // MySQL.g:1847:4: PROCESS_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        PROCESS_SYMBOL1563 = (pANTLR3_COMMON_TOKEN) MATCHT(PROCESS_SYMBOL, &FOLLOW_PROCESS_SYMBOL_in_privilege_type8411);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PROCESS_SYMBOL1563_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PROCESS_SYMBOL1563));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PROCESS_SYMBOL1563_tree);
        	        }

        	    }
        	    break;
        	case 13:
        	    // MySQL.g:1848:4: PROXY_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        PROXY_SYMBOL1564 = (pANTLR3_COMMON_TOKEN) MATCHT(PROXY_SYMBOL, &FOLLOW_PROXY_SYMBOL_in_privilege_type8416);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PROXY_SYMBOL1564_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PROXY_SYMBOL1564));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PROXY_SYMBOL1564_tree);
        	        }

        	    }
        	    break;
        	case 14:
        	    // MySQL.g:1849:4: REFERENCES_SYMBOL ( identifier_list_with_parentheses )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        REFERENCES_SYMBOL1565 = (pANTLR3_COMMON_TOKEN) MATCHT(REFERENCES_SYMBOL, &FOLLOW_REFERENCES_SYMBOL_in_privilege_type8421);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        REFERENCES_SYMBOL1565_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REFERENCES_SYMBOL1565));
        	        ADAPTOR->addChild(ADAPTOR, root_0, REFERENCES_SYMBOL1565_tree);
        	        }

        	        // MySQL.g:1849:22: ( identifier_list_with_parentheses )?
        	        {
        	            int alt496=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt496=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt496)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1849:22: identifier_list_with_parentheses
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_identifier_list_with_parentheses_in_privilege_type8423);
        	        	        identifier_list_with_parentheses1566=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_parentheses1566.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 15:
        	    // MySQL.g:1850:4: RELOAD_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        RELOAD_SYMBOL1567 = (pANTLR3_COMMON_TOKEN) MATCHT(RELOAD_SYMBOL, &FOLLOW_RELOAD_SYMBOL_in_privilege_type8429);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        RELOAD_SYMBOL1567_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RELOAD_SYMBOL1567));
        	        ADAPTOR->addChild(ADAPTOR, root_0, RELOAD_SYMBOL1567_tree);
        	        }

        	    }
        	    break;
        	case 16:
        	    // MySQL.g:1851:4: REPLICATION_SYMBOL ( CLIENT_SYMBOL | SLAVE_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        REPLICATION_SYMBOL1568 = (pANTLR3_COMMON_TOKEN) MATCHT(REPLICATION_SYMBOL, &FOLLOW_REPLICATION_SYMBOL_in_privilege_type8434);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        REPLICATION_SYMBOL1568_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REPLICATION_SYMBOL1568));
        	        ADAPTOR->addChild(ADAPTOR, root_0, REPLICATION_SYMBOL1568_tree);
        	        }

        	        set1569=(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, set1569))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>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:1852:4: SELECT_SYMBOL ( identifier_list_with_parentheses )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SELECT_SYMBOL1570 = (pANTLR3_COMMON_TOKEN) MATCHT(SELECT_SYMBOL, &FOLLOW_SELECT_SYMBOL_in_privilege_type8447);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SELECT_SYMBOL1570_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SELECT_SYMBOL1570));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SELECT_SYMBOL1570_tree);
        	        }

        	        // MySQL.g:1852:18: ( identifier_list_with_parentheses )?
        	        {
        	            int alt497=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt497=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt497)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1852:18: identifier_list_with_parentheses
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_identifier_list_with_parentheses_in_privilege_type8449);
        	        	        identifier_list_with_parentheses1571=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_parentheses1571.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 18:
        	    // MySQL.g:1853:4: SHOW_SYMBOL DATABASES_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SHOW_SYMBOL1572 = (pANTLR3_COMMON_TOKEN) MATCHT(SHOW_SYMBOL, &FOLLOW_SHOW_SYMBOL_in_privilege_type8455);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SHOW_SYMBOL1572_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SHOW_SYMBOL1572));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SHOW_SYMBOL1572_tree);
        	        }

        	        DATABASES_SYMBOL1573 = (pANTLR3_COMMON_TOKEN) MATCHT(DATABASES_SYMBOL, &FOLLOW_DATABASES_SYMBOL_in_privilege_type8457);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DATABASES_SYMBOL1573_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATABASES_SYMBOL1573));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DATABASES_SYMBOL1573_tree);
        	        }

        	    }
        	    break;
        	case 19:
        	    // MySQL.g:1854:4: SHOW_SYMBOL VIEW_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SHOW_SYMBOL1574 = (pANTLR3_COMMON_TOKEN) MATCHT(SHOW_SYMBOL, &FOLLOW_SHOW_SYMBOL_in_privilege_type8462);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SHOW_SYMBOL1574_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SHOW_SYMBOL1574));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SHOW_SYMBOL1574_tree);
        	        }

        	        VIEW_SYMBOL1575 = (pANTLR3_COMMON_TOKEN) MATCHT(VIEW_SYMBOL, &FOLLOW_VIEW_SYMBOL_in_privilege_type8464);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        VIEW_SYMBOL1575_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VIEW_SYMBOL1575));
        	        ADAPTOR->addChild(ADAPTOR, root_0, VIEW_SYMBOL1575_tree);
        	        }

        	    }
        	    break;
        	case 20:
        	    // MySQL.g:1855:4: SHUTDOWN_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SHUTDOWN_SYMBOL1576 = (pANTLR3_COMMON_TOKEN) MATCHT(SHUTDOWN_SYMBOL, &FOLLOW_SHUTDOWN_SYMBOL_in_privilege_type8469);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SHUTDOWN_SYMBOL1576_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SHUTDOWN_SYMBOL1576));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SHUTDOWN_SYMBOL1576_tree);
        	        }

        	    }
        	    break;
        	case 21:
        	    // MySQL.g:1856:4: SUPER_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SUPER_SYMBOL1577 = (pANTLR3_COMMON_TOKEN) MATCHT(SUPER_SYMBOL, &FOLLOW_SUPER_SYMBOL_in_privilege_type8474);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SUPER_SYMBOL1577_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SUPER_SYMBOL1577));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SUPER_SYMBOL1577_tree);
        	        }

        	    }
        	    break;
        	case 22:
        	    // MySQL.g:1857:4: TRIGGER_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        TRIGGER_SYMBOL1578 = (pANTLR3_COMMON_TOKEN) MATCHT(TRIGGER_SYMBOL, &FOLLOW_TRIGGER_SYMBOL_in_privilege_type8479);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TRIGGER_SYMBOL1578_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TRIGGER_SYMBOL1578));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TRIGGER_SYMBOL1578_tree);
        	        }

        	    }
        	    break;
        	case 23:
        	    // MySQL.g:1858:4: UPDATE_SYMBOL ( identifier_list_with_parentheses )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        UPDATE_SYMBOL1579 = (pANTLR3_COMMON_TOKEN) MATCHT(UPDATE_SYMBOL, &FOLLOW_UPDATE_SYMBOL_in_privilege_type8484);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        UPDATE_SYMBOL1579_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UPDATE_SYMBOL1579));
        	        ADAPTOR->addChild(ADAPTOR, root_0, UPDATE_SYMBOL1579_tree);
        	        }

        	        // MySQL.g:1858:18: ( identifier_list_with_parentheses )?
        	        {
        	            int alt498=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt498=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt498)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1858:18: identifier_list_with_parentheses
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_identifier_list_with_parentheses_in_privilege_type8486);
        	        	        identifier_list_with_parentheses1580=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_parentheses1580.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 24:
        	    // MySQL.g:1859:4: USAGE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        USAGE_SYMBOL1581 = (pANTLR3_COMMON_TOKEN) MATCHT(USAGE_SYMBOL, &FOLLOW_USAGE_SYMBOL_in_privilege_type8492);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        USAGE_SYMBOL1581_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USAGE_SYMBOL1581));
        	        ADAPTOR->addChild(ADAPTOR, root_0, USAGE_SYMBOL1581_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:1862:1: privilege_level : ( MULT_OPERATOR ( DOT_SYMBOL MULT_OPERATOR )? | identifier ( DOT_SYMBOL MULT_OPERATOR | dot_identifier )? );
 */
static MySQLParser_privilege_level_return
privilege_level(pMySQLParser ctx)
{
    MySQLParser_privilege_level_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    MULT_OPERATOR1582;
    pANTLR3_COMMON_TOKEN    DOT_SYMBOL1583;
    pANTLR3_COMMON_TOKEN    MULT_OPERATOR1584;
    pANTLR3_COMMON_TOKEN    DOT_SYMBOL1586;
    pANTLR3_COMMON_TOKEN    MULT_OPERATOR1587;
    MySQLParser_identifier_return identifier1585;
    #undef	RETURN_TYPE_identifier1585
    #define	RETURN_TYPE_identifier1585 MySQLParser_identifier_return

    MySQLParser_dot_identifier_return dot_identifier1588;
    #undef	RETURN_TYPE_dot_identifier1588
    #define	RETURN_TYPE_dot_identifier1588 MySQLParser_dot_identifier_return

    pANTLR3_BASE_TREE MULT_OPERATOR1582_tree;
    pANTLR3_BASE_TREE DOT_SYMBOL1583_tree;
    pANTLR3_BASE_TREE MULT_OPERATOR1584_tree;
    pANTLR3_BASE_TREE DOT_SYMBOL1586_tree;
    pANTLR3_BASE_TREE MULT_OPERATOR1587_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    MULT_OPERATOR1582       = NULL;
    DOT_SYMBOL1583       = NULL;
    MULT_OPERATOR1584       = NULL;
    DOT_SYMBOL1586       = NULL;
    MULT_OPERATOR1587       = NULL;
    identifier1585.tree = NULL;

    dot_identifier1588.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    MULT_OPERATOR1582_tree   = NULL;
    DOT_SYMBOL1583_tree   = NULL;
    MULT_OPERATOR1584_tree   = NULL;
    DOT_SYMBOL1586_tree   = NULL;
    MULT_OPERATOR1587_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1862:16: ( MULT_OPERATOR ( DOT_SYMBOL MULT_OPERATOR )? | identifier ( DOT_SYMBOL MULT_OPERATOR | dot_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:1863:2: MULT_OPERATOR ( DOT_SYMBOL MULT_OPERATOR )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MULT_OPERATOR1582 = (pANTLR3_COMMON_TOKEN) MATCHT(MULT_OPERATOR, &FOLLOW_MULT_OPERATOR_in_privilege_level8501);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_levelEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MULT_OPERATOR1582_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MULT_OPERATOR1582));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MULT_OPERATOR1582_tree);
        	        }

        	        // MySQL.g:1863:16: ( DOT_SYMBOL MULT_OPERATOR )?
        	        {
        	            int alt500=2;
        	            switch ( LA(1) )
        	            {
        	                case DOT_SYMBOL:
        	                	{
        	                		alt500=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt500)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1863:17: DOT_SYMBOL MULT_OPERATOR
        	        	    {
        	        	        DOT_SYMBOL1583 = (pANTLR3_COMMON_TOKEN) MATCHT(DOT_SYMBOL, &FOLLOW_DOT_SYMBOL_in_privilege_level8504);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleprivilege_levelEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        DOT_SYMBOL1583_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DOT_SYMBOL1583));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, DOT_SYMBOL1583_tree);
        	        	        }

        	        	        MULT_OPERATOR1584 = (pANTLR3_COMMON_TOKEN) MATCHT(MULT_OPERATOR, &FOLLOW_MULT_OPERATOR_in_privilege_level8506);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleprivilege_levelEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        MULT_OPERATOR1584_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MULT_OPERATOR1584));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, MULT_OPERATOR1584_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1864:4: identifier ( DOT_SYMBOL MULT_OPERATOR | dot_identifier )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_identifier_in_privilege_level8513);
        	        identifier1585=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_levelEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier1585.tree);

        	        // MySQL.g:1864:15: ( DOT_SYMBOL MULT_OPERATOR | dot_identifier )?
        	        {
        	            int alt501=3;
        	            switch ( LA(1) )
        	            {
        	                case DOT_SYMBOL:
        	                	{
        	                		{
        	                		    int LA501_1 = LA(2);
        	                		    if ( (LA501_1 == MULT_OPERATOR))
        	                		    {
        	                		        alt501=1;
        	                		    }
        	                		    else if ( (((LA501_1 >= ACCOUNT_SYMBOL) && (LA501_1 <= YEAR_SYMBOL)) || LA501_1 == BACK_TICK_QUOTED_ID || LA501_1 == DOUBLE_QUOTED_TEXT || LA501_1 == IDENTIFIER))
        	                		    {
        	                		        alt501=2;
        	                		    }
        	                		}
        	                	}
        	                    break;
        	            }

        	            switch (alt501)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1864:16: DOT_SYMBOL MULT_OPERATOR
        	        	    {
        	        	        DOT_SYMBOL1586 = (pANTLR3_COMMON_TOKEN) MATCHT(DOT_SYMBOL, &FOLLOW_DOT_SYMBOL_in_privilege_level8516);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleprivilege_levelEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        DOT_SYMBOL1586_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DOT_SYMBOL1586));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, DOT_SYMBOL1586_tree);
        	        	        }

        	        	        MULT_OPERATOR1587 = (pANTLR3_COMMON_TOKEN) MATCHT(MULT_OPERATOR, &FOLLOW_MULT_OPERATOR_in_privilege_level8518);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleprivilege_levelEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        MULT_OPERATOR1587_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MULT_OPERATOR1587));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, MULT_OPERATOR1587_tree);
        	        	        }

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:1864:43: dot_identifier
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_dot_identifier_in_privilege_level8522);
        	        	        dot_identifier1588=dot_identifier(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleprivilege_levelEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, dot_identifier1588.tree);

        	        	    }
        	        	    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:1867: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_SYMBOL1590;
    MySQLParser_require_list_element_return require_list_element1589;
    #undef	RETURN_TYPE_require_list_element1589
    #define	RETURN_TYPE_require_list_element1589 MySQLParser_require_list_element_return

    MySQLParser_require_list_element_return require_list_element1591;
    #undef	RETURN_TYPE_require_list_element1591
    #define	RETURN_TYPE_require_list_element1591 MySQLParser_require_list_element_return

    pANTLR3_BASE_TREE AND_SYMBOL1590_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    AND_SYMBOL1590       = NULL;
    require_list_element1589.tree = NULL;

    require_list_element1591.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    AND_SYMBOL1590_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1867:13: ( require_list_element ( ( AND_SYMBOL )? require_list_element )* )
        // MySQL.g:1868:2: require_list_element ( ( AND_SYMBOL )? require_list_element )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_require_list_element_in_require_list8533);
            require_list_element1589=require_list_element(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulerequire_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, require_list_element1589.tree);

            // MySQL.g:1868: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:1868:24: ( AND_SYMBOL )? require_list_element
            	    {
            	        // MySQL.g:1868:24: ( AND_SYMBOL )?
            	        {
            	            int alt503=2;
            	            switch ( LA(1) )
            	            {
            	                case AND_SYMBOL:
            	                	{
            	                		alt503=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt503)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1868:24: AND_SYMBOL
            	        	    {
            	        	        AND_SYMBOL1590 = (pANTLR3_COMMON_TOKEN) MATCHT(AND_SYMBOL, &FOLLOW_AND_SYMBOL_in_require_list8536);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulerequire_listEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        AND_SYMBOL1590_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AND_SYMBOL1590));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, AND_SYMBOL1590_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_require_list_element_in_require_list8539);
            	        require_list_element1591=require_list_element(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerequire_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, require_list_element1591.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:1871: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_SYMBOL1592;
    pANTLR3_COMMON_TOKEN    ISSUER_SYMBOL1594;
    pANTLR3_COMMON_TOKEN    SUBJECT_SYMBOL1596;
    MySQLParser_text_string_return text_string1593;
    #undef	RETURN_TYPE_text_string1593
    #define	RETURN_TYPE_text_string1593 MySQLParser_text_string_return

    MySQLParser_text_string_return text_string1595;
    #undef	RETURN_TYPE_text_string1595
    #define	RETURN_TYPE_text_string1595 MySQLParser_text_string_return

    MySQLParser_text_string_return text_string1597;
    #undef	RETURN_TYPE_text_string1597
    #define	RETURN_TYPE_text_string1597 MySQLParser_text_string_return

    pANTLR3_BASE_TREE CIPHER_SYMBOL1592_tree;
    pANTLR3_BASE_TREE ISSUER_SYMBOL1594_tree;
    pANTLR3_BASE_TREE SUBJECT_SYMBOL1596_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CIPHER_SYMBOL1592       = NULL;
    ISSUER_SYMBOL1594       = NULL;
    SUBJECT_SYMBOL1596       = NULL;
    text_string1593.tree = NULL;

    text_string1595.tree = NULL;

    text_string1597.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CIPHER_SYMBOL1592_tree   = NULL;
    ISSUER_SYMBOL1594_tree   = NULL;
    SUBJECT_SYMBOL1596_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1871: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:1872:2: CIPHER_SYMBOL text_string
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CIPHER_SYMBOL1592 = (pANTLR3_COMMON_TOKEN) MATCHT(CIPHER_SYMBOL, &FOLLOW_CIPHER_SYMBOL_in_require_list_element8550);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulerequire_list_elementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CIPHER_SYMBOL1592_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CIPHER_SYMBOL1592));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CIPHER_SYMBOL1592_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_in_require_list_element8552);
        	        text_string1593=text_string(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulerequire_list_elementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string1593.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1873:4: ISSUER_SYMBOL text_string
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ISSUER_SYMBOL1594 = (pANTLR3_COMMON_TOKEN) MATCHT(ISSUER_SYMBOL, &FOLLOW_ISSUER_SYMBOL_in_require_list_element8557);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulerequire_list_elementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ISSUER_SYMBOL1594_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ISSUER_SYMBOL1594));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ISSUER_SYMBOL1594_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_in_require_list_element8559);
        	        text_string1595=text_string(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulerequire_list_elementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string1595.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1874:4: SUBJECT_SYMBOL text_string
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SUBJECT_SYMBOL1596 = (pANTLR3_COMMON_TOKEN) MATCHT(SUBJECT_SYMBOL, &FOLLOW_SUBJECT_SYMBOL_in_require_list_element8564);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulerequire_list_elementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SUBJECT_SYMBOL1596_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SUBJECT_SYMBOL1596));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SUBJECT_SYMBOL1596_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_in_require_list_element8566);
        	        text_string1597=text_string(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulerequire_list_elementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string1597.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:1877: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_SYMBOL1598;
    pANTLR3_COMMON_TOKEN    OPTION_SYMBOL1599;
    pANTLR3_COMMON_TOKEN    MAX_QUERIES_PER_HOUR_SYMBOL1600;
    pANTLR3_COMMON_TOKEN    MAX_UPDATES_PER_HOUR_SYMBOL1602;
    pANTLR3_COMMON_TOKEN    MAX_CONNECTIONS_PER_HOUR_SYMBOL1604;
    pANTLR3_COMMON_TOKEN    MAX_USER_CONNECTIONS_SYMBOL1606;
    MySQLParser_ulong_number_return ulong_number1601;
    #undef	RETURN_TYPE_ulong_number1601
    #define	RETURN_TYPE_ulong_number1601 MySQLParser_ulong_number_return

    MySQLParser_ulong_number_return ulong_number1603;
    #undef	RETURN_TYPE_ulong_number1603
    #define	RETURN_TYPE_ulong_number1603 MySQLParser_ulong_number_return

    MySQLParser_ulong_number_return ulong_number1605;
    #undef	RETURN_TYPE_ulong_number1605
    #define	RETURN_TYPE_ulong_number1605 MySQLParser_ulong_number_return

    MySQLParser_ulong_number_return ulong_number1607;
    #undef	RETURN_TYPE_ulong_number1607
    #define	RETURN_TYPE_ulong_number1607 MySQLParser_ulong_number_return

    pANTLR3_BASE_TREE GRANT_SYMBOL1598_tree;
    pANTLR3_BASE_TREE OPTION_SYMBOL1599_tree;
    pANTLR3_BASE_TREE MAX_QUERIES_PER_HOUR_SYMBOL1600_tree;
    pANTLR3_BASE_TREE MAX_UPDATES_PER_HOUR_SYMBOL1602_tree;
    pANTLR3_BASE_TREE MAX_CONNECTIONS_PER_HOUR_SYMBOL1604_tree;
    pANTLR3_BASE_TREE MAX_USER_CONNECTIONS_SYMBOL1606_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    GRANT_SYMBOL1598       = NULL;
    OPTION_SYMBOL1599       = NULL;
    MAX_QUERIES_PER_HOUR_SYMBOL1600       = NULL;
    MAX_UPDATES_PER_HOUR_SYMBOL1602       = NULL;
    MAX_CONNECTIONS_PER_HOUR_SYMBOL1604       = NULL;
    MAX_USER_CONNECTIONS_SYMBOL1606       = NULL;
    ulong_number1601.tree = NULL;

    ulong_number1603.tree = NULL;

    ulong_number1605.tree = NULL;

    ulong_number1607.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    GRANT_SYMBOL1598_tree   = NULL;
    OPTION_SYMBOL1599_tree   = NULL;
    MAX_QUERIES_PER_HOUR_SYMBOL1600_tree   = NULL;
    MAX_UPDATES_PER_HOUR_SYMBOL1602_tree   = NULL;
    MAX_CONNECTIONS_PER_HOUR_SYMBOL1604_tree   = NULL;
    MAX_USER_CONNECTIONS_SYMBOL1606_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1877: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:1878:2: GRANT_SYMBOL OPTION_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        GRANT_SYMBOL1598 = (pANTLR3_COMMON_TOKEN) MATCHT(GRANT_SYMBOL, &FOLLOW_GRANT_SYMBOL_in_grant_option8575);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegrant_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        GRANT_SYMBOL1598_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GRANT_SYMBOL1598));
        	        ADAPTOR->addChild(ADAPTOR, root_0, GRANT_SYMBOL1598_tree);
        	        }

        	        OPTION_SYMBOL1599 = (pANTLR3_COMMON_TOKEN) MATCHT(OPTION_SYMBOL, &FOLLOW_OPTION_SYMBOL_in_grant_option8577);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegrant_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPTION_SYMBOL1599_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPTION_SYMBOL1599));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPTION_SYMBOL1599_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1879:4: MAX_QUERIES_PER_HOUR_SYMBOL ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MAX_QUERIES_PER_HOUR_SYMBOL1600 = (pANTLR3_COMMON_TOKEN) MATCHT(MAX_QUERIES_PER_HOUR_SYMBOL, &FOLLOW_MAX_QUERIES_PER_HOUR_SYMBOL_in_grant_option8582);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegrant_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MAX_QUERIES_PER_HOUR_SYMBOL1600_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MAX_QUERIES_PER_HOUR_SYMBOL1600));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MAX_QUERIES_PER_HOUR_SYMBOL1600_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_ulong_number_in_grant_option8584);
        	        ulong_number1601=ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegrant_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number1601.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1880:4: MAX_UPDATES_PER_HOUR_SYMBOL ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MAX_UPDATES_PER_HOUR_SYMBOL1602 = (pANTLR3_COMMON_TOKEN) MATCHT(MAX_UPDATES_PER_HOUR_SYMBOL, &FOLLOW_MAX_UPDATES_PER_HOUR_SYMBOL_in_grant_option8589);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegrant_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MAX_UPDATES_PER_HOUR_SYMBOL1602_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MAX_UPDATES_PER_HOUR_SYMBOL1602));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MAX_UPDATES_PER_HOUR_SYMBOL1602_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_ulong_number_in_grant_option8591);
        	        ulong_number1603=ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegrant_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number1603.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1881:4: MAX_CONNECTIONS_PER_HOUR_SYMBOL ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MAX_CONNECTIONS_PER_HOUR_SYMBOL1604 = (pANTLR3_COMMON_TOKEN) MATCHT(MAX_CONNECTIONS_PER_HOUR_SYMBOL, &FOLLOW_MAX_CONNECTIONS_PER_HOUR_SYMBOL_in_grant_option8596);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegrant_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MAX_CONNECTIONS_PER_HOUR_SYMBOL1604_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MAX_CONNECTIONS_PER_HOUR_SYMBOL1604));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MAX_CONNECTIONS_PER_HOUR_SYMBOL1604_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_ulong_number_in_grant_option8598);
        	        ulong_number1605=ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegrant_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number1605.tree);

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:1882:4: MAX_USER_CONNECTIONS_SYMBOL ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MAX_USER_CONNECTIONS_SYMBOL1606 = (pANTLR3_COMMON_TOKEN) MATCHT(MAX_USER_CONNECTIONS_SYMBOL, &FOLLOW_MAX_USER_CONNECTIONS_SYMBOL_in_grant_option8603);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegrant_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MAX_USER_CONNECTIONS_SYMBOL1606_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MAX_USER_CONNECTIONS_SYMBOL1606));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MAX_USER_CONNECTIONS_SYMBOL1606_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_ulong_number_in_grant_option8605);
        	        ulong_number1607=ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegrant_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number1607.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:1887: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_SYMBOL1608;
    pANTLR3_COMMON_TOKEN    TABLE_SYMBOL1610;
    pANTLR3_COMMON_TOKEN    CHECK_SYMBOL1612;
    pANTLR3_COMMON_TOKEN    TABLE_SYMBOL1613;
    pANTLR3_COMMON_TOKEN    CHECKSUM_SYMBOL1616;
    pANTLR3_COMMON_TOKEN    TABLE_SYMBOL1617;
    pANTLR3_COMMON_TOKEN    set1619;
    pANTLR3_COMMON_TOKEN    OPTIMIZE_SYMBOL1620;
    pANTLR3_COMMON_TOKEN    TABLE_SYMBOL1622;
    pANTLR3_COMMON_TOKEN    REPAIR_SYMBOL1624;
    pANTLR3_COMMON_TOKEN    TABLE_SYMBOL1626;
    pANTLR3_COMMON_TOKEN    BACKUP_SYMBOL1629;
    pANTLR3_COMMON_TOKEN    TABLE_SYMBOL1630;
    pANTLR3_COMMON_TOKEN    TO_SYMBOL1632;
    pANTLR3_COMMON_TOKEN    RESTORE_SYMBOL1634;
    pANTLR3_COMMON_TOKEN    TABLE_SYMBOL1635;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL1637;
    MySQLParser_no_write_to_bin_log_return no_write_to_bin_log1609;
    #undef	RETURN_TYPE_no_write_to_bin_log1609
    #define	RETURN_TYPE_no_write_to_bin_log1609 MySQLParser_no_write_to_bin_log_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_table_ref_list_return table_ref_list1614;
    #undef	RETURN_TYPE_table_ref_list1614
    #define	RETURN_TYPE_table_ref_list1614 MySQLParser_table_ref_list_return

    MySQLParser_check_option_return check_option1615;
    #undef	RETURN_TYPE_check_option1615
    #define	RETURN_TYPE_check_option1615 MySQLParser_check_option_return

    MySQLParser_table_ref_list_return table_ref_list1618;
    #undef	RETURN_TYPE_table_ref_list1618
    #define	RETURN_TYPE_table_ref_list1618 MySQLParser_table_ref_list_return

    MySQLParser_no_write_to_bin_log_return no_write_to_bin_log1621;
    #undef	RETURN_TYPE_no_write_to_bin_log1621
    #define	RETURN_TYPE_no_write_to_bin_log1621 MySQLParser_no_write_to_bin_log_return

    MySQLParser_table_ref_list_return table_ref_list1623;
    #undef	RETURN_TYPE_table_ref_list1623
    #define	RETURN_TYPE_table_ref_list1623 MySQLParser_table_ref_list_return

    MySQLParser_no_write_to_bin_log_return no_write_to_bin_log1625;
    #undef	RETURN_TYPE_no_write_to_bin_log1625
    #define	RETURN_TYPE_no_write_to_bin_log1625 MySQLParser_no_write_to_bin_log_return

    MySQLParser_table_ref_list_return table_ref_list1627;
    #undef	RETURN_TYPE_table_ref_list1627
    #define	RETURN_TYPE_table_ref_list1627 MySQLParser_table_ref_list_return

    MySQLParser_repair_option_return repair_option1628;
    #undef	RETURN_TYPE_repair_option1628
    #define	RETURN_TYPE_repair_option1628 MySQLParser_repair_option_return

    MySQLParser_table_ref_list_return table_ref_list1631;
    #undef	RETURN_TYPE_table_ref_list1631
    #define	RETURN_TYPE_table_ref_list1631 MySQLParser_table_ref_list_return

    MySQLParser_string_literal_return string_literal1633;
    #undef	RETURN_TYPE_string_literal1633
    #define	RETURN_TYPE_string_literal1633 MySQLParser_string_literal_return

    MySQLParser_table_ref_list_return table_ref_list1636;
    #undef	RETURN_TYPE_table_ref_list1636
    #define	RETURN_TYPE_table_ref_list1636 MySQLParser_table_ref_list_return

    MySQLParser_string_literal_return string_literal1638;
    #undef	RETURN_TYPE_string_literal1638
    #define	RETURN_TYPE_string_literal1638 MySQLParser_string_literal_return

    pANTLR3_BASE_TREE ANALYZE_SYMBOL1608_tree;
    pANTLR3_BASE_TREE TABLE_SYMBOL1610_tree;
    pANTLR3_BASE_TREE CHECK_SYMBOL1612_tree;
    pANTLR3_BASE_TREE TABLE_SYMBOL1613_tree;
    pANTLR3_BASE_TREE CHECKSUM_SYMBOL1616_tree;
    pANTLR3_BASE_TREE TABLE_SYMBOL1617_tree;
    pANTLR3_BASE_TREE set1619_tree;
    pANTLR3_BASE_TREE OPTIMIZE_SYMBOL1620_tree;
    pANTLR3_BASE_TREE TABLE_SYMBOL1622_tree;
    pANTLR3_BASE_TREE REPAIR_SYMBOL1624_tree;
    pANTLR3_BASE_TREE TABLE_SYMBOL1626_tree;
    pANTLR3_BASE_TREE BACKUP_SYMBOL1629_tree;
    pANTLR3_BASE_TREE TABLE_SYMBOL1630_tree;
    pANTLR3_BASE_TREE TO_SYMBOL1632_tree;
    pANTLR3_BASE_TREE RESTORE_SYMBOL1634_tree;
    pANTLR3_BASE_TREE TABLE_SYMBOL1635_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL1637_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ANALYZE_SYMBOL1608       = NULL;
    TABLE_SYMBOL1610       = NULL;
    CHECK_SYMBOL1612       = NULL;
    TABLE_SYMBOL1613       = NULL;
    CHECKSUM_SYMBOL1616       = NULL;
    TABLE_SYMBOL1617       = NULL;
    set1619       = NULL;
    OPTIMIZE_SYMBOL1620       = NULL;
    TABLE_SYMBOL1622       = NULL;
    REPAIR_SYMBOL1624       = NULL;
    TABLE_SYMBOL1626       = NULL;
    BACKUP_SYMBOL1629       = NULL;
    TABLE_SYMBOL1630       = NULL;
    TO_SYMBOL1632       = NULL;
    RESTORE_SYMBOL1634       = NULL;
    TABLE_SYMBOL1635       = NULL;
    FROM_SYMBOL1637       = NULL;
    no_write_to_bin_log1609.tree = NULL;

    table_ref_list1611.tree = NULL;

    table_ref_list1614.tree = NULL;

    check_option1615.tree = NULL;

    table_ref_list1618.tree = NULL;

    no_write_to_bin_log1621.tree = NULL;

    table_ref_list1623.tree = NULL;

    no_write_to_bin_log1625.tree = NULL;

    table_ref_list1627.tree = NULL;

    repair_option1628.tree = NULL;

    table_ref_list1631.tree = NULL;

    string_literal1633.tree = NULL;

    table_ref_list1636.tree = NULL;

    string_literal1638.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ANALYZE_SYMBOL1608_tree   = NULL;
    TABLE_SYMBOL1610_tree   = NULL;
    CHECK_SYMBOL1612_tree   = NULL;
    TABLE_SYMBOL1613_tree   = NULL;
    CHECKSUM_SYMBOL1616_tree   = NULL;
    TABLE_SYMBOL1617_tree   = NULL;
    set1619_tree   = NULL;
    OPTIMIZE_SYMBOL1620_tree   = NULL;
    TABLE_SYMBOL1622_tree   = NULL;
    REPAIR_SYMBOL1624_tree   = NULL;
    TABLE_SYMBOL1626_tree   = NULL;
    BACKUP_SYMBOL1629_tree   = NULL;
    TABLE_SYMBOL1630_tree   = NULL;
    TO_SYMBOL1632_tree   = NULL;
    RESTORE_SYMBOL1634_tree   = NULL;
    TABLE_SYMBOL1635_tree   = NULL;
    FROM_SYMBOL1637_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1887: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:1888:2: ANALYZE_SYMBOL ^ ( no_write_to_bin_log )? TABLE_SYMBOL table_ref_list
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ANALYZE_SYMBOL1608 = (pANTLR3_COMMON_TOKEN) MATCHT(ANALYZE_SYMBOL, &FOLLOW_ANALYZE_SYMBOL_in_table_administration_statement8616);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ANALYZE_SYMBOL1608_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ANALYZE_SYMBOL1608))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, ANALYZE_SYMBOL1608_tree, root_0));
        	        }

        	        // MySQL.g:1888: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:1888:18: no_write_to_bin_log
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_no_write_to_bin_log_in_table_administration_statement8619);
        	        	        no_write_to_bin_log1609=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_log1609.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        TABLE_SYMBOL1610 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLE_SYMBOL, &FOLLOW_TABLE_SYMBOL_in_table_administration_statement8622);
        	        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_statement8624);
        	        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);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1889:4: CHECK_SYMBOL ^ TABLE_SYMBOL table_ref_list ( check_option )*
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CHECK_SYMBOL1612 = (pANTLR3_COMMON_TOKEN) MATCHT(CHECK_SYMBOL, &FOLLOW_CHECK_SYMBOL_in_table_administration_statement8629);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CHECK_SYMBOL1612_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHECK_SYMBOL1612))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, CHECK_SYMBOL1612_tree, root_0));
        	        }

        	        TABLE_SYMBOL1613 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLE_SYMBOL, &FOLLOW_TABLE_SYMBOL_in_table_administration_statement8632);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TABLE_SYMBOL1613_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLE_SYMBOL1613));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TABLE_SYMBOL1613_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_table_ref_list_in_table_administration_statement8634);
        	        table_ref_list1614=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_list1614.tree);

        	        // MySQL.g:1889: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:1889:46: check_option
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_check_option_in_table_administration_statement8636);
        	        	        check_option1615=check_option(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletable_administration_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, check_option1615.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:1890:4: CHECKSUM_SYMBOL ^ TABLE_SYMBOL table_ref_list ( QUICK_SYMBOL | EXTENDED_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CHECKSUM_SYMBOL1616 = (pANTLR3_COMMON_TOKEN) MATCHT(CHECKSUM_SYMBOL, &FOLLOW_CHECKSUM_SYMBOL_in_table_administration_statement8642);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CHECKSUM_SYMBOL1616_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHECKSUM_SYMBOL1616))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, CHECKSUM_SYMBOL1616_tree, root_0));
        	        }

        	        TABLE_SYMBOL1617 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLE_SYMBOL, &FOLLOW_TABLE_SYMBOL_in_table_administration_statement8645);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TABLE_SYMBOL1617_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLE_SYMBOL1617));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TABLE_SYMBOL1617_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_table_ref_list_in_table_administration_statement8647);
        	        table_ref_list1618=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_list1618.tree);

        	        // MySQL.g:1890: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:
        	        	    {
        	        	        set1619=(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, set1619))
        	        	            );
        	        	            PERRORRECOVERY=ANTLR3_FALSE;
        	        	            FAILEDFLAG=ANTLR3_FALSE;

        	        	        }
        	        	        else
        	        	        {
        	        	            if (BACKTRACKING>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:1891:4: OPTIMIZE_SYMBOL ^ ( no_write_to_bin_log )? TABLE_SYMBOL table_ref_list
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        OPTIMIZE_SYMBOL1620 = (pANTLR3_COMMON_TOKEN) MATCHT(OPTIMIZE_SYMBOL, &FOLLOW_OPTIMIZE_SYMBOL_in_table_administration_statement8661);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPTIMIZE_SYMBOL1620_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPTIMIZE_SYMBOL1620))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, OPTIMIZE_SYMBOL1620_tree, root_0));
        	        }

        	        // MySQL.g:1891: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:1891:21: no_write_to_bin_log
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_no_write_to_bin_log_in_table_administration_statement8664);
        	        	        no_write_to_bin_log1621=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_log1621.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        TABLE_SYMBOL1622 = (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_SYMBOL1622_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLE_SYMBOL1622));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TABLE_SYMBOL1622_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_table_ref_list_in_table_administration_statement8669);
        	        table_ref_list1623=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_list1623.tree);

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:1892:4: REPAIR_SYMBOL ^ ( no_write_to_bin_log )? TABLE_SYMBOL table_ref_list ( repair_option )*
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        REPAIR_SYMBOL1624 = (pANTLR3_COMMON_TOKEN) MATCHT(REPAIR_SYMBOL, &FOLLOW_REPAIR_SYMBOL_in_table_administration_statement8674);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        REPAIR_SYMBOL1624_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REPAIR_SYMBOL1624))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, REPAIR_SYMBOL1624_tree, root_0));
        	        }

        	        // MySQL.g:1892: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:1892:19: no_write_to_bin_log
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_no_write_to_bin_log_in_table_administration_statement8677);
        	        	        no_write_to_bin_log1625=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_log1625.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        TABLE_SYMBOL1626 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLE_SYMBOL, &FOLLOW_TABLE_SYMBOL_in_table_administration_statement8680);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TABLE_SYMBOL1626_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLE_SYMBOL1626));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TABLE_SYMBOL1626_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_table_ref_list_in_table_administration_statement8682);
        	        table_ref_list1627=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_list1627.tree);

        	        // MySQL.g:1892: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:1892:68: repair_option
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_repair_option_in_table_administration_statement8684);
        	        	        repair_option1628=repair_option(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletable_administration_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, repair_option1628.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:1893: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_SYMBOL1629 = (pANTLR3_COMMON_TOKEN) MATCHT(BACKUP_SYMBOL, &FOLLOW_BACKUP_SYMBOL_in_table_administration_statement8692);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BACKUP_SYMBOL1629_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BACKUP_SYMBOL1629))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, BACKUP_SYMBOL1629_tree, root_0));
        	        }

        	        TABLE_SYMBOL1630 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLE_SYMBOL, &FOLLOW_TABLE_SYMBOL_in_table_administration_statement8695);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TABLE_SYMBOL1630_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLE_SYMBOL1630));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TABLE_SYMBOL1630_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_table_ref_list_in_table_administration_statement8697);
        	        table_ref_list1631=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_list1631.tree);

        	        TO_SYMBOL1632 = (pANTLR3_COMMON_TOKEN) MATCHT(TO_SYMBOL, &FOLLOW_TO_SYMBOL_in_table_administration_statement8699);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TO_SYMBOL1632_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TO_SYMBOL1632));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TO_SYMBOL1632_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_table_administration_statement8701);
        	        string_literal1633=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal1633.tree);

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:1894: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_SYMBOL1634 = (pANTLR3_COMMON_TOKEN) MATCHT(RESTORE_SYMBOL, &FOLLOW_RESTORE_SYMBOL_in_table_administration_statement8708);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        RESTORE_SYMBOL1634_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RESTORE_SYMBOL1634))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, RESTORE_SYMBOL1634_tree, root_0));
        	        }

        	        TABLE_SYMBOL1635 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLE_SYMBOL, &FOLLOW_TABLE_SYMBOL_in_table_administration_statement8711);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TABLE_SYMBOL1635_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLE_SYMBOL1635));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TABLE_SYMBOL1635_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_table_ref_list_in_table_administration_statement8713);
        	        table_ref_list1636=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_list1636.tree);

        	        FROM_SYMBOL1637 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_table_administration_statement8715);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FROM_SYMBOL1637_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL1637));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL1637_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_table_administration_statement8717);
        	        string_literal1638=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal1638.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:1897: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_SYMBOL1639;
    pANTLR3_COMMON_TOKEN    UPGRADE_SYMBOL1640;
    pANTLR3_COMMON_TOKEN    QUICK_SYMBOL1641;
    pANTLR3_COMMON_TOKEN    FAST_SYMBOL1642;
    pANTLR3_COMMON_TOKEN    MEDIUM_SYMBOL1643;
    pANTLR3_COMMON_TOKEN    EXTENDED_SYMBOL1644;
    pANTLR3_COMMON_TOKEN    CHANGED_SYMBOL1645;

    pANTLR3_BASE_TREE FOR_SYMBOL1639_tree;
    pANTLR3_BASE_TREE UPGRADE_SYMBOL1640_tree;
    pANTLR3_BASE_TREE QUICK_SYMBOL1641_tree;
    pANTLR3_BASE_TREE FAST_SYMBOL1642_tree;
    pANTLR3_BASE_TREE MEDIUM_SYMBOL1643_tree;
    pANTLR3_BASE_TREE EXTENDED_SYMBOL1644_tree;
    pANTLR3_BASE_TREE CHANGED_SYMBOL1645_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    FOR_SYMBOL1639       = NULL;
    UPGRADE_SYMBOL1640       = NULL;
    QUICK_SYMBOL1641       = NULL;
    FAST_SYMBOL1642       = NULL;
    MEDIUM_SYMBOL1643       = NULL;
    EXTENDED_SYMBOL1644       = NULL;
    CHANGED_SYMBOL1645       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    FOR_SYMBOL1639_tree   = NULL;
    UPGRADE_SYMBOL1640_tree   = NULL;
    QUICK_SYMBOL1641_tree   = NULL;
    FAST_SYMBOL1642_tree   = NULL;
    MEDIUM_SYMBOL1643_tree   = NULL;
    EXTENDED_SYMBOL1644_tree   = NULL;
    CHANGED_SYMBOL1645_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1897: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:1898:2: FOR_SYMBOL UPGRADE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOR_SYMBOL1639 = (pANTLR3_COMMON_TOKEN) MATCHT(FOR_SYMBOL, &FOLLOW_FOR_SYMBOL_in_check_option8726);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecheck_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FOR_SYMBOL1639_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOR_SYMBOL1639));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FOR_SYMBOL1639_tree);
        	        }

        	        UPGRADE_SYMBOL1640 = (pANTLR3_COMMON_TOKEN) MATCHT(UPGRADE_SYMBOL, &FOLLOW_UPGRADE_SYMBOL_in_check_option8728);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecheck_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        UPGRADE_SYMBOL1640_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UPGRADE_SYMBOL1640));
        	        ADAPTOR->addChild(ADAPTOR, root_0, UPGRADE_SYMBOL1640_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1898:30: QUICK_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        QUICK_SYMBOL1641 = (pANTLR3_COMMON_TOKEN) MATCHT(QUICK_SYMBOL, &FOLLOW_QUICK_SYMBOL_in_check_option8732);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecheck_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        QUICK_SYMBOL1641_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, QUICK_SYMBOL1641));
        	        ADAPTOR->addChild(ADAPTOR, root_0, QUICK_SYMBOL1641_tree);
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1898:45: FAST_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FAST_SYMBOL1642 = (pANTLR3_COMMON_TOKEN) MATCHT(FAST_SYMBOL, &FOLLOW_FAST_SYMBOL_in_check_option8736);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecheck_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FAST_SYMBOL1642_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FAST_SYMBOL1642));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FAST_SYMBOL1642_tree);
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1898:59: MEDIUM_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MEDIUM_SYMBOL1643 = (pANTLR3_COMMON_TOKEN) MATCHT(MEDIUM_SYMBOL, &FOLLOW_MEDIUM_SYMBOL_in_check_option8740);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecheck_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MEDIUM_SYMBOL1643_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MEDIUM_SYMBOL1643));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MEDIUM_SYMBOL1643_tree);
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:1898:75: EXTENDED_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        EXTENDED_SYMBOL1644 = (pANTLR3_COMMON_TOKEN) MATCHT(EXTENDED_SYMBOL, &FOLLOW_EXTENDED_SYMBOL_in_check_option8744);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecheck_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EXTENDED_SYMBOL1644_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EXTENDED_SYMBOL1644));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EXTENDED_SYMBOL1644_tree);
        	        }

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:1898:93: CHANGED_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CHANGED_SYMBOL1645 = (pANTLR3_COMMON_TOKEN) MATCHT(CHANGED_SYMBOL, &FOLLOW_CHANGED_SYMBOL_in_check_option8748);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecheck_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CHANGED_SYMBOL1645_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHANGED_SYMBOL1645));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CHANGED_SYMBOL1645_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:1901: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    set1646;

    pANTLR3_BASE_TREE set1646_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1646       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1646_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1901:14: ( QUICK_SYMBOL | EXTENDED_SYMBOL | USE_FRM_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set1646=(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, set1646))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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:1907: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_SYMBOL1647;
    pANTLR3_COMMON_TOKEN    PLUGIN_SYMBOL1648;
    pANTLR3_COMMON_TOKEN    SONAME_SYMBOL1650;
    pANTLR3_COMMON_TOKEN    UNINSTALL_SYMBOL1652;
    pANTLR3_COMMON_TOKEN    PLUGIN_SYMBOL1653;
    MySQLParser_identifier_return identifier1649;
    #undef	RETURN_TYPE_identifier1649
    #define	RETURN_TYPE_identifier1649 MySQLParser_identifier_return

    MySQLParser_string_literal_return string_literal1651;
    #undef	RETURN_TYPE_string_literal1651
    #define	RETURN_TYPE_string_literal1651 MySQLParser_string_literal_return

    MySQLParser_identifier_return identifier1654;
    #undef	RETURN_TYPE_identifier1654
    #define	RETURN_TYPE_identifier1654 MySQLParser_identifier_return

    pANTLR3_BASE_TREE INSTALL_SYMBOL1647_tree;
    pANTLR3_BASE_TREE PLUGIN_SYMBOL1648_tree;
    pANTLR3_BASE_TREE SONAME_SYMBOL1650_tree;
    pANTLR3_BASE_TREE UNINSTALL_SYMBOL1652_tree;
    pANTLR3_BASE_TREE PLUGIN_SYMBOL1653_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    INSTALL_SYMBOL1647       = NULL;
    PLUGIN_SYMBOL1648       = NULL;
    SONAME_SYMBOL1650       = NULL;
    UNINSTALL_SYMBOL1652       = NULL;
    PLUGIN_SYMBOL1653       = NULL;
    identifier1649.tree = NULL;

    string_literal1651.tree = NULL;

    identifier1654.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    INSTALL_SYMBOL1647_tree   = NULL;
    PLUGIN_SYMBOL1648_tree   = NULL;
    SONAME_SYMBOL1650_tree   = NULL;
    UNINSTALL_SYMBOL1652_tree   = NULL;
    PLUGIN_SYMBOL1653_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1907: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:1908:2: INSTALL_SYMBOL ^ PLUGIN_SYMBOL identifier SONAME_SYMBOL string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        INSTALL_SYMBOL1647 = (pANTLR3_COMMON_TOKEN) MATCHT(INSTALL_SYMBOL, &FOLLOW_INSTALL_SYMBOL_in_install_uninstall_statment8776);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinstall_uninstall_statmentEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INSTALL_SYMBOL1647_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INSTALL_SYMBOL1647))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, INSTALL_SYMBOL1647_tree, root_0));
        	        }

        	        PLUGIN_SYMBOL1648 = (pANTLR3_COMMON_TOKEN) MATCHT(PLUGIN_SYMBOL, &FOLLOW_PLUGIN_SYMBOL_in_install_uninstall_statment8779);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinstall_uninstall_statmentEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PLUGIN_SYMBOL1648_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PLUGIN_SYMBOL1648));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PLUGIN_SYMBOL1648_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_identifier_in_install_uninstall_statment8781);
        	        identifier1649=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinstall_uninstall_statmentEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier1649.tree);

        	        SONAME_SYMBOL1650 = (pANTLR3_COMMON_TOKEN) MATCHT(SONAME_SYMBOL, &FOLLOW_SONAME_SYMBOL_in_install_uninstall_statment8783);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinstall_uninstall_statmentEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SONAME_SYMBOL1650_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SONAME_SYMBOL1650));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SONAME_SYMBOL1650_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_install_uninstall_statment8785);
        	        string_literal1651=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinstall_uninstall_statmentEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal1651.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1909:4: UNINSTALL_SYMBOL ^ PLUGIN_SYMBOL identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        UNINSTALL_SYMBOL1652 = (pANTLR3_COMMON_TOKEN) MATCHT(UNINSTALL_SYMBOL, &FOLLOW_UNINSTALL_SYMBOL_in_install_uninstall_statment8790);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinstall_uninstall_statmentEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        UNINSTALL_SYMBOL1652_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNINSTALL_SYMBOL1652))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, UNINSTALL_SYMBOL1652_tree, root_0));
        	        }

        	        PLUGIN_SYMBOL1653 = (pANTLR3_COMMON_TOKEN) MATCHT(PLUGIN_SYMBOL, &FOLLOW_PLUGIN_SYMBOL_in_install_uninstall_statment8793);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinstall_uninstall_statmentEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PLUGIN_SYMBOL1653_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PLUGIN_SYMBOL1653));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PLUGIN_SYMBOL1653_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_identifier_in_install_uninstall_statment8795);
        	        identifier1654=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinstall_uninstall_statmentEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier1654.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:1914: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_SYMBOL1655;
    pANTLR3_COMMON_TOKEN    TRANSACTION_SYMBOL1657;
    pANTLR3_COMMON_TOKEN    ONE_SHOT_SYMBOL1659;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1661;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1665;
    MySQLParser_option_type_return option_type1656;
    #undef	RETURN_TYPE_option_type1656
    #define	RETURN_TYPE_option_type1656 MySQLParser_option_type_return

    MySQLParser_set_transaction_characteristic_return set_transaction_characteristic1658;
    #undef	RETURN_TYPE_set_transaction_characteristic1658
    #define	RETURN_TYPE_set_transaction_characteristic1658 MySQLParser_set_transaction_characteristic_return

    MySQLParser_option_value_no_option_type_return option_value_no_option_type1660;
    #undef	RETURN_TYPE_option_value_no_option_type1660
    #define	RETURN_TYPE_option_value_no_option_type1660 MySQLParser_option_value_no_option_type_return

    MySQLParser_option_value_list_return option_value_list1662;
    #undef	RETURN_TYPE_option_value_list1662
    #define	RETURN_TYPE_option_value_list1662 MySQLParser_option_value_list_return

    MySQLParser_option_type_return option_type1663;
    #undef	RETURN_TYPE_option_type1663
    #define	RETURN_TYPE_option_type1663 MySQLParser_option_type_return

    MySQLParser_option_value_following_option_type_return option_value_following_option_type1664;
    #undef	RETURN_TYPE_option_value_following_option_type1664
    #define	RETURN_TYPE_option_value_following_option_type1664 MySQLParser_option_value_following_option_type_return

    MySQLParser_option_value_list_return option_value_list1666;
    #undef	RETURN_TYPE_option_value_list1666
    #define	RETURN_TYPE_option_value_list1666 MySQLParser_option_value_list_return

    pANTLR3_BASE_TREE SET_SYMBOL1655_tree;
    pANTLR3_BASE_TREE TRANSACTION_SYMBOL1657_tree;
    pANTLR3_BASE_TREE ONE_SHOT_SYMBOL1659_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1661_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1665_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SET_SYMBOL1655       = NULL;
    TRANSACTION_SYMBOL1657       = NULL;
    ONE_SHOT_SYMBOL1659       = NULL;
    COMMA_SYMBOL1661       = NULL;
    COMMA_SYMBOL1665       = NULL;
    option_type1656.tree = NULL;

    set_transaction_characteristic1658.tree = NULL;

    option_value_no_option_type1660.tree = NULL;

    option_value_list1662.tree = NULL;

    option_type1663.tree = NULL;

    option_value_following_option_type1664.tree = NULL;

    option_value_list1666.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SET_SYMBOL1655_tree   = NULL;
    TRANSACTION_SYMBOL1657_tree   = NULL;
    ONE_SHOT_SYMBOL1659_tree   = NULL;
    COMMA_SYMBOL1661_tree   = NULL;
    COMMA_SYMBOL1665_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1914: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:1915: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_SYMBOL1655 = (pANTLR3_COMMON_TOKEN) MATCHT(SET_SYMBOL, &FOLLOW_SET_SYMBOL_in_set_statement8806);
            if  (HASEXCEPTION())
            {
                goto ruleset_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            SET_SYMBOL1655_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SET_SYMBOL1655))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, SET_SYMBOL1655_tree, root_0));
            }

            // MySQL.g:1916: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 == DEFAULT_SYMBOL || LA520_1 == BACK_TICK_QUOTED_ID || 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 == CHAR_SYMBOL || LA520_0 == DEFAULT_SYMBOL || ((LA520_0 >= AT_AT_SIGN_SYMBOL) && (LA520_0 <= AT_TEXT_SUFFIX)) || LA520_0 == BACK_TICK_QUOTED_ID || 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:1917:5: ( option_type )? TRANSACTION_SYMBOL set_transaction_characteristic
            	    {
            	        // MySQL.g:1917: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:1917:5: option_type
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_option_type_in_set_statement8829);
            	        	        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);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        TRANSACTION_SYMBOL1657 = (pANTLR3_COMMON_TOKEN) MATCHT(TRANSACTION_SYMBOL, &FOLLOW_TRANSACTION_SYMBOL_in_set_statement8832);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleset_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        TRANSACTION_SYMBOL1657_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TRANSACTION_SYMBOL1657));
            	        ADAPTOR->addChild(ADAPTOR, root_0, TRANSACTION_SYMBOL1657_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_set_transaction_characteristic_in_set_statement8834);
            	        set_transaction_characteristic1658=set_transaction_characteristic(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleset_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, set_transaction_characteristic1658.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1919:6: ( ONE_SHOT_SYMBOL )? option_value_no_option_type ( COMMA_SYMBOL option_value_list )?
            	    {
            	        // MySQL.g:1919: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 == CHAR_SYMBOL || LA517_1 == DEFAULT_SYMBOL || ((LA517_1 >= AT_AT_SIGN_SYMBOL) && (LA517_1 <= AT_TEXT_SUFFIX)) || LA517_1 == BACK_TICK_QUOTED_ID || LA517_1 == DOUBLE_QUOTED_TEXT || LA517_1 == IDENTIFIER))
            	                		    {
            	                		        alt517=1;
            	                		    }
            	                		}
            	                	}
            	                    break;
            	            }

            	            switch (alt517)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1919:6: ONE_SHOT_SYMBOL
            	        	    {
            	        	        ONE_SHOT_SYMBOL1659 = (pANTLR3_COMMON_TOKEN) MATCHT(ONE_SHOT_SYMBOL, &FOLLOW_ONE_SHOT_SYMBOL_in_set_statement8845);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleset_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        ONE_SHOT_SYMBOL1659_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ONE_SHOT_SYMBOL1659));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, ONE_SHOT_SYMBOL1659_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_option_value_no_option_type_in_set_statement8848);
            	        option_value_no_option_type1660=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_type1660.tree);

            	        // MySQL.g:1919:51: ( COMMA_SYMBOL option_value_list )?
            	        {
            	            int alt518=2;
            	            switch ( LA(1) )
            	            {
            	                case COMMA_SYMBOL:
            	                	{
            	                		alt518=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt518)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1919:52: COMMA_SYMBOL option_value_list
            	        	    {
            	        	        COMMA_SYMBOL1661 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_set_statement8851);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleset_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        COMMA_SYMBOL1661_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1661));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1661_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_option_value_list_in_set_statement8853);
            	        	        option_value_list1662=option_value_list(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleset_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, option_value_list1662.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:1920:6: option_type option_value_following_option_type ( COMMA_SYMBOL option_value_list )?
            	    {
            	        FOLLOWPUSH(FOLLOW_option_type_in_set_statement8862);
            	        option_type1663=option_type(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleset_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, option_type1663.tree);

            	        FOLLOWPUSH(FOLLOW_option_value_following_option_type_in_set_statement8864);
            	        option_value_following_option_type1664=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_type1664.tree);

            	        // MySQL.g:1920:53: ( COMMA_SYMBOL option_value_list )?
            	        {
            	            int alt519=2;
            	            switch ( LA(1) )
            	            {
            	                case COMMA_SYMBOL:
            	                	{
            	                		alt519=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt519)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1920:54: COMMA_SYMBOL option_value_list
            	        	    {
            	        	        COMMA_SYMBOL1665 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_set_statement8867);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleset_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        COMMA_SYMBOL1665_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1665));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1665_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_option_value_list_in_set_statement8869);
            	        	        option_value_list1666=option_value_list(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleset_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, option_value_list1666.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:1926: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_SYMBOL1667;
    pANTLR3_COMMON_TOKEN    COLLATE_SYMBOL1671;
    MySQLParser_equal_return equal1668;
    #undef	RETURN_TYPE_equal1668
    #define	RETURN_TYPE_equal1668 MySQLParser_equal_return

    MySQLParser_expression_return expression1669;
    #undef	RETURN_TYPE_expression1669
    #define	RETURN_TYPE_expression1669 MySQLParser_expression_return

    MySQLParser_charset_name_or_default_return charset_name_or_default1670;
    #undef	RETURN_TYPE_charset_name_or_default1670
    #define	RETURN_TYPE_charset_name_or_default1670 MySQLParser_charset_name_or_default_return

    MySQLParser_collation_name_or_default_return collation_name_or_default1672;
    #undef	RETURN_TYPE_collation_name_or_default1672
    #define	RETURN_TYPE_collation_name_or_default1672 MySQLParser_collation_name_or_default_return

    MySQLParser_variable_name_return variable_name1673;
    #undef	RETURN_TYPE_variable_name1673
    #define	RETURN_TYPE_variable_name1673 MySQLParser_variable_name_return

    MySQLParser_equal_return equal1674;
    #undef	RETURN_TYPE_equal1674
    #define	RETURN_TYPE_equal1674 MySQLParser_equal_return

    MySQLParser_set_expression_or_default_return set_expression_or_default1675;
    #undef	RETURN_TYPE_set_expression_or_default1675
    #define	RETURN_TYPE_set_expression_or_default1675 MySQLParser_set_expression_or_default_return

    MySQLParser_user_variable_return user_variable1676;
    #undef	RETURN_TYPE_user_variable1676
    #define	RETURN_TYPE_user_variable1676 MySQLParser_user_variable_return

    MySQLParser_equal_return equal1677;
    #undef	RETURN_TYPE_equal1677
    #define	RETURN_TYPE_equal1677 MySQLParser_equal_return

    MySQLParser_expression_return expression1678;
    #undef	RETURN_TYPE_expression1678
    #define	RETURN_TYPE_expression1678 MySQLParser_expression_return

    MySQLParser_system_variable_return system_variable1679;
    #undef	RETURN_TYPE_system_variable1679
    #define	RETURN_TYPE_system_variable1679 MySQLParser_system_variable_return

    MySQLParser_equal_return equal1680;
    #undef	RETURN_TYPE_equal1680
    #define	RETURN_TYPE_equal1680 MySQLParser_equal_return

    MySQLParser_set_expression_or_default_return set_expression_or_default1681;
    #undef	RETURN_TYPE_set_expression_or_default1681
    #define	RETURN_TYPE_set_expression_or_default1681 MySQLParser_set_expression_or_default_return

    MySQLParser_charset_clause_return charset_clause1682;
    #undef	RETURN_TYPE_charset_clause1682
    #define	RETURN_TYPE_charset_clause1682 MySQLParser_charset_clause_return

    pANTLR3_BASE_TREE NAMES_SYMBOL1667_tree;
    pANTLR3_BASE_TREE COLLATE_SYMBOL1671_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    NAMES_SYMBOL1667       = NULL;
    COLLATE_SYMBOL1671       = NULL;
    equal1668.tree = NULL;

    expression1669.tree = NULL;

    charset_name_or_default1670.tree = NULL;

    collation_name_or_default1672.tree = NULL;

    variable_name1673.tree = NULL;

    equal1674.tree = NULL;

    set_expression_or_default1675.tree = NULL;

    user_variable1676.tree = NULL;

    equal1677.tree = NULL;

    expression1678.tree = NULL;

    system_variable1679.tree = NULL;

    equal1680.tree = NULL;

    set_expression_or_default1681.tree = NULL;

    charset_clause1682.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    NAMES_SYMBOL1667_tree   = NULL;
    COLLATE_SYMBOL1671_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1926: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 == BINARY_SYMBOL || LA523_1 == DEFAULT_SYMBOL || LA523_1 == SINGLE_QUOTED_TEXT || LA523_1 == BACK_TICK_QUOTED_ID || LA523_1 == DOUBLE_QUOTED_TEXT || LA523_1 == IDENTIFIER))
                        {
                            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 == DEFAULT_SYMBOL || LA523_0 == BACK_TICK_QUOTED_ID || 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 == BINARY_SYMBOL || LA523_6 == DEFAULT_SYMBOL || LA523_6 == SINGLE_QUOTED_TEXT || LA523_6 == BACK_TICK_QUOTED_ID || LA523_6 == DOUBLE_QUOTED_TEXT || LA523_6 == IDENTIFIER))
                        {
                            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:1927: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_SYMBOL1667 = (pANTLR3_COMMON_TOKEN) MATCHT(NAMES_SYMBOL, &FOLLOW_NAMES_SYMBOL_in_option_value_no_option_type8894);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleoption_value_no_option_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NAMES_SYMBOL1667_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NAMES_SYMBOL1667));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NAMES_SYMBOL1667_tree);
        	        }

        	        // MySQL.g:1928: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 == BINARY_SYMBOL || LA522_0 == DEFAULT_SYMBOL || LA522_0 == SINGLE_QUOTED_TEXT || LA522_0 == BACK_TICK_QUOTED_ID || LA522_0 == DOUBLE_QUOTED_TEXT || LA522_0 == IDENTIFIER))
        	                {
        	                    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:1929:4: equal expression
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_equal_in_option_value_no_option_type8903);
        	        	        equal1668=equal(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleoption_value_no_option_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, equal1668.tree);

        	        	        FOLLOWPUSH(FOLLOW_expression_in_option_value_no_option_type8905);
        	        	        expression1669=expression(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleoption_value_no_option_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1669.tree);

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:1930:6: charset_name_or_default ( COLLATE_SYMBOL collation_name_or_default )?
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_charset_name_or_default_in_option_value_no_option_type8912);
        	        	        charset_name_or_default1670=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_default1670.tree);

        	        	        // MySQL.g:1930: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:1930:31: COLLATE_SYMBOL collation_name_or_default
        	        	        	    {
        	        	        	        COLLATE_SYMBOL1671 = (pANTLR3_COMMON_TOKEN) MATCHT(COLLATE_SYMBOL, &FOLLOW_COLLATE_SYMBOL_in_option_value_no_option_type8915);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruleoption_value_no_option_typeEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        COLLATE_SYMBOL1671_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COLLATE_SYMBOL1671));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COLLATE_SYMBOL1671_tree);
        	        	        	        }

        	        	        	        FOLLOWPUSH(FOLLOW_collation_name_or_default_in_option_value_no_option_type8917);
        	        	        	        collation_name_or_default1672=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_default1672.tree);

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1932: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_type8928);
        	        variable_name1673=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_name1673.tree);

        	        FOLLOWPUSH(FOLLOW_equal_in_option_value_no_option_type8930);
        	        equal1674=equal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleoption_value_no_option_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, equal1674.tree);

        	        FOLLOWPUSH(FOLLOW_set_expression_or_default_in_option_value_no_option_type8932);
        	        set_expression_or_default1675=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_default1675.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1933:4: user_variable equal expression
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_user_variable_in_option_value_no_option_type8937);
        	        user_variable1676=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_variable1676.tree);

        	        FOLLOWPUSH(FOLLOW_equal_in_option_value_no_option_type8939);
        	        equal1677=equal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleoption_value_no_option_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, equal1677.tree);

        	        FOLLOWPUSH(FOLLOW_expression_in_option_value_no_option_type8941);
        	        expression1678=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleoption_value_no_option_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1678.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1934: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_type8946);
        	        system_variable1679=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_variable1679.tree);

        	        FOLLOWPUSH(FOLLOW_equal_in_option_value_no_option_type8948);
        	        equal1680=equal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleoption_value_no_option_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, equal1680.tree);

        	        FOLLOWPUSH(FOLLOW_set_expression_or_default_in_option_value_no_option_type8950);
        	        set_expression_or_default1681=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_default1681.tree);

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:1935:4: charset_clause
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_charset_clause_in_option_value_no_option_type8955);
        	        charset_clause1682=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_clause1682.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:1938: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_name1683;
    #undef	RETURN_TYPE_variable_name1683
    #define	RETURN_TYPE_variable_name1683 MySQLParser_variable_name_return

    MySQLParser_equal_return equal1684;
    #undef	RETURN_TYPE_equal1684
    #define	RETURN_TYPE_equal1684 MySQLParser_equal_return

    MySQLParser_set_expression_or_default_return set_expression_or_default1685;
    #undef	RETURN_TYPE_set_expression_or_default1685
    #define	RETURN_TYPE_set_expression_or_default1685 MySQLParser_set_expression_or_default_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    variable_name1683.tree = NULL;

    equal1684.tree = NULL;

    set_expression_or_default1685.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:1938:35: ( variable_name equal set_expression_or_default )
        // MySQL.g:1939: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_type8964);
            variable_name1683=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_name1683.tree);

            FOLLOWPUSH(FOLLOW_equal_in_option_value_following_option_type8966);
            equal1684=equal(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleoption_value_following_option_typeEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, equal1684.tree);

            FOLLOWPUSH(FOLLOW_set_expression_or_default_in_option_value_following_option_type8968);
            set_expression_or_default1685=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_default1685.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:1942: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_SYMBOL1687;
    pANTLR3_COMMON_TOKEN    ON_SYMBOL1688;
    pANTLR3_COMMON_TOKEN    ALL_SYMBOL1689;
    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL1690;
    MySQLParser_expression_return expression1686;
    #undef	RETURN_TYPE_expression1686
    #define	RETURN_TYPE_expression1686 MySQLParser_expression_return

    pANTLR3_BASE_TREE DEFAULT_SYMBOL1687_tree;
    pANTLR3_BASE_TREE ON_SYMBOL1688_tree;
    pANTLR3_BASE_TREE ALL_SYMBOL1689_tree;
    pANTLR3_BASE_TREE BINARY_SYMBOL1690_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DEFAULT_SYMBOL1687       = NULL;
    ON_SYMBOL1688       = NULL;
    ALL_SYMBOL1689       = NULL;
    BINARY_SYMBOL1690       = NULL;
    expression1686.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DEFAULT_SYMBOL1687_tree   = NULL;
    ON_SYMBOL1688_tree   = NULL;
    ALL_SYMBOL1689_tree   = NULL;
    BINARY_SYMBOL1690_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1942: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 >= 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 == EXISTS_SYMBOL || ((LA524_0 >= EXTRACT_SYMBOL) && (LA524_0 <= FALSE_SYMBOL)) || LA524_0 == GROUP_CONCAT_SYMBOL || LA524_0 == IF_SYMBOL || LA524_0 == INSERT_SYMBOL || LA524_0 == INTERVAL_SYMBOL || LA524_0 == LEFT_SYMBOL || LA524_0 == MATCH_SYMBOL || LA524_0 == MAX_SYMBOL || LA524_0 == MIN_SYMBOL || LA524_0 == MOD_SYMBOL || LA524_0 == NCHAR_TEXT || ((LA524_0 >= NOT2_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 <= 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 >= UTC_DATE_SYMBOL) && (LA524_0 <= UTC_TIME_SYMBOL)) || LA524_0 == VALUES_SYMBOL || LA524_0 == VARIANCE_SYMBOL || LA524_0 == VAR_SAMP_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 == DECIMAL_NUMBER || LA524_0 == DOT_SYMBOL || LA524_0 == DOUBLE_QUOTED_TEXT || LA524_0 == FLOAT_NUMBER || ((LA524_0 >= HEX_NUMBER) && (LA524_0 <= IDENTIFIER)) || LA524_0 == INT_NUMBER || LA524_0 == LOGICAL_NOT_OPERATOR || ((LA524_0 >= LONG_NUMBER) && (LA524_0 <= MINUS_OPERATOR)) || LA524_0 == PLUS_OPERATOR || ((LA524_0 >= ULONGLONG_NUMBER) && (LA524_0 <= UNDERSCORE_CHARSET))))
                {
                    alt524=1;
                }
                else if ( (LA524_0 == BINARY_SYMBOL))
                {
                    {
                        int LA524_100 = LA(2);
                        if ( (((LA524_100 >= ACCOUNT_SYMBOL) && (LA524_100 <= YEAR_SYMBOL)) || LA524_100 == BINARY_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 == EXISTS_SYMBOL || ((LA524_100 >= EXTRACT_SYMBOL) && (LA524_100 <= FALSE_SYMBOL)) || LA524_100 == GROUP_CONCAT_SYMBOL || LA524_100 == IF_SYMBOL || LA524_100 == INSERT_SYMBOL || LA524_100 == LEFT_SYMBOL || 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 >= UTC_DATE_SYMBOL) && (LA524_100 <= UTC_TIME_SYMBOL)) || LA524_100 == VALUES_SYMBOL || LA524_100 == VARIANCE_SYMBOL || LA524_100 == VAR_SAMP_SYMBOL || ((LA524_100 >= AT_AT_SIGN_SYMBOL) && (LA524_100 <= AT_TEXT_SUFFIX)) || ((LA524_100 >= BACK_TICK_QUOTED_ID) && (LA524_100 <= BIN_NUMBER)) || ((LA524_100 >= BIT_AND_SYMBOL) && (LA524_100 <= BIT_XOR_SYMBOL)) || LA524_100 == DECIMAL_NUMBER || LA524_100 == DOT_SYMBOL || LA524_100 == DOUBLE_QUOTED_TEXT || LA524_100 == FLOAT_NUMBER || ((LA524_100 >= HEX_NUMBER) && (LA524_100 <= IDENTIFIER)) || LA524_100 == INT_NUMBER || LA524_100 == LONG_NUMBER || ((LA524_100 >= ULONGLONG_NUMBER) && (LA524_100 <= UNDERSCORE_CHARSET))))
                        {
                            alt524=1;
                        }
                        else if ( (LA524_100 == EOF || LA524_100 == SEMICOLON_SYMBOL || LA524_100 == COMMA_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:1943:2: expression
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_expression_in_set_expression_or_default8978);
        	        expression1686=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleset_expression_or_defaultEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1686.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1944:4: DEFAULT_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DEFAULT_SYMBOL1687 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_set_expression_or_default8983);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleset_expression_or_defaultEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DEFAULT_SYMBOL1687_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL1687));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL1687_tree);
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1945:4: ON_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ON_SYMBOL1688 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_set_expression_or_default8988);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleset_expression_or_defaultEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ON_SYMBOL1688_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ON_SYMBOL1688));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ON_SYMBOL1688_tree);
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1946:4: ALL_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ALL_SYMBOL1689 = (pANTLR3_COMMON_TOKEN) MATCHT(ALL_SYMBOL, &FOLLOW_ALL_SYMBOL_in_set_expression_or_default8993);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleset_expression_or_defaultEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ALL_SYMBOL1689_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ALL_SYMBOL1689));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ALL_SYMBOL1689_tree);
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:1947:4: BINARY_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BINARY_SYMBOL1690 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_set_expression_or_default8998);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleset_expression_or_defaultEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BINARY_SYMBOL1690_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL1690));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL1690_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:1950: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_SYMBOL1692;
    MySQLParser_option_value_return option_value1691;
    #undef	RETURN_TYPE_option_value1691
    #define	RETURN_TYPE_option_value1691 MySQLParser_option_value_return

    MySQLParser_option_value_return option_value1693;
    #undef	RETURN_TYPE_option_value1693
    #define	RETURN_TYPE_option_value1693 MySQLParser_option_value_return

    pANTLR3_BASE_TREE COMMA_SYMBOL1692_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL1692       = NULL;
    option_value1691.tree = NULL;

    option_value1693.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL1692_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1950:18: ( option_value ( COMMA_SYMBOL option_value )* )
        // MySQL.g:1951:2: option_value ( COMMA_SYMBOL option_value )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_option_value_in_option_value_list9007);
            option_value1691=option_value(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleoption_value_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, option_value1691.tree);

            // MySQL.g:1951:15: ( COMMA_SYMBOL option_value )*

            for (;;)
            {
                int alt525=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt525=1;
                	}
                    break;

                }

                switch (alt525)
                {
            	case 1:
            	    // MySQL.g:1951:16: COMMA_SYMBOL option_value
            	    {
            	        COMMA_SYMBOL1692 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_option_value_list9010);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleoption_value_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL1692_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1692));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1692_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_option_value_in_option_value_list9012);
            	        option_value1693=option_value(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleoption_value_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, option_value1693.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:1954: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_type1694;
    #undef	RETURN_TYPE_option_type1694
    #define	RETURN_TYPE_option_type1694 MySQLParser_option_type_return

    MySQLParser_variable_name_return variable_name1695;
    #undef	RETURN_TYPE_variable_name1695
    #define	RETURN_TYPE_variable_name1695 MySQLParser_variable_name_return

    MySQLParser_equal_return equal1696;
    #undef	RETURN_TYPE_equal1696
    #define	RETURN_TYPE_equal1696 MySQLParser_equal_return

    MySQLParser_set_expression_or_default_return set_expression_or_default1697;
    #undef	RETURN_TYPE_set_expression_or_default1697
    #define	RETURN_TYPE_set_expression_or_default1697 MySQLParser_set_expression_or_default_return

    MySQLParser_option_value_no_option_type_return option_value_no_option_type1698;
    #undef	RETURN_TYPE_option_value_no_option_type1698
    #define	RETURN_TYPE_option_value_no_option_type1698 MySQLParser_option_value_no_option_type_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    option_type1694.tree = NULL;

    variable_name1695.tree = NULL;

    equal1696.tree = NULL;

    set_expression_or_default1697.tree = NULL;

    option_value_no_option_type1698.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1954: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 == DEFAULT_SYMBOL || LA526_1 == BACK_TICK_QUOTED_ID || 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 == CHAR_SYMBOL || LA526_0 == DEFAULT_SYMBOL || ((LA526_0 >= AT_AT_SIGN_SYMBOL) && (LA526_0 <= AT_TEXT_SUFFIX)) || LA526_0 == BACK_TICK_QUOTED_ID || 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:1955:2: option_type variable_name equal set_expression_or_default
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_option_type_in_option_value9023);
        	        option_type1694=option_type(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleoption_valueEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, option_type1694.tree);

        	        FOLLOWPUSH(FOLLOW_variable_name_in_option_value9025);
        	        variable_name1695=variable_name(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleoption_valueEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, variable_name1695.tree);

        	        FOLLOWPUSH(FOLLOW_equal_in_option_value9027);
        	        equal1696=equal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleoption_valueEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, equal1696.tree);

        	        FOLLOWPUSH(FOLLOW_set_expression_or_default_in_option_value9029);
        	        set_expression_or_default1697=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_default1697.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1956:4: option_value_no_option_type
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_option_value_no_option_type_in_option_value9034);
        	        option_value_no_option_type1698=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_type1698.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:1961: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_SYMBOL1699;
    pANTLR3_COMMON_TOKEN    AUTHORS_SYMBOL1700;
    pANTLR3_COMMON_TOKEN    DATABASES_SYMBOL1701;
    pANTLR3_COMMON_TOKEN    FULL_SYMBOL1703;
    pANTLR3_COMMON_TOKEN    TABLES_SYMBOL1704;
    pANTLR3_COMMON_TOKEN    FULL_SYMBOL1707;
    pANTLR3_COMMON_TOKEN    TRIGGERS_SYMBOL1708;
    pANTLR3_COMMON_TOKEN    EVENTS_SYMBOL1711;
    pANTLR3_COMMON_TOKEN    TABLE_SYMBOL1714;
    pANTLR3_COMMON_TOKEN    STATUS_SYMBOL1715;
    pANTLR3_COMMON_TOKEN    OPEN_SYMBOL1718;
    pANTLR3_COMMON_TOKEN    TABLES_SYMBOL1719;
    pANTLR3_COMMON_TOKEN    PLUGIN_SYMBOL1722;
    pANTLR3_COMMON_TOKEN    PLUGINS_SYMBOL1723;
    pANTLR3_COMMON_TOKEN    ENGINE_SYMBOL1724;
    pANTLR3_COMMON_TOKEN    set1726;
    pANTLR3_COMMON_TOKEN    FULL_SYMBOL1727;
    pANTLR3_COMMON_TOKEN    COLUMNS_SYMBOL1728;
    pANTLR3_COMMON_TOKEN    set1729;
    pANTLR3_COMMON_TOKEN    set1733;
    pANTLR3_COMMON_TOKEN    LOGS_SYMBOL1734;
    pANTLR3_COMMON_TOKEN    SLAVE_SYMBOL1735;
    pANTLR3_COMMON_TOKEN    HOSTS_SYMBOL1736;
    pANTLR3_COMMON_TOKEN    STATUS_SYMBOL1737;
    pANTLR3_COMMON_TOKEN    set1740;
    pANTLR3_COMMON_TOKEN    EVENTS_SYMBOL1741;
    pANTLR3_COMMON_TOKEN    IN_SYMBOL1742;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL1744;
    pANTLR3_COMMON_TOKEN    set1748;
    pANTLR3_COMMON_TOKEN    STORAGE_SYMBOL1753;
    pANTLR3_COMMON_TOKEN    ENGINES_SYMBOL1754;
    pANTLR3_COMMON_TOKEN    PRIVILEGES_SYMBOL1755;
    pANTLR3_COMMON_TOKEN    COUNT_SYMBOL1756;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1757;
    pANTLR3_COMMON_TOKEN    MULT_OPERATOR1758;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1759;
    pANTLR3_COMMON_TOKEN    set1760;
    pANTLR3_COMMON_TOKEN    WARNINGS_SYMBOL1761;
    pANTLR3_COMMON_TOKEN    ERRORS_SYMBOL1763;
    pANTLR3_COMMON_TOKEN    PROFILES_SYMBOL1765;
    pANTLR3_COMMON_TOKEN    PROFILE_SYMBOL1766;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1768;
    pANTLR3_COMMON_TOKEN    FOR_SYMBOL1770;
    pANTLR3_COMMON_TOKEN    QUERY_SYMBOL1771;
    pANTLR3_COMMON_TOKEN    INT_NUMBER1772;
    pANTLR3_COMMON_TOKEN    set1775;
    pANTLR3_COMMON_TOKEN    FULL_SYMBOL1777;
    pANTLR3_COMMON_TOKEN    PROCESSLIST_SYMBOL1778;
    pANTLR3_COMMON_TOKEN    COLLATION_SYMBOL1781;
    pANTLR3_COMMON_TOKEN    CONTRIBUTORS_SYMBOL1783;
    pANTLR3_COMMON_TOKEN    GRANTS_SYMBOL1784;
    pANTLR3_COMMON_TOKEN    FOR_SYMBOL1785;
    pANTLR3_COMMON_TOKEN    MASTER_SYMBOL1787;
    pANTLR3_COMMON_TOKEN    STATUS_SYMBOL1788;
    pANTLR3_COMMON_TOKEN    CREATE_SYMBOL1789;
    pANTLR3_COMMON_TOKEN    DATABASE_SYMBOL1790;
    pANTLR3_COMMON_TOKEN    EVENT_SYMBOL1793;
    pANTLR3_COMMON_TOKEN    FUNCTION_SYMBOL1795;
    pANTLR3_COMMON_TOKEN    PROCEDURE_SYMBOL1797;
    pANTLR3_COMMON_TOKEN    TABLE_SYMBOL1799;
    pANTLR3_COMMON_TOKEN    TRIGGER_SYMBOL1801;
    pANTLR3_COMMON_TOKEN    VIEW_SYMBOL1803;
    pANTLR3_COMMON_TOKEN    USER_SYMBOL1805;
    pANTLR3_COMMON_TOKEN    PROCEDURE_SYMBOL1807;
    pANTLR3_COMMON_TOKEN    STATUS_SYMBOL1808;
    pANTLR3_COMMON_TOKEN    FUNCTION_SYMBOL1810;
    pANTLR3_COMMON_TOKEN    STATUS_SYMBOL1811;
    pANTLR3_COMMON_TOKEN    PROCEDURE_SYMBOL1813;
    pANTLR3_COMMON_TOKEN    CODE_SYMBOL1814;
    pANTLR3_COMMON_TOKEN    FUNCTION_SYMBOL1816;
    pANTLR3_COMMON_TOKEN    CODE_SYMBOL1817;
    pANTLR3_COMMON_TOKEN    INNODB_SYMBOL1819;
    pANTLR3_COMMON_TOKEN    STATUS_SYMBOL1820;
    MySQLParser_like_or_where_return like_or_where1702;
    #undef	RETURN_TYPE_like_or_where1702
    #define	RETURN_TYPE_like_or_where1702 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_db1712;
    #undef	RETURN_TYPE_in_db1712
    #define	RETURN_TYPE_in_db1712 MySQLParser_in_db_return

    MySQLParser_like_or_where_return like_or_where1713;
    #undef	RETURN_TYPE_like_or_where1713
    #define	RETURN_TYPE_like_or_where1713 MySQLParser_like_or_where_return

    MySQLParser_in_db_return in_db1716;
    #undef	RETURN_TYPE_in_db1716
    #define	RETURN_TYPE_in_db1716 MySQLParser_in_db_return

    MySQLParser_like_or_where_return like_or_where1717;
    #undef	RETURN_TYPE_like_or_where1717
    #define	RETURN_TYPE_like_or_where1717 MySQLParser_like_or_where_return

    MySQLParser_in_db_return in_db1720;
    #undef	RETURN_TYPE_in_db1720
    #define	RETURN_TYPE_in_db1720 MySQLParser_in_db_return

    MySQLParser_like_or_where_return like_or_where1721;
    #undef	RETURN_TYPE_like_or_where1721
    #define	RETURN_TYPE_like_or_where1721 MySQLParser_like_or_where_return

    MySQLParser_engine_ref_return engine_ref1725;
    #undef	RETURN_TYPE_engine_ref1725
    #define	RETURN_TYPE_engine_ref1725 MySQLParser_engine_ref_return

    MySQLParser_table_ref_return table_ref1730;
    #undef	RETURN_TYPE_table_ref1730
    #define	RETURN_TYPE_table_ref1730 MySQLParser_table_ref_return

    MySQLParser_in_db_return in_db1731;
    #undef	RETURN_TYPE_in_db1731
    #define	RETURN_TYPE_in_db1731 MySQLParser_in_db_return

    MySQLParser_like_or_where_return like_or_where1732;
    #undef	RETURN_TYPE_like_or_where1732
    #define	RETURN_TYPE_like_or_where1732 MySQLParser_like_or_where_return

    MySQLParser_non_blocking_return non_blocking1738;
    #undef	RETURN_TYPE_non_blocking1738
    #define	RETURN_TYPE_non_blocking1738 MySQLParser_non_blocking_return

    MySQLParser_channel_return channel1739;
    #undef	RETURN_TYPE_channel1739
    #define	RETURN_TYPE_channel1739 MySQLParser_channel_return

    MySQLParser_text_string_return text_string1743;
    #undef	RETURN_TYPE_text_string1743
    #define	RETURN_TYPE_text_string1743 MySQLParser_text_string_return

    MySQLParser_ulonglong_number_return ulonglong_number1745;
    #undef	RETURN_TYPE_ulonglong_number1745
    #define	RETURN_TYPE_ulonglong_number1745 MySQLParser_ulonglong_number_return

    MySQLParser_limit_clause_return limit_clause1746;
    #undef	RETURN_TYPE_limit_clause1746
    #define	RETURN_TYPE_limit_clause1746 MySQLParser_limit_clause_return

    MySQLParser_channel_return channel1747;
    #undef	RETURN_TYPE_channel1747
    #define	RETURN_TYPE_channel1747 MySQLParser_channel_return

    MySQLParser_from_or_in_return from_or_in1749;
    #undef	RETURN_TYPE_from_or_in1749
    #define	RETURN_TYPE_from_or_in1749 MySQLParser_from_or_in_return

    MySQLParser_table_ref_return table_ref1750;
    #undef	RETURN_TYPE_table_ref1750
    #define	RETURN_TYPE_table_ref1750 MySQLParser_table_ref_return

    MySQLParser_in_db_return in_db1751;
    #undef	RETURN_TYPE_in_db1751
    #define	RETURN_TYPE_in_db1751 MySQLParser_in_db_return

    MySQLParser_where_clause_return where_clause1752;
    #undef	RETURN_TYPE_where_clause1752
    #define	RETURN_TYPE_where_clause1752 MySQLParser_where_clause_return

    MySQLParser_limit_clause_return limit_clause1762;
    #undef	RETURN_TYPE_limit_clause1762
    #define	RETURN_TYPE_limit_clause1762 MySQLParser_limit_clause_return

    MySQLParser_limit_clause_return limit_clause1764;
    #undef	RETURN_TYPE_limit_clause1764
    #define	RETURN_TYPE_limit_clause1764 MySQLParser_limit_clause_return

    MySQLParser_profile_type_return profile_type1767;
    #undef	RETURN_TYPE_profile_type1767
    #define	RETURN_TYPE_profile_type1767 MySQLParser_profile_type_return

    MySQLParser_profile_type_return profile_type1769;
    #undef	RETURN_TYPE_profile_type1769
    #define	RETURN_TYPE_profile_type1769 MySQLParser_profile_type_return

    MySQLParser_limit_clause_return limit_clause1773;
    #undef	RETURN_TYPE_limit_clause1773
    #define	RETURN_TYPE_limit_clause1773 MySQLParser_limit_clause_return

    MySQLParser_option_type_return option_type1774;
    #undef	RETURN_TYPE_option_type1774
    #define	RETURN_TYPE_option_type1774 MySQLParser_option_type_return

    MySQLParser_like_or_where_return like_or_where1776;
    #undef	RETURN_TYPE_like_or_where1776
    #define	RETURN_TYPE_like_or_where1776 MySQLParser_like_or_where_return

    MySQLParser_charset_return charset1779;
    #undef	RETURN_TYPE_charset1779
    #define	RETURN_TYPE_charset1779 MySQLParser_charset_return

    MySQLParser_like_or_where_return like_or_where1780;
    #undef	RETURN_TYPE_like_or_where1780
    #define	RETURN_TYPE_like_or_where1780 MySQLParser_like_or_where_return

    MySQLParser_like_or_where_return like_or_where1782;
    #undef	RETURN_TYPE_like_or_where1782
    #define	RETURN_TYPE_like_or_where1782 MySQLParser_like_or_where_return

    MySQLParser_user_return user1786;
    #undef	RETURN_TYPE_user1786
    #define	RETURN_TYPE_user1786 MySQLParser_user_return

    MySQLParser_if_not_exists_return if_not_exists1791;
    #undef	RETURN_TYPE_if_not_exists1791
    #define	RETURN_TYPE_if_not_exists1791 MySQLParser_if_not_exists_return

    MySQLParser_schema_ref_return schema_ref1792;
    #undef	RETURN_TYPE_schema_ref1792
    #define	RETURN_TYPE_schema_ref1792 MySQLParser_schema_ref_return

    MySQLParser_event_ref_return event_ref1794;
    #undef	RETURN_TYPE_event_ref1794
    #define	RETURN_TYPE_event_ref1794 MySQLParser_event_ref_return

    MySQLParser_function_ref_return function_ref1796;
    #undef	RETURN_TYPE_function_ref1796
    #define	RETURN_TYPE_function_ref1796 MySQLParser_function_ref_return

    MySQLParser_procedure_ref_return procedure_ref1798;
    #undef	RETURN_TYPE_procedure_ref1798
    #define	RETURN_TYPE_procedure_ref1798 MySQLParser_procedure_ref_return

    MySQLParser_table_ref_return table_ref1800;
    #undef	RETURN_TYPE_table_ref1800
    #define	RETURN_TYPE_table_ref1800 MySQLParser_table_ref_return

    MySQLParser_trigger_ref_return trigger_ref1802;
    #undef	RETURN_TYPE_trigger_ref1802
    #define	RETURN_TYPE_trigger_ref1802 MySQLParser_trigger_ref_return

    MySQLParser_view_ref_return view_ref1804;
    #undef	RETURN_TYPE_view_ref1804
    #define	RETURN_TYPE_view_ref1804 MySQLParser_view_ref_return

    MySQLParser_user_return user1806;
    #undef	RETURN_TYPE_user1806
    #define	RETURN_TYPE_user1806 MySQLParser_user_return

    MySQLParser_like_or_where_return like_or_where1809;
    #undef	RETURN_TYPE_like_or_where1809
    #define	RETURN_TYPE_like_or_where1809 MySQLParser_like_or_where_return

    MySQLParser_like_or_where_return like_or_where1812;
    #undef	RETURN_TYPE_like_or_where1812
    #define	RETURN_TYPE_like_or_where1812 MySQLParser_like_or_where_return

    MySQLParser_procedure_ref_return procedure_ref1815;
    #undef	RETURN_TYPE_procedure_ref1815
    #define	RETURN_TYPE_procedure_ref1815 MySQLParser_procedure_ref_return

    MySQLParser_function_ref_return function_ref1818;
    #undef	RETURN_TYPE_function_ref1818
    #define	RETURN_TYPE_function_ref1818 MySQLParser_function_ref_return

    pANTLR3_BASE_TREE SHOW_SYMBOL1699_tree;
    pANTLR3_BASE_TREE AUTHORS_SYMBOL1700_tree;
    pANTLR3_BASE_TREE DATABASES_SYMBOL1701_tree;
    pANTLR3_BASE_TREE FULL_SYMBOL1703_tree;
    pANTLR3_BASE_TREE TABLES_SYMBOL1704_tree;
    pANTLR3_BASE_TREE FULL_SYMBOL1707_tree;
    pANTLR3_BASE_TREE TRIGGERS_SYMBOL1708_tree;
    pANTLR3_BASE_TREE EVENTS_SYMBOL1711_tree;
    pANTLR3_BASE_TREE TABLE_SYMBOL1714_tree;
    pANTLR3_BASE_TREE STATUS_SYMBOL1715_tree;
    pANTLR3_BASE_TREE OPEN_SYMBOL1718_tree;
    pANTLR3_BASE_TREE TABLES_SYMBOL1719_tree;
    pANTLR3_BASE_TREE PLUGIN_SYMBOL1722_tree;
    pANTLR3_BASE_TREE PLUGINS_SYMBOL1723_tree;
    pANTLR3_BASE_TREE ENGINE_SYMBOL1724_tree;
    pANTLR3_BASE_TREE set1726_tree;
    pANTLR3_BASE_TREE FULL_SYMBOL1727_tree;
    pANTLR3_BASE_TREE COLUMNS_SYMBOL1728_tree;
    pANTLR3_BASE_TREE set1729_tree;
    pANTLR3_BASE_TREE set1733_tree;
    pANTLR3_BASE_TREE LOGS_SYMBOL1734_tree;
    pANTLR3_BASE_TREE SLAVE_SYMBOL1735_tree;
    pANTLR3_BASE_TREE HOSTS_SYMBOL1736_tree;
    pANTLR3_BASE_TREE STATUS_SYMBOL1737_tree;
    pANTLR3_BASE_TREE set1740_tree;
    pANTLR3_BASE_TREE EVENTS_SYMBOL1741_tree;
    pANTLR3_BASE_TREE IN_SYMBOL1742_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL1744_tree;
    pANTLR3_BASE_TREE set1748_tree;
    pANTLR3_BASE_TREE STORAGE_SYMBOL1753_tree;
    pANTLR3_BASE_TREE ENGINES_SYMBOL1754_tree;
    pANTLR3_BASE_TREE PRIVILEGES_SYMBOL1755_tree;
    pANTLR3_BASE_TREE COUNT_SYMBOL1756_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1757_tree;
    pANTLR3_BASE_TREE MULT_OPERATOR1758_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1759_tree;
    pANTLR3_BASE_TREE set1760_tree;
    pANTLR3_BASE_TREE WARNINGS_SYMBOL1761_tree;
    pANTLR3_BASE_TREE ERRORS_SYMBOL1763_tree;
    pANTLR3_BASE_TREE PROFILES_SYMBOL1765_tree;
    pANTLR3_BASE_TREE PROFILE_SYMBOL1766_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1768_tree;
    pANTLR3_BASE_TREE FOR_SYMBOL1770_tree;
    pANTLR3_BASE_TREE QUERY_SYMBOL1771_tree;
    pANTLR3_BASE_TREE INT_NUMBER1772_tree;
    pANTLR3_BASE_TREE set1775_tree;
    pANTLR3_BASE_TREE FULL_SYMBOL1777_tree;
    pANTLR3_BASE_TREE PROCESSLIST_SYMBOL1778_tree;
    pANTLR3_BASE_TREE COLLATION_SYMBOL1781_tree;
    pANTLR3_BASE_TREE CONTRIBUTORS_SYMBOL1783_tree;
    pANTLR3_BASE_TREE GRANTS_SYMBOL1784_tree;
    pANTLR3_BASE_TREE FOR_SYMBOL1785_tree;
    pANTLR3_BASE_TREE MASTER_SYMBOL1787_tree;
    pANTLR3_BASE_TREE STATUS_SYMBOL1788_tree;
    pANTLR3_BASE_TREE CREATE_SYMBOL1789_tree;
    pANTLR3_BASE_TREE DATABASE_SYMBOL1790_tree;
    pANTLR3_BASE_TREE EVENT_SYMBOL1793_tree;
    pANTLR3_BASE_TREE FUNCTION_SYMBOL1795_tree;
    pANTLR3_BASE_TREE PROCEDURE_SYMBOL1797_tree;
    pANTLR3_BASE_TREE TABLE_SYMBOL1799_tree;
    pANTLR3_BASE_TREE TRIGGER_SYMBOL1801_tree;
    pANTLR3_BASE_TREE VIEW_SYMBOL1803_tree;
    pANTLR3_BASE_TREE USER_SYMBOL1805_tree;
    pANTLR3_BASE_TREE PROCEDURE_SYMBOL1807_tree;
    pANTLR3_BASE_TREE STATUS_SYMBOL1808_tree;
    pANTLR3_BASE_TREE FUNCTION_SYMBOL1810_tree;
    pANTLR3_BASE_TREE STATUS_SYMBOL1811_tree;
    pANTLR3_BASE_TREE PROCEDURE_SYMBOL1813_tree;
    pANTLR3_BASE_TREE CODE_SYMBOL1814_tree;
    pANTLR3_BASE_TREE FUNCTION_SYMBOL1816_tree;
    pANTLR3_BASE_TREE CODE_SYMBOL1817_tree;
    pANTLR3_BASE_TREE INNODB_SYMBOL1819_tree;
    pANTLR3_BASE_TREE STATUS_SYMBOL1820_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SHOW_SYMBOL1699       = NULL;
    AUTHORS_SYMBOL1700       = NULL;
    DATABASES_SYMBOL1701       = NULL;
    FULL_SYMBOL1703       = NULL;
    TABLES_SYMBOL1704       = NULL;
    FULL_SYMBOL1707       = NULL;
    TRIGGERS_SYMBOL1708       = NULL;
    EVENTS_SYMBOL1711       = NULL;
    TABLE_SYMBOL1714       = NULL;
    STATUS_SYMBOL1715       = NULL;
    OPEN_SYMBOL1718       = NULL;
    TABLES_SYMBOL1719       = NULL;
    PLUGIN_SYMBOL1722       = NULL;
    PLUGINS_SYMBOL1723       = NULL;
    ENGINE_SYMBOL1724       = NULL;
    set1726       = NULL;
    FULL_SYMBOL1727       = NULL;
    COLUMNS_SYMBOL1728       = NULL;
    set1729       = NULL;
    set1733       = NULL;
    LOGS_SYMBOL1734       = NULL;
    SLAVE_SYMBOL1735       = NULL;
    HOSTS_SYMBOL1736       = NULL;
    STATUS_SYMBOL1737       = NULL;
    set1740       = NULL;
    EVENTS_SYMBOL1741       = NULL;
    IN_SYMBOL1742       = NULL;
    FROM_SYMBOL1744       = NULL;
    set1748       = NULL;
    STORAGE_SYMBOL1753       = NULL;
    ENGINES_SYMBOL1754       = NULL;
    PRIVILEGES_SYMBOL1755       = NULL;
    COUNT_SYMBOL1756       = NULL;
    OPEN_PAR_SYMBOL1757       = NULL;
    MULT_OPERATOR1758       = NULL;
    CLOSE_PAR_SYMBOL1759       = NULL;
    set1760       = NULL;
    WARNINGS_SYMBOL1761       = NULL;
    ERRORS_SYMBOL1763       = NULL;
    PROFILES_SYMBOL1765       = NULL;
    PROFILE_SYMBOL1766       = NULL;
    COMMA_SYMBOL1768       = NULL;
    FOR_SYMBOL1770       = NULL;
    QUERY_SYMBOL1771       = NULL;
    INT_NUMBER1772       = NULL;
    set1775       = NULL;
    FULL_SYMBOL1777       = NULL;
    PROCESSLIST_SYMBOL1778       = NULL;
    COLLATION_SYMBOL1781       = NULL;
    CONTRIBUTORS_SYMBOL1783       = NULL;
    GRANTS_SYMBOL1784       = NULL;
    FOR_SYMBOL1785       = NULL;
    MASTER_SYMBOL1787       = NULL;
    STATUS_SYMBOL1788       = NULL;
    CREATE_SYMBOL1789       = NULL;
    DATABASE_SYMBOL1790       = NULL;
    EVENT_SYMBOL1793       = NULL;
    FUNCTION_SYMBOL1795       = NULL;
    PROCEDURE_SYMBOL1797       = NULL;
    TABLE_SYMBOL1799       = NULL;
    TRIGGER_SYMBOL1801       = NULL;
    VIEW_SYMBOL1803       = NULL;
    USER_SYMBOL1805       = NULL;
    PROCEDURE_SYMBOL1807       = NULL;
    STATUS_SYMBOL1808       = NULL;
    FUNCTION_SYMBOL1810       = NULL;
    STATUS_SYMBOL1811       = NULL;
    PROCEDURE_SYMBOL1813       = NULL;
    CODE_SYMBOL1814       = NULL;
    FUNCTION_SYMBOL1816       = NULL;
    CODE_SYMBOL1817       = NULL;
    INNODB_SYMBOL1819       = NULL;
    STATUS_SYMBOL1820       = NULL;
    like_or_where1702.tree = NULL;

    in_db1705.tree = NULL;

    like_or_where1706.tree = NULL;

    in_db1709.tree = NULL;

    like_or_where1710.tree = NULL;

    in_db1712.tree = NULL;

    like_or_where1713.tree = NULL;

    in_db1716.tree = NULL;

    like_or_where1717.tree = NULL;

    in_db1720.tree = NULL;

    like_or_where1721.tree = NULL;

    engine_ref1725.tree = NULL;

    table_ref1730.tree = NULL;

    in_db1731.tree = NULL;

    like_or_where1732.tree = NULL;

    non_blocking1738.tree = NULL;

    channel1739.tree = NULL;

    text_string1743.tree = NULL;

    ulonglong_number1745.tree = NULL;

    limit_clause1746.tree = NULL;

    channel1747.tree = NULL;

    from_or_in1749.tree = NULL;

    table_ref1750.tree = NULL;

    in_db1751.tree = NULL;

    where_clause1752.tree = NULL;

    limit_clause1762.tree = NULL;

    limit_clause1764.tree = NULL;

    profile_type1767.tree = NULL;

    profile_type1769.tree = NULL;

    limit_clause1773.tree = NULL;

    option_type1774.tree = NULL;

    like_or_where1776.tree = NULL;

    charset1779.tree = NULL;

    like_or_where1780.tree = NULL;

    like_or_where1782.tree = NULL;

    user1786.tree = NULL;

    if_not_exists1791.tree = NULL;

    schema_ref1792.tree = NULL;

    event_ref1794.tree = NULL;

    function_ref1796.tree = NULL;

    procedure_ref1798.tree = NULL;

    table_ref1800.tree = NULL;

    trigger_ref1802.tree = NULL;

    view_ref1804.tree = NULL;

    user1806.tree = NULL;

    like_or_where1809.tree = NULL;

    like_or_where1812.tree = NULL;

    procedure_ref1815.tree = NULL;

    function_ref1818.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SHOW_SYMBOL1699_tree   = NULL;
    AUTHORS_SYMBOL1700_tree   = NULL;
    DATABASES_SYMBOL1701_tree   = NULL;
    FULL_SYMBOL1703_tree   = NULL;
    TABLES_SYMBOL1704_tree   = NULL;
    FULL_SYMBOL1707_tree   = NULL;
    TRIGGERS_SYMBOL1708_tree   = NULL;
    EVENTS_SYMBOL1711_tree   = NULL;
    TABLE_SYMBOL1714_tree   = NULL;
    STATUS_SYMBOL1715_tree   = NULL;
    OPEN_SYMBOL1718_tree   = NULL;
    TABLES_SYMBOL1719_tree   = NULL;
    PLUGIN_SYMBOL1722_tree   = NULL;
    PLUGINS_SYMBOL1723_tree   = NULL;
    ENGINE_SYMBOL1724_tree   = NULL;
    set1726_tree   = NULL;
    FULL_SYMBOL1727_tree   = NULL;
    COLUMNS_SYMBOL1728_tree   = NULL;
    set1729_tree   = NULL;
    set1733_tree   = NULL;
    LOGS_SYMBOL1734_tree   = NULL;
    SLAVE_SYMBOL1735_tree   = NULL;
    HOSTS_SYMBOL1736_tree   = NULL;
    STATUS_SYMBOL1737_tree   = NULL;
    set1740_tree   = NULL;
    EVENTS_SYMBOL1741_tree   = NULL;
    IN_SYMBOL1742_tree   = NULL;
    FROM_SYMBOL1744_tree   = NULL;
    set1748_tree   = NULL;
    STORAGE_SYMBOL1753_tree   = NULL;
    ENGINES_SYMBOL1754_tree   = NULL;
    PRIVILEGES_SYMBOL1755_tree   = NULL;
    COUNT_SYMBOL1756_tree   = NULL;
    OPEN_PAR_SYMBOL1757_tree   = NULL;
    MULT_OPERATOR1758_tree   = NULL;
    CLOSE_PAR_SYMBOL1759_tree   = NULL;
    set1760_tree   = NULL;
    WARNINGS_SYMBOL1761_tree   = NULL;
    ERRORS_SYMBOL1763_tree   = NULL;
    PROFILES_SYMBOL1765_tree   = NULL;
    PROFILE_SYMBOL1766_tree   = NULL;
    COMMA_SYMBOL1768_tree   = NULL;
    FOR_SYMBOL1770_tree   = NULL;
    QUERY_SYMBOL1771_tree   = NULL;
    INT_NUMBER1772_tree   = NULL;
    set1775_tree   = NULL;
    FULL_SYMBOL1777_tree   = NULL;
    PROCESSLIST_SYMBOL1778_tree   = NULL;
    COLLATION_SYMBOL1781_tree   = NULL;
    CONTRIBUTORS_SYMBOL1783_tree   = NULL;
    GRANTS_SYMBOL1784_tree   = NULL;
    FOR_SYMBOL1785_tree   = NULL;
    MASTER_SYMBOL1787_tree   = NULL;
    STATUS_SYMBOL1788_tree   = NULL;
    CREATE_SYMBOL1789_tree   = NULL;
    DATABASE_SYMBOL1790_tree   = NULL;
    EVENT_SYMBOL1793_tree   = NULL;
    FUNCTION_SYMBOL1795_tree   = NULL;
    PROCEDURE_SYMBOL1797_tree   = NULL;
    TABLE_SYMBOL1799_tree   = NULL;
    TRIGGER_SYMBOL1801_tree   = NULL;
    VIEW_SYMBOL1803_tree   = NULL;
    USER_SYMBOL1805_tree   = NULL;
    PROCEDURE_SYMBOL1807_tree   = NULL;
    STATUS_SYMBOL1808_tree   = NULL;
    FUNCTION_SYMBOL1810_tree   = NULL;
    STATUS_SYMBOL1811_tree   = NULL;
    PROCEDURE_SYMBOL1813_tree   = NULL;
    CODE_SYMBOL1814_tree   = NULL;
    FUNCTION_SYMBOL1816_tree   = NULL;
    CODE_SYMBOL1817_tree   = NULL;
    INNODB_SYMBOL1819_tree   = NULL;
    STATUS_SYMBOL1820_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1961: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:1962: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_SYMBOL1699 = (pANTLR3_COMMON_TOKEN) MATCHT(SHOW_SYMBOL, &FOLLOW_SHOW_SYMBOL_in_show_statement9045);
            if  (HASEXCEPTION())
            {
                goto ruleshow_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            SHOW_SYMBOL1699_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SHOW_SYMBOL1699))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, SHOW_SYMBOL1699_tree, root_0));
            }

            // MySQL.g:1963: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:1964: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_SYMBOL1700 = (pANTLR3_COMMON_TOKEN) MATCHT(AUTHORS_SYMBOL, &FOLLOW_AUTHORS_SYMBOL_in_show_statement9055);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        AUTHORS_SYMBOL1700_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AUTHORS_SYMBOL1700));
            	        ADAPTOR->addChild(ADAPTOR, root_0, AUTHORS_SYMBOL1700_tree);
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1965:5: DATABASES_SYMBOL ( like_or_where )?
            	    {
            	        DATABASES_SYMBOL1701 = (pANTLR3_COMMON_TOKEN) MATCHT(DATABASES_SYMBOL, &FOLLOW_DATABASES_SYMBOL_in_show_statement9061);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DATABASES_SYMBOL1701_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATABASES_SYMBOL1701));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DATABASES_SYMBOL1701_tree);
            	        }

            	        // MySQL.g:1965: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:1965:22: like_or_where
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_like_or_where_in_show_statement9063);
            	        	        like_or_where1702=like_or_where(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, like_or_where1702.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:1966:5: ( FULL_SYMBOL )? TABLES_SYMBOL ( in_db )? ( like_or_where )?
            	    {
            	        // MySQL.g:1966:5: ( FULL_SYMBOL )?
            	        {
            	            int alt528=2;
            	            switch ( LA(1) )
            	            {
            	                case FULL_SYMBOL:
            	                	{
            	                		alt528=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt528)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1966:5: FULL_SYMBOL
            	        	    {
            	        	        FULL_SYMBOL1703 = (pANTLR3_COMMON_TOKEN) MATCHT(FULL_SYMBOL, &FOLLOW_FULL_SYMBOL_in_show_statement9070);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        FULL_SYMBOL1703_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FULL_SYMBOL1703));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, FULL_SYMBOL1703_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        TABLES_SYMBOL1704 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLES_SYMBOL, &FOLLOW_TABLES_SYMBOL_in_show_statement9073);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        TABLES_SYMBOL1704_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLES_SYMBOL1704));
            	        ADAPTOR->addChild(ADAPTOR, root_0, TABLES_SYMBOL1704_tree);
            	        }

            	        // MySQL.g:1966:32: ( in_db )?
            	        {
            	            int alt529=2;
            	            switch ( LA(1) )
            	            {
            	                case FROM_SYMBOL:
            	                case IN_SYMBOL:
            	                	{
            	                		alt529=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt529)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1966:32: in_db
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_in_db_in_show_statement9075);
            	        	        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:1966: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:1966:39: like_or_where
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_like_or_where_in_show_statement9078);
            	        	        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 4:
            	    // MySQL.g:1967:5: ( FULL_SYMBOL )? TRIGGERS_SYMBOL ( in_db )? ( like_or_where )?
            	    {
            	        // MySQL.g:1967:5: ( FULL_SYMBOL )?
            	        {
            	            int alt531=2;
            	            switch ( LA(1) )
            	            {
            	                case FULL_SYMBOL:
            	                	{
            	                		alt531=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt531)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1967:5: FULL_SYMBOL
            	        	    {
            	        	        FULL_SYMBOL1707 = (pANTLR3_COMMON_TOKEN) MATCHT(FULL_SYMBOL, &FOLLOW_FULL_SYMBOL_in_show_statement9085);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        FULL_SYMBOL1707_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FULL_SYMBOL1707));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, FULL_SYMBOL1707_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        TRIGGERS_SYMBOL1708 = (pANTLR3_COMMON_TOKEN) MATCHT(TRIGGERS_SYMBOL, &FOLLOW_TRIGGERS_SYMBOL_in_show_statement9088);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        TRIGGERS_SYMBOL1708_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TRIGGERS_SYMBOL1708));
            	        ADAPTOR->addChild(ADAPTOR, root_0, TRIGGERS_SYMBOL1708_tree);
            	        }

            	        // MySQL.g:1967:34: ( in_db )?
            	        {
            	            int alt532=2;
            	            switch ( LA(1) )
            	            {
            	                case FROM_SYMBOL:
            	                case IN_SYMBOL:
            	                	{
            	                		alt532=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt532)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1967:34: in_db
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_in_db_in_show_statement9090);
            	        	        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:1967: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:1967:41: like_or_where
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_like_or_where_in_show_statement9093);
            	        	        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 5:
            	    // MySQL.g:1968:5: EVENTS_SYMBOL ( in_db )? ( like_or_where )?
            	    {
            	        EVENTS_SYMBOL1711 = (pANTLR3_COMMON_TOKEN) MATCHT(EVENTS_SYMBOL, &FOLLOW_EVENTS_SYMBOL_in_show_statement9100);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        EVENTS_SYMBOL1711_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EVENTS_SYMBOL1711));
            	        ADAPTOR->addChild(ADAPTOR, root_0, EVENTS_SYMBOL1711_tree);
            	        }

            	        // MySQL.g:1968:19: ( in_db )?
            	        {
            	            int alt534=2;
            	            switch ( LA(1) )
            	            {
            	                case FROM_SYMBOL:
            	                case IN_SYMBOL:
            	                	{
            	                		alt534=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt534)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1968:19: in_db
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_in_db_in_show_statement9102);
            	        	        in_db1712=in_db(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, in_db1712.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:1968: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:1968:26: like_or_where
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_like_or_where_in_show_statement9105);
            	        	        like_or_where1713=like_or_where(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, like_or_where1713.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 6:
            	    // MySQL.g:1969:5: TABLE_SYMBOL STATUS_SYMBOL ( in_db )? ( like_or_where )?
            	    {
            	        TABLE_SYMBOL1714 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLE_SYMBOL, &FOLLOW_TABLE_SYMBOL_in_show_statement9112);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        TABLE_SYMBOL1714_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLE_SYMBOL1714));
            	        ADAPTOR->addChild(ADAPTOR, root_0, TABLE_SYMBOL1714_tree);
            	        }

            	        STATUS_SYMBOL1715 = (pANTLR3_COMMON_TOKEN) MATCHT(STATUS_SYMBOL, &FOLLOW_STATUS_SYMBOL_in_show_statement9114);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        STATUS_SYMBOL1715_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STATUS_SYMBOL1715));
            	        ADAPTOR->addChild(ADAPTOR, root_0, STATUS_SYMBOL1715_tree);
            	        }

            	        // MySQL.g:1969:32: ( in_db )?
            	        {
            	            int alt536=2;
            	            switch ( LA(1) )
            	            {
            	                case FROM_SYMBOL:
            	                case IN_SYMBOL:
            	                	{
            	                		alt536=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt536)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1969:32: in_db
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_in_db_in_show_statement9116);
            	        	        in_db1716=in_db(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, in_db1716.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:1969: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:1969:39: like_or_where
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_like_or_where_in_show_statement9119);
            	        	        like_or_where1717=like_or_where(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, like_or_where1717.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 7:
            	    // MySQL.g:1970:5: OPEN_SYMBOL TABLES_SYMBOL ( in_db )? ( like_or_where )?
            	    {
            	        OPEN_SYMBOL1718 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_SYMBOL, &FOLLOW_OPEN_SYMBOL_in_show_statement9126);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OPEN_SYMBOL1718_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_SYMBOL1718));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_SYMBOL1718_tree);
            	        }

            	        TABLES_SYMBOL1719 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLES_SYMBOL, &FOLLOW_TABLES_SYMBOL_in_show_statement9128);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        TABLES_SYMBOL1719_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLES_SYMBOL1719));
            	        ADAPTOR->addChild(ADAPTOR, root_0, TABLES_SYMBOL1719_tree);
            	        }

            	        // MySQL.g:1970:31: ( in_db )?
            	        {
            	            int alt538=2;
            	            switch ( LA(1) )
            	            {
            	                case FROM_SYMBOL:
            	                case IN_SYMBOL:
            	                	{
            	                		alt538=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt538)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1970:31: in_db
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_in_db_in_show_statement9130);
            	        	        in_db1720=in_db(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, in_db1720.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:1970: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:1970:38: like_or_where
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_like_or_where_in_show_statement9133);
            	        	        like_or_where1721=like_or_where(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, like_or_where1721.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 8:
            	    // MySQL.g:1971: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_SYMBOL1722 = (pANTLR3_COMMON_TOKEN) MATCHT(PLUGIN_SYMBOL, &FOLLOW_PLUGIN_SYMBOL_in_show_statement9142);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        PLUGIN_SYMBOL1722_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PLUGIN_SYMBOL1722));
            	        ADAPTOR->addChild(ADAPTOR, root_0, PLUGIN_SYMBOL1722_tree);
            	        }

            	    }
            	    break;
            	case 9:
            	    // MySQL.g:1972: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_SYMBOL1723 = (pANTLR3_COMMON_TOKEN) MATCHT(PLUGINS_SYMBOL, &FOLLOW_PLUGINS_SYMBOL_in_show_statement9151);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        PLUGINS_SYMBOL1723_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PLUGINS_SYMBOL1723));
            	        ADAPTOR->addChild(ADAPTOR, root_0, PLUGINS_SYMBOL1723_tree);
            	        }

            	    }
            	    break;
            	case 10:
            	    // MySQL.g:1973:5: ENGINE_SYMBOL engine_ref ( STATUS_SYMBOL | MUTEX_SYMBOL )
            	    {
            	        ENGINE_SYMBOL1724 = (pANTLR3_COMMON_TOKEN) MATCHT(ENGINE_SYMBOL, &FOLLOW_ENGINE_SYMBOL_in_show_statement9157);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ENGINE_SYMBOL1724_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ENGINE_SYMBOL1724));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ENGINE_SYMBOL1724_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_engine_ref_in_show_statement9159);
            	        engine_ref1725=engine_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, engine_ref1725.tree);

            	        set1726=(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, 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;
            	        }


            	    }
            	    break;
            	case 11:
            	    // MySQL.g:1974:5: ( FULL_SYMBOL )? COLUMNS_SYMBOL ( FROM_SYMBOL | IN_SYMBOL ) table_ref ( in_db )? ( like_or_where )?
            	    {
            	        // MySQL.g:1974:5: ( FULL_SYMBOL )?
            	        {
            	            int alt540=2;
            	            switch ( LA(1) )
            	            {
            	                case FULL_SYMBOL:
            	                	{
            	                		alt540=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt540)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1974:5: FULL_SYMBOL
            	        	    {
            	        	        FULL_SYMBOL1727 = (pANTLR3_COMMON_TOKEN) MATCHT(FULL_SYMBOL, &FOLLOW_FULL_SYMBOL_in_show_statement9173);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        FULL_SYMBOL1727_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FULL_SYMBOL1727));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, FULL_SYMBOL1727_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        COLUMNS_SYMBOL1728 = (pANTLR3_COMMON_TOKEN) MATCHT(COLUMNS_SYMBOL, &FOLLOW_COLUMNS_SYMBOL_in_show_statement9176);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COLUMNS_SYMBOL1728_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COLUMNS_SYMBOL1728));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COLUMNS_SYMBOL1728_tree);
            	        }

            	        set1729=(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, set1729))
            	            );
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

            	        }
            	        else
            	        {
            	            if (BACKTRACKING>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_statement9186);
            	        table_ref1730=table_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref1730.tree);

            	        // MySQL.g:1974:69: ( in_db )?
            	        {
            	            int alt541=2;
            	            switch ( LA(1) )
            	            {
            	                case FROM_SYMBOL:
            	                case IN_SYMBOL:
            	                	{
            	                		alt541=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt541)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1974:69: in_db
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_in_db_in_show_statement9188);
            	        	        in_db1731=in_db(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, in_db1731.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:1974: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:1974:76: like_or_where
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_like_or_where_in_show_statement9191);
            	        	        like_or_where1732=like_or_where(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, like_or_where1732.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 12:
            	    // MySQL.g:1975:5: ( BINARY_SYMBOL | MASTER_SYMBOL ) LOGS_SYMBOL
            	    {
            	        set1733=(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, 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;
            	        }


            	        LOGS_SYMBOL1734 = (pANTLR3_COMMON_TOKEN) MATCHT(LOGS_SYMBOL, &FOLLOW_LOGS_SYMBOL_in_show_statement9206);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        LOGS_SYMBOL1734_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOGS_SYMBOL1734));
            	        ADAPTOR->addChild(ADAPTOR, root_0, LOGS_SYMBOL1734_tree);
            	        }

            	    }
            	    break;
            	case 13:
            	    // MySQL.g:1976:5: SLAVE_SYMBOL ( HOSTS_SYMBOL | STATUS_SYMBOL non_blocking ( channel )? )
            	    {
            	        SLAVE_SYMBOL1735 = (pANTLR3_COMMON_TOKEN) MATCHT(SLAVE_SYMBOL, &FOLLOW_SLAVE_SYMBOL_in_show_statement9212);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SLAVE_SYMBOL1735_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SLAVE_SYMBOL1735));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SLAVE_SYMBOL1735_tree);
            	        }

            	        // MySQL.g:1977: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:1978:5: HOSTS_SYMBOL
            	        	    {
            	        	        HOSTS_SYMBOL1736 = (pANTLR3_COMMON_TOKEN) MATCHT(HOSTS_SYMBOL, &FOLLOW_HOSTS_SYMBOL_in_show_statement9223);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        HOSTS_SYMBOL1736_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, HOSTS_SYMBOL1736));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, HOSTS_SYMBOL1736_tree);
            	        	        }

            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:1979:7: STATUS_SYMBOL non_blocking ( channel )?
            	        	    {
            	        	        STATUS_SYMBOL1737 = (pANTLR3_COMMON_TOKEN) MATCHT(STATUS_SYMBOL, &FOLLOW_STATUS_SYMBOL_in_show_statement9231);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        STATUS_SYMBOL1737_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STATUS_SYMBOL1737));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, STATUS_SYMBOL1737_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_non_blocking_in_show_statement9233);
            	        	        non_blocking1738=non_blocking(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, non_blocking1738.tree);

            	        	        // MySQL.g:1979: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:1979:34: channel
            	        	        	    {
            	        	        	        FOLLOWPUSH(FOLLOW_channel_in_show_statement9235);
            	        	        	        channel1739=channel(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto ruleshow_statementEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, channel1739.tree);

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 14:
            	    // MySQL.g:1981:5: ( BINLOG_SYMBOL | RELAYLOG_SYMBOL ) EVENTS_SYMBOL ( IN_SYMBOL text_string )? ( FROM_SYMBOL ulonglong_number )? ( limit_clause )? ( channel )?
            	    {
            	        set1740=(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, set1740))
            	            );
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

            	        }
            	        else
            	        {
            	            if (BACKTRACKING>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_SYMBOL1741 = (pANTLR3_COMMON_TOKEN) MATCHT(EVENTS_SYMBOL, &FOLLOW_EVENTS_SYMBOL_in_show_statement9255);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        EVENTS_SYMBOL1741_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EVENTS_SYMBOL1741));
            	        ADAPTOR->addChild(ADAPTOR, root_0, EVENTS_SYMBOL1741_tree);
            	        }

            	        // MySQL.g:1981:53: ( IN_SYMBOL text_string )?
            	        {
            	            int alt545=2;
            	            switch ( LA(1) )
            	            {
            	                case IN_SYMBOL:
            	                	{
            	                		alt545=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt545)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1981:54: IN_SYMBOL text_string
            	        	    {
            	        	        IN_SYMBOL1742 = (pANTLR3_COMMON_TOKEN) MATCHT(IN_SYMBOL, &FOLLOW_IN_SYMBOL_in_show_statement9258);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        IN_SYMBOL1742_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IN_SYMBOL1742));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, IN_SYMBOL1742_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_text_string_in_show_statement9260);
            	        	        text_string1743=text_string(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string1743.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:1981:78: ( FROM_SYMBOL ulonglong_number )?
            	        {
            	            int alt546=2;
            	            switch ( LA(1) )
            	            {
            	                case FROM_SYMBOL:
            	                	{
            	                		alt546=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt546)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1981:79: FROM_SYMBOL ulonglong_number
            	        	    {
            	        	        FROM_SYMBOL1744 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_show_statement9265);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        FROM_SYMBOL1744_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL1744));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL1744_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_ulonglong_number_in_show_statement9267);
            	        	        ulonglong_number1745=ulonglong_number(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulonglong_number1745.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:1981:110: ( limit_clause )?
            	        {
            	            int alt547=2;
            	            switch ( LA(1) )
            	            {
            	                case LIMIT_SYMBOL:
            	                	{
            	                		alt547=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt547)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1981:110: limit_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_limit_clause_in_show_statement9271);
            	        	        limit_clause1746=limit_clause(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, limit_clause1746.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:1981: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:1981:124: channel
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_channel_in_show_statement9274);
            	        	        channel1747=channel(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, channel1747.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 15:
            	    // MySQL.g:1982:5: ( INDEX_SYMBOL | INDEXES_SYMBOL | KEYS_SYMBOL ) from_or_in table_ref ( in_db )? ( where_clause )?
            	    {
            	        set1748=(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, set1748))
            	            );
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

            	        }
            	        else
            	        {
            	            if (BACKTRACKING>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_statement9293);
            	        from_or_in1749=from_or_in(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, from_or_in1749.tree);

            	        FOLLOWPUSH(FOLLOW_table_ref_in_show_statement9295);
            	        table_ref1750=table_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref1750.tree);

            	        // MySQL.g:1982:72: ( in_db )?
            	        {
            	            int alt549=2;
            	            switch ( LA(1) )
            	            {
            	                case FROM_SYMBOL:
            	                case IN_SYMBOL:
            	                	{
            	                		alt549=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt549)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1982:72: in_db
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_in_db_in_show_statement9297);
            	        	        in_db1751=in_db(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, in_db1751.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:1982:79: ( where_clause )?
            	        {
            	            int alt550=2;
            	            switch ( LA(1) )
            	            {
            	                case WHERE_SYMBOL:
            	                	{
            	                		alt550=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt550)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1982:79: where_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_where_clause_in_show_statement9300);
            	        	        where_clause1752=where_clause(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, where_clause1752.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 16:
            	    // MySQL.g:1983:5: ( STORAGE_SYMBOL )? ENGINES_SYMBOL
            	    {
            	        // MySQL.g:1983:5: ( STORAGE_SYMBOL )?
            	        {
            	            int alt551=2;
            	            switch ( LA(1) )
            	            {
            	                case STORAGE_SYMBOL:
            	                	{
            	                		alt551=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt551)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1983:5: STORAGE_SYMBOL
            	        	    {
            	        	        STORAGE_SYMBOL1753 = (pANTLR3_COMMON_TOKEN) MATCHT(STORAGE_SYMBOL, &FOLLOW_STORAGE_SYMBOL_in_show_statement9307);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        STORAGE_SYMBOL1753_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STORAGE_SYMBOL1753));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, STORAGE_SYMBOL1753_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        ENGINES_SYMBOL1754 = (pANTLR3_COMMON_TOKEN) MATCHT(ENGINES_SYMBOL, &FOLLOW_ENGINES_SYMBOL_in_show_statement9310);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ENGINES_SYMBOL1754_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ENGINES_SYMBOL1754));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ENGINES_SYMBOL1754_tree);
            	        }

            	    }
            	    break;
            	case 17:
            	    // MySQL.g:1984:5: PRIVILEGES_SYMBOL
            	    {
            	        PRIVILEGES_SYMBOL1755 = (pANTLR3_COMMON_TOKEN) MATCHT(PRIVILEGES_SYMBOL, &FOLLOW_PRIVILEGES_SYMBOL_in_show_statement9316);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        PRIVILEGES_SYMBOL1755_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PRIVILEGES_SYMBOL1755));
            	        ADAPTOR->addChild(ADAPTOR, root_0, PRIVILEGES_SYMBOL1755_tree);
            	        }

            	    }
            	    break;
            	case 18:
            	    // MySQL.g:1985:5: COUNT_SYMBOL OPEN_PAR_SYMBOL MULT_OPERATOR CLOSE_PAR_SYMBOL ( WARNINGS_SYMBOL | ERRORS_SYMBOL )
            	    {
            	        COUNT_SYMBOL1756 = (pANTLR3_COMMON_TOKEN) MATCHT(COUNT_SYMBOL, &FOLLOW_COUNT_SYMBOL_in_show_statement9322);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COUNT_SYMBOL1756_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COUNT_SYMBOL1756));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COUNT_SYMBOL1756_tree);
            	        }

            	        OPEN_PAR_SYMBOL1757 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_show_statement9324);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OPEN_PAR_SYMBOL1757_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1757));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1757_tree);
            	        }

            	        MULT_OPERATOR1758 = (pANTLR3_COMMON_TOKEN) MATCHT(MULT_OPERATOR, &FOLLOW_MULT_OPERATOR_in_show_statement9326);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        MULT_OPERATOR1758_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MULT_OPERATOR1758));
            	        ADAPTOR->addChild(ADAPTOR, root_0, MULT_OPERATOR1758_tree);
            	        }

            	        CLOSE_PAR_SYMBOL1759 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_show_statement9328);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CLOSE_PAR_SYMBOL1759_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1759));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1759_tree);
            	        }

            	        set1760=(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, set1760))
            	            );
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

            	        }
            	        else
            	        {
            	            if (BACKTRACKING>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:1986:5: WARNINGS_SYMBOL ( limit_clause )?
            	    {
            	        WARNINGS_SYMBOL1761 = (pANTLR3_COMMON_TOKEN) MATCHT(WARNINGS_SYMBOL, &FOLLOW_WARNINGS_SYMBOL_in_show_statement9342);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        WARNINGS_SYMBOL1761_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WARNINGS_SYMBOL1761));
            	        ADAPTOR->addChild(ADAPTOR, root_0, WARNINGS_SYMBOL1761_tree);
            	        }

            	        // MySQL.g:1986:21: ( limit_clause )?
            	        {
            	            int alt552=2;
            	            switch ( LA(1) )
            	            {
            	                case LIMIT_SYMBOL:
            	                	{
            	                		alt552=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt552)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1986:21: limit_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_limit_clause_in_show_statement9344);
            	        	        limit_clause1762=limit_clause(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, limit_clause1762.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 20:
            	    // MySQL.g:1987:5: ERRORS_SYMBOL ( limit_clause )?
            	    {
            	        ERRORS_SYMBOL1763 = (pANTLR3_COMMON_TOKEN) MATCHT(ERRORS_SYMBOL, &FOLLOW_ERRORS_SYMBOL_in_show_statement9351);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ERRORS_SYMBOL1763_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ERRORS_SYMBOL1763));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ERRORS_SYMBOL1763_tree);
            	        }

            	        // MySQL.g:1987:19: ( limit_clause )?
            	        {
            	            int alt553=2;
            	            switch ( LA(1) )
            	            {
            	                case LIMIT_SYMBOL:
            	                	{
            	                		alt553=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt553)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1987:19: limit_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_limit_clause_in_show_statement9353);
            	        	        limit_clause1764=limit_clause(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, limit_clause1764.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 21:
            	    // MySQL.g:1988:5: PROFILES_SYMBOL
            	    {
            	        PROFILES_SYMBOL1765 = (pANTLR3_COMMON_TOKEN) MATCHT(PROFILES_SYMBOL, &FOLLOW_PROFILES_SYMBOL_in_show_statement9360);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        PROFILES_SYMBOL1765_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PROFILES_SYMBOL1765));
            	        ADAPTOR->addChild(ADAPTOR, root_0, PROFILES_SYMBOL1765_tree);
            	        }

            	    }
            	    break;
            	case 22:
            	    // MySQL.g:1989:5: PROFILE_SYMBOL ( profile_type ( COMMA_SYMBOL profile_type )* )? ( FOR_SYMBOL QUERY_SYMBOL INT_NUMBER )? ( limit_clause )?
            	    {
            	        PROFILE_SYMBOL1766 = (pANTLR3_COMMON_TOKEN) MATCHT(PROFILE_SYMBOL, &FOLLOW_PROFILE_SYMBOL_in_show_statement9366);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        PROFILE_SYMBOL1766_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PROFILE_SYMBOL1766));
            	        ADAPTOR->addChild(ADAPTOR, root_0, PROFILE_SYMBOL1766_tree);
            	        }

            	        // MySQL.g:1989: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:1989:21: profile_type ( COMMA_SYMBOL profile_type )*
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_profile_type_in_show_statement9369);
            	        	        profile_type1767=profile_type(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, profile_type1767.tree);

            	        	        // MySQL.g:1989:34: ( COMMA_SYMBOL profile_type )*

            	        	        for (;;)
            	        	        {
            	        	            int alt554=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	            case COMMA_SYMBOL:
            	        	            	{
            	        	            		alt554=1;
            	        	            	}
            	        	                break;

            	        	            }

            	        	            switch (alt554)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:1989:35: COMMA_SYMBOL profile_type
            	        	        	    {
            	        	        	        COMMA_SYMBOL1768 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_show_statement9372);
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto ruleshow_statementEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) {
            	        	        	        COMMA_SYMBOL1768_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1768));
            	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1768_tree);
            	        	        	        }

            	        	        	        FOLLOWPUSH(FOLLOW_profile_type_in_show_statement9374);
            	        	        	        profile_type1769=profile_type(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto ruleshow_statementEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, profile_type1769.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:1989: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:1989:66: FOR_SYMBOL QUERY_SYMBOL INT_NUMBER
            	        	    {
            	        	        FOR_SYMBOL1770 = (pANTLR3_COMMON_TOKEN) MATCHT(FOR_SYMBOL, &FOLLOW_FOR_SYMBOL_in_show_statement9381);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        FOR_SYMBOL1770_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOR_SYMBOL1770));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, FOR_SYMBOL1770_tree);
            	        	        }

            	        	        QUERY_SYMBOL1771 = (pANTLR3_COMMON_TOKEN) MATCHT(QUERY_SYMBOL, &FOLLOW_QUERY_SYMBOL_in_show_statement9383);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        QUERY_SYMBOL1771_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, QUERY_SYMBOL1771));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, QUERY_SYMBOL1771_tree);
            	        	        }

            	        	        INT_NUMBER1772 = (pANTLR3_COMMON_TOKEN) MATCHT(INT_NUMBER, &FOLLOW_INT_NUMBER_in_show_statement9385);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        INT_NUMBER1772_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INT_NUMBER1772));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, INT_NUMBER1772_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:1989:103: ( limit_clause )?
            	        {
            	            int alt557=2;
            	            switch ( LA(1) )
            	            {
            	                case LIMIT_SYMBOL:
            	                	{
            	                		alt557=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt557)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1989:103: limit_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_limit_clause_in_show_statement9389);
            	        	        limit_clause1773=limit_clause(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, limit_clause1773.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 23:
            	    // MySQL.g:1990:5: ( option_type )? ( STATUS_SYMBOL | VARIABLES_SYMBOL ) ( like_or_where )?
            	    {
            	        // MySQL.g:1990: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:1990:5: option_type
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_option_type_in_show_statement9396);
            	        	        option_type1774=option_type(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, option_type1774.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        set1775=(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, set1775))
            	            );
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

            	        }
            	        else
            	        {
            	            if (BACKTRACKING>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:1990: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:1990:53: like_or_where
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_like_or_where_in_show_statement9407);
            	        	        like_or_where1776=like_or_where(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, like_or_where1776.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 24:
            	    // MySQL.g:1991:5: ( FULL_SYMBOL )? PROCESSLIST_SYMBOL
            	    {
            	        // MySQL.g:1991:5: ( FULL_SYMBOL )?
            	        {
            	            int alt560=2;
            	            switch ( LA(1) )
            	            {
            	                case FULL_SYMBOL:
            	                	{
            	                		alt560=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt560)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1991:5: FULL_SYMBOL
            	        	    {
            	        	        FULL_SYMBOL1777 = (pANTLR3_COMMON_TOKEN) MATCHT(FULL_SYMBOL, &FOLLOW_FULL_SYMBOL_in_show_statement9414);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        FULL_SYMBOL1777_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FULL_SYMBOL1777));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, FULL_SYMBOL1777_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        PROCESSLIST_SYMBOL1778 = (pANTLR3_COMMON_TOKEN) MATCHT(PROCESSLIST_SYMBOL, &FOLLOW_PROCESSLIST_SYMBOL_in_show_statement9417);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        PROCESSLIST_SYMBOL1778_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PROCESSLIST_SYMBOL1778));
            	        ADAPTOR->addChild(ADAPTOR, root_0, PROCESSLIST_SYMBOL1778_tree);
            	        }

            	    }
            	    break;
            	case 25:
            	    // MySQL.g:1992:5: charset ( like_or_where )?
            	    {
            	        FOLLOWPUSH(FOLLOW_charset_in_show_statement9423);
            	        charset1779=charset(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset1779.tree);

            	        // MySQL.g:1992: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:1992:13: like_or_where
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_like_or_where_in_show_statement9425);
            	        	        like_or_where1780=like_or_where(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, like_or_where1780.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 26:
            	    // MySQL.g:1993:5: COLLATION_SYMBOL ( like_or_where )?
            	    {
            	        COLLATION_SYMBOL1781 = (pANTLR3_COMMON_TOKEN) MATCHT(COLLATION_SYMBOL, &FOLLOW_COLLATION_SYMBOL_in_show_statement9432);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COLLATION_SYMBOL1781_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COLLATION_SYMBOL1781));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COLLATION_SYMBOL1781_tree);
            	        }

            	        // MySQL.g:1993: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:1993:22: like_or_where
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_like_or_where_in_show_statement9434);
            	        	        like_or_where1782=like_or_where(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, like_or_where1782.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 27:
            	    // MySQL.g:1994: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_SYMBOL1783 = (pANTLR3_COMMON_TOKEN) MATCHT(CONTRIBUTORS_SYMBOL, &FOLLOW_CONTRIBUTORS_SYMBOL_in_show_statement9443);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CONTRIBUTORS_SYMBOL1783_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CONTRIBUTORS_SYMBOL1783));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CONTRIBUTORS_SYMBOL1783_tree);
            	        }

            	    }
            	    break;
            	case 28:
            	    // MySQL.g:1995:5: GRANTS_SYMBOL ( FOR_SYMBOL user )?
            	    {
            	        GRANTS_SYMBOL1784 = (pANTLR3_COMMON_TOKEN) MATCHT(GRANTS_SYMBOL, &FOLLOW_GRANTS_SYMBOL_in_show_statement9449);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        GRANTS_SYMBOL1784_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GRANTS_SYMBOL1784));
            	        ADAPTOR->addChild(ADAPTOR, root_0, GRANTS_SYMBOL1784_tree);
            	        }

            	        // MySQL.g:1995:19: ( FOR_SYMBOL user )?
            	        {
            	            int alt563=2;
            	            switch ( LA(1) )
            	            {
            	                case FOR_SYMBOL:
            	                	{
            	                		alt563=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt563)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1995:20: FOR_SYMBOL user
            	        	    {
            	        	        FOR_SYMBOL1785 = (pANTLR3_COMMON_TOKEN) MATCHT(FOR_SYMBOL, &FOLLOW_FOR_SYMBOL_in_show_statement9452);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        FOR_SYMBOL1785_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOR_SYMBOL1785));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, FOR_SYMBOL1785_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_user_in_show_statement9454);
            	        	        user1786=user(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user1786.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 29:
            	    // MySQL.g:1996:5: MASTER_SYMBOL STATUS_SYMBOL
            	    {
            	        MASTER_SYMBOL1787 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_SYMBOL, &FOLLOW_MASTER_SYMBOL_in_show_statement9462);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        MASTER_SYMBOL1787_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_SYMBOL1787));
            	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_SYMBOL1787_tree);
            	        }

            	        STATUS_SYMBOL1788 = (pANTLR3_COMMON_TOKEN) MATCHT(STATUS_SYMBOL, &FOLLOW_STATUS_SYMBOL_in_show_statement9464);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        STATUS_SYMBOL1788_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STATUS_SYMBOL1788));
            	        ADAPTOR->addChild(ADAPTOR, root_0, STATUS_SYMBOL1788_tree);
            	        }

            	    }
            	    break;
            	case 30:
            	    // MySQL.g:1997: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_SYMBOL1789 = (pANTLR3_COMMON_TOKEN) MATCHT(CREATE_SYMBOL, &FOLLOW_CREATE_SYMBOL_in_show_statement9470);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CREATE_SYMBOL1789_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CREATE_SYMBOL1789));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CREATE_SYMBOL1789_tree);
            	        }

            	        // MySQL.g:1998: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:1999:5: DATABASE_SYMBOL ( if_not_exists )? schema_ref
            	        	    {
            	        	        DATABASE_SYMBOL1790 = (pANTLR3_COMMON_TOKEN) MATCHT(DATABASE_SYMBOL, &FOLLOW_DATABASE_SYMBOL_in_show_statement9481);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        DATABASE_SYMBOL1790_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATABASE_SYMBOL1790));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, DATABASE_SYMBOL1790_tree);
            	        	        }

            	        	        // MySQL.g:1999:21: ( if_not_exists )?
            	        	        {
            	        	            int alt564=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case IF_SYMBOL:
            	        	                	{
            	        	                		alt564=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt564)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:1999:21: if_not_exists
            	        	        	    {
            	        	        	        FOLLOWPUSH(FOLLOW_if_not_exists_in_show_statement9483);
            	        	        	        if_not_exists1791=if_not_exists(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto ruleshow_statementEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, if_not_exists1791.tree);

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_schema_ref_in_show_statement9486);
            	        	        schema_ref1792=schema_ref(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, schema_ref1792.tree);

            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:2000:7: EVENT_SYMBOL event_ref
            	        	    {
            	        	        EVENT_SYMBOL1793 = (pANTLR3_COMMON_TOKEN) MATCHT(EVENT_SYMBOL, &FOLLOW_EVENT_SYMBOL_in_show_statement9494);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        EVENT_SYMBOL1793_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EVENT_SYMBOL1793));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, EVENT_SYMBOL1793_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_event_ref_in_show_statement9496);
            	        	        event_ref1794=event_ref(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, event_ref1794.tree);

            	        	    }
            	        	    break;
            	        	case 3:
            	        	    // MySQL.g:2001:7: FUNCTION_SYMBOL function_ref
            	        	    {
            	        	        FUNCTION_SYMBOL1795 = (pANTLR3_COMMON_TOKEN) MATCHT(FUNCTION_SYMBOL, &FOLLOW_FUNCTION_SYMBOL_in_show_statement9504);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        FUNCTION_SYMBOL1795_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FUNCTION_SYMBOL1795));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, FUNCTION_SYMBOL1795_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_function_ref_in_show_statement9506);
            	        	        function_ref1796=function_ref(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, function_ref1796.tree);

            	        	    }
            	        	    break;
            	        	case 4:
            	        	    // MySQL.g:2002:7: PROCEDURE_SYMBOL procedure_ref
            	        	    {
            	        	        PROCEDURE_SYMBOL1797 = (pANTLR3_COMMON_TOKEN) MATCHT(PROCEDURE_SYMBOL, &FOLLOW_PROCEDURE_SYMBOL_in_show_statement9514);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        PROCEDURE_SYMBOL1797_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PROCEDURE_SYMBOL1797));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, PROCEDURE_SYMBOL1797_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_procedure_ref_in_show_statement9516);
            	        	        procedure_ref1798=procedure_ref(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, procedure_ref1798.tree);

            	        	    }
            	        	    break;
            	        	case 5:
            	        	    // MySQL.g:2003:7: TABLE_SYMBOL table_ref
            	        	    {
            	        	        TABLE_SYMBOL1799 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLE_SYMBOL, &FOLLOW_TABLE_SYMBOL_in_show_statement9524);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        TABLE_SYMBOL1799_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLE_SYMBOL1799));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, TABLE_SYMBOL1799_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_table_ref_in_show_statement9526);
            	        	        table_ref1800=table_ref(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref1800.tree);

            	        	    }
            	        	    break;
            	        	case 6:
            	        	    // MySQL.g:2004:7: TRIGGER_SYMBOL trigger_ref
            	        	    {
            	        	        TRIGGER_SYMBOL1801 = (pANTLR3_COMMON_TOKEN) MATCHT(TRIGGER_SYMBOL, &FOLLOW_TRIGGER_SYMBOL_in_show_statement9534);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        TRIGGER_SYMBOL1801_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TRIGGER_SYMBOL1801));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, TRIGGER_SYMBOL1801_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_trigger_ref_in_show_statement9536);
            	        	        trigger_ref1802=trigger_ref(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, trigger_ref1802.tree);

            	        	    }
            	        	    break;
            	        	case 7:
            	        	    // MySQL.g:2005:7: VIEW_SYMBOL view_ref
            	        	    {
            	        	        VIEW_SYMBOL1803 = (pANTLR3_COMMON_TOKEN) MATCHT(VIEW_SYMBOL, &FOLLOW_VIEW_SYMBOL_in_show_statement9544);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        VIEW_SYMBOL1803_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VIEW_SYMBOL1803));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, VIEW_SYMBOL1803_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_view_ref_in_show_statement9546);
            	        	        view_ref1804=view_ref(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, view_ref1804.tree);

            	        	    }
            	        	    break;
            	        	case 8:
            	        	    // MySQL.g:2006: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_SYMBOL1805 = (pANTLR3_COMMON_TOKEN) MATCHT(USER_SYMBOL, &FOLLOW_USER_SYMBOL_in_show_statement9556);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        USER_SYMBOL1805_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USER_SYMBOL1805));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, USER_SYMBOL1805_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_user_in_show_statement9558);
            	        	        user1806=user(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user1806.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 31:
            	    // MySQL.g:2008:5: PROCEDURE_SYMBOL STATUS_SYMBOL ( like_or_where )?
            	    {
            	        PROCEDURE_SYMBOL1807 = (pANTLR3_COMMON_TOKEN) MATCHT(PROCEDURE_SYMBOL, &FOLLOW_PROCEDURE_SYMBOL_in_show_statement9569);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        PROCEDURE_SYMBOL1807_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PROCEDURE_SYMBOL1807));
            	        ADAPTOR->addChild(ADAPTOR, root_0, PROCEDURE_SYMBOL1807_tree);
            	        }

            	        STATUS_SYMBOL1808 = (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_SYMBOL1808_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STATUS_SYMBOL1808));
            	        ADAPTOR->addChild(ADAPTOR, root_0, STATUS_SYMBOL1808_tree);
            	        }

            	        // MySQL.g:2008: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:2008:36: like_or_where
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_like_or_where_in_show_statement9573);
            	        	        like_or_where1809=like_or_where(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, like_or_where1809.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 32:
            	    // MySQL.g:2009:5: FUNCTION_SYMBOL STATUS_SYMBOL ( like_or_where )?
            	    {
            	        FUNCTION_SYMBOL1810 = (pANTLR3_COMMON_TOKEN) MATCHT(FUNCTION_SYMBOL, &FOLLOW_FUNCTION_SYMBOL_in_show_statement9580);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        FUNCTION_SYMBOL1810_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FUNCTION_SYMBOL1810));
            	        ADAPTOR->addChild(ADAPTOR, root_0, FUNCTION_SYMBOL1810_tree);
            	        }

            	        STATUS_SYMBOL1811 = (pANTLR3_COMMON_TOKEN) MATCHT(STATUS_SYMBOL, &FOLLOW_STATUS_SYMBOL_in_show_statement9582);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        STATUS_SYMBOL1811_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STATUS_SYMBOL1811));
            	        ADAPTOR->addChild(ADAPTOR, root_0, STATUS_SYMBOL1811_tree);
            	        }

            	        // MySQL.g:2009: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:2009:35: like_or_where
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_like_or_where_in_show_statement9584);
            	        	        like_or_where1812=like_or_where(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, like_or_where1812.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 33:
            	    // MySQL.g:2010:5: PROCEDURE_SYMBOL CODE_SYMBOL procedure_ref
            	    {
            	        PROCEDURE_SYMBOL1813 = (pANTLR3_COMMON_TOKEN) MATCHT(PROCEDURE_SYMBOL, &FOLLOW_PROCEDURE_SYMBOL_in_show_statement9591);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        PROCEDURE_SYMBOL1813_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PROCEDURE_SYMBOL1813));
            	        ADAPTOR->addChild(ADAPTOR, root_0, PROCEDURE_SYMBOL1813_tree);
            	        }

            	        CODE_SYMBOL1814 = (pANTLR3_COMMON_TOKEN) MATCHT(CODE_SYMBOL, &FOLLOW_CODE_SYMBOL_in_show_statement9593);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CODE_SYMBOL1814_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CODE_SYMBOL1814));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CODE_SYMBOL1814_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_procedure_ref_in_show_statement9595);
            	        procedure_ref1815=procedure_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, procedure_ref1815.tree);

            	    }
            	    break;
            	case 34:
            	    // MySQL.g:2011:5: FUNCTION_SYMBOL CODE_SYMBOL function_ref
            	    {
            	        FUNCTION_SYMBOL1816 = (pANTLR3_COMMON_TOKEN) MATCHT(FUNCTION_SYMBOL, &FOLLOW_FUNCTION_SYMBOL_in_show_statement9601);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        FUNCTION_SYMBOL1816_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FUNCTION_SYMBOL1816));
            	        ADAPTOR->addChild(ADAPTOR, root_0, FUNCTION_SYMBOL1816_tree);
            	        }

            	        CODE_SYMBOL1817 = (pANTLR3_COMMON_TOKEN) MATCHT(CODE_SYMBOL, &FOLLOW_CODE_SYMBOL_in_show_statement9603);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CODE_SYMBOL1817_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CODE_SYMBOL1817));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CODE_SYMBOL1817_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_function_ref_in_show_statement9605);
            	        function_ref1818=function_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, function_ref1818.tree);

            	    }
            	    break;
            	case 35:
            	    // MySQL.g:2012: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_SYMBOL1819 = (pANTLR3_COMMON_TOKEN) MATCHT(INNODB_SYMBOL, &FOLLOW_INNODB_SYMBOL_in_show_statement9613);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        INNODB_SYMBOL1819_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INNODB_SYMBOL1819));
            	        ADAPTOR->addChild(ADAPTOR, root_0, INNODB_SYMBOL1819_tree);
            	        }

            	        STATUS_SYMBOL1820 = (pANTLR3_COMMON_TOKEN) MATCHT(STATUS_SYMBOL, &FOLLOW_STATUS_SYMBOL_in_show_statement9615);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        STATUS_SYMBOL1820_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STATUS_SYMBOL1820));
            	        ADAPTOR->addChild(ADAPTOR, root_0, STATUS_SYMBOL1820_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:2016: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_SYMBOL1821;

    pANTLR3_BASE_TREE NONBLOCKING_SYMBOL1821_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    NONBLOCKING_SYMBOL1821       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    NONBLOCKING_SYMBOL1821_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2016: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:2017: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:2017:55: ( NONBLOCKING_SYMBOL )?
        	        {
        	            int alt569=2;
        	            switch ( LA(1) )
        	            {
        	                case NONBLOCKING_SYMBOL:
        	                	{
        	                		alt569=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt569)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2017:55: NONBLOCKING_SYMBOL
        	        	    {
        	        	        NONBLOCKING_SYMBOL1821 = (pANTLR3_COMMON_TOKEN) MATCHT(NONBLOCKING_SYMBOL, &FOLLOW_NONBLOCKING_SYMBOL_in_non_blocking9630);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulenon_blockingEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        NONBLOCKING_SYMBOL1821_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NONBLOCKING_SYMBOL1821));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, NONBLOCKING_SYMBOL1821_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2019: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:2021: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    set1822;

    pANTLR3_BASE_TREE set1822_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1822       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1822_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2021:11: ( FROM_SYMBOL | IN_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set1822=(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, set1822))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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:2025: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_in1823;
    #undef	RETURN_TYPE_from_or_in1823
    #define	RETURN_TYPE_from_or_in1823 MySQLParser_from_or_in_return

    MySQLParser_identifier_return identifier1824;
    #undef	RETURN_TYPE_identifier1824
    #define	RETURN_TYPE_identifier1824 MySQLParser_identifier_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    from_or_in1823.tree = NULL;

    identifier1824.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:2025:6: ( from_or_in identifier )
        // MySQL.g:2026:2: from_or_in identifier
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_from_or_in_in_in_db9658);
            from_or_in1823=from_or_in(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulein_dbEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, from_or_in1823.tree);

            FOLLOWPUSH(FOLLOW_identifier_in_in_db9660);
            identifier1824=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulein_dbEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier1824.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:2029: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_SYMBOL1825;
    pANTLR3_COMMON_TOKEN    BLOCK_SYMBOL1826;
    pANTLR3_COMMON_TOKEN    IO_SYMBOL1827;
    pANTLR3_COMMON_TOKEN    CONTEXT_SYMBOL1828;
    pANTLR3_COMMON_TOKEN    SWITCHES_SYMBOL1829;
    pANTLR3_COMMON_TOKEN    CPU_SYMBOL1830;
    pANTLR3_COMMON_TOKEN    IPC_SYMBOL1831;
    pANTLR3_COMMON_TOKEN    MEMORY_SYMBOL1832;
    pANTLR3_COMMON_TOKEN    PAGE_SYMBOL1833;
    pANTLR3_COMMON_TOKEN    FAULTS_SYMBOL1834;
    pANTLR3_COMMON_TOKEN    SOURCE_SYMBOL1835;
    pANTLR3_COMMON_TOKEN    SWAPS_SYMBOL1836;

    pANTLR3_BASE_TREE ALL_SYMBOL1825_tree;
    pANTLR3_BASE_TREE BLOCK_SYMBOL1826_tree;
    pANTLR3_BASE_TREE IO_SYMBOL1827_tree;
    pANTLR3_BASE_TREE CONTEXT_SYMBOL1828_tree;
    pANTLR3_BASE_TREE SWITCHES_SYMBOL1829_tree;
    pANTLR3_BASE_TREE CPU_SYMBOL1830_tree;
    pANTLR3_BASE_TREE IPC_SYMBOL1831_tree;
    pANTLR3_BASE_TREE MEMORY_SYMBOL1832_tree;
    pANTLR3_BASE_TREE PAGE_SYMBOL1833_tree;
    pANTLR3_BASE_TREE FAULTS_SYMBOL1834_tree;
    pANTLR3_BASE_TREE SOURCE_SYMBOL1835_tree;
    pANTLR3_BASE_TREE SWAPS_SYMBOL1836_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ALL_SYMBOL1825       = NULL;
    BLOCK_SYMBOL1826       = NULL;
    IO_SYMBOL1827       = NULL;
    CONTEXT_SYMBOL1828       = NULL;
    SWITCHES_SYMBOL1829       = NULL;
    CPU_SYMBOL1830       = NULL;
    IPC_SYMBOL1831       = NULL;
    MEMORY_SYMBOL1832       = NULL;
    PAGE_SYMBOL1833       = NULL;
    FAULTS_SYMBOL1834       = NULL;
    SOURCE_SYMBOL1835       = NULL;
    SWAPS_SYMBOL1836       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ALL_SYMBOL1825_tree   = NULL;
    BLOCK_SYMBOL1826_tree   = NULL;
    IO_SYMBOL1827_tree   = NULL;
    CONTEXT_SYMBOL1828_tree   = NULL;
    SWITCHES_SYMBOL1829_tree   = NULL;
    CPU_SYMBOL1830_tree   = NULL;
    IPC_SYMBOL1831_tree   = NULL;
    MEMORY_SYMBOL1832_tree   = NULL;
    PAGE_SYMBOL1833_tree   = NULL;
    FAULTS_SYMBOL1834_tree   = NULL;
    SOURCE_SYMBOL1835_tree   = NULL;
    SWAPS_SYMBOL1836_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2029: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:2030:2: ALL_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ALL_SYMBOL1825 = (pANTLR3_COMMON_TOKEN) MATCHT(ALL_SYMBOL, &FOLLOW_ALL_SYMBOL_in_profile_type9669);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprofile_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ALL_SYMBOL1825_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ALL_SYMBOL1825));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ALL_SYMBOL1825_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2031:4: BLOCK_SYMBOL IO_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BLOCK_SYMBOL1826 = (pANTLR3_COMMON_TOKEN) MATCHT(BLOCK_SYMBOL, &FOLLOW_BLOCK_SYMBOL_in_profile_type9674);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprofile_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BLOCK_SYMBOL1826_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BLOCK_SYMBOL1826));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BLOCK_SYMBOL1826_tree);
        	        }

        	        IO_SYMBOL1827 = (pANTLR3_COMMON_TOKEN) MATCHT(IO_SYMBOL, &FOLLOW_IO_SYMBOL_in_profile_type9676);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprofile_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        IO_SYMBOL1827_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IO_SYMBOL1827));
        	        ADAPTOR->addChild(ADAPTOR, root_0, IO_SYMBOL1827_tree);
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2032:4: CONTEXT_SYMBOL SWITCHES_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CONTEXT_SYMBOL1828 = (pANTLR3_COMMON_TOKEN) MATCHT(CONTEXT_SYMBOL, &FOLLOW_CONTEXT_SYMBOL_in_profile_type9681);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprofile_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CONTEXT_SYMBOL1828_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CONTEXT_SYMBOL1828));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CONTEXT_SYMBOL1828_tree);
        	        }

        	        SWITCHES_SYMBOL1829 = (pANTLR3_COMMON_TOKEN) MATCHT(SWITCHES_SYMBOL, &FOLLOW_SWITCHES_SYMBOL_in_profile_type9683);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprofile_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SWITCHES_SYMBOL1829_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SWITCHES_SYMBOL1829));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SWITCHES_SYMBOL1829_tree);
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:2033:4: CPU_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CPU_SYMBOL1830 = (pANTLR3_COMMON_TOKEN) MATCHT(CPU_SYMBOL, &FOLLOW_CPU_SYMBOL_in_profile_type9688);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprofile_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CPU_SYMBOL1830_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CPU_SYMBOL1830));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CPU_SYMBOL1830_tree);
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:2034:4: IPC_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        IPC_SYMBOL1831 = (pANTLR3_COMMON_TOKEN) MATCHT(IPC_SYMBOL, &FOLLOW_IPC_SYMBOL_in_profile_type9693);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprofile_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        IPC_SYMBOL1831_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IPC_SYMBOL1831));
        	        ADAPTOR->addChild(ADAPTOR, root_0, IPC_SYMBOL1831_tree);
        	        }

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:2035:4: MEMORY_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MEMORY_SYMBOL1832 = (pANTLR3_COMMON_TOKEN) MATCHT(MEMORY_SYMBOL, &FOLLOW_MEMORY_SYMBOL_in_profile_type9698);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprofile_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MEMORY_SYMBOL1832_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MEMORY_SYMBOL1832));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MEMORY_SYMBOL1832_tree);
        	        }

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:2036:4: PAGE_SYMBOL FAULTS_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        PAGE_SYMBOL1833 = (pANTLR3_COMMON_TOKEN) MATCHT(PAGE_SYMBOL, &FOLLOW_PAGE_SYMBOL_in_profile_type9703);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprofile_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PAGE_SYMBOL1833_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PAGE_SYMBOL1833));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PAGE_SYMBOL1833_tree);
        	        }

        	        FAULTS_SYMBOL1834 = (pANTLR3_COMMON_TOKEN) MATCHT(FAULTS_SYMBOL, &FOLLOW_FAULTS_SYMBOL_in_profile_type9705);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprofile_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FAULTS_SYMBOL1834_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FAULTS_SYMBOL1834));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FAULTS_SYMBOL1834_tree);
        	        }

        	    }
        	    break;
        	case 8:
        	    // MySQL.g:2037:4: SOURCE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SOURCE_SYMBOL1835 = (pANTLR3_COMMON_TOKEN) MATCHT(SOURCE_SYMBOL, &FOLLOW_SOURCE_SYMBOL_in_profile_type9710);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprofile_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SOURCE_SYMBOL1835_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SOURCE_SYMBOL1835));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SOURCE_SYMBOL1835_tree);
        	        }

        	    }
        	    break;
        	case 9:
        	    // MySQL.g:2038:4: SWAPS_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SWAPS_SYMBOL1836 = (pANTLR3_COMMON_TOKEN) MATCHT(SWAPS_SYMBOL, &FOLLOW_SWAPS_SYMBOL_in_profile_type9715);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprofile_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SWAPS_SYMBOL1836_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SWAPS_SYMBOL1836));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SWAPS_SYMBOL1836_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:2043: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_SYMBOL1837;
    pANTLR3_COMMON_TOKEN    CACHE_SYMBOL1839;
    pANTLR3_COMMON_TOKEN    INDEX_SYMBOL1840;
    pANTLR3_COMMON_TOKEN    IN_SYMBOL1842;
    pANTLR3_COMMON_TOKEN    DEFAULT_SYMBOL1844;
    pANTLR3_COMMON_TOKEN    FLUSH_SYMBOL1845;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1849;
    pANTLR3_COMMON_TOKEN    KILL_SYMBOL1851;
    pANTLR3_COMMON_TOKEN    set1852;
    pANTLR3_COMMON_TOKEN    LOAD_SYMBOL1854;
    pANTLR3_COMMON_TOKEN    INDEX_SYMBOL1855;
    pANTLR3_COMMON_TOKEN    INTO_SYMBOL1856;
    pANTLR3_COMMON_TOKEN    CACHE_SYMBOL1857;
    pANTLR3_COMMON_TOKEN    RESET_SYMBOL1859;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1861;
    pANTLR3_COMMON_TOKEN    SHUTDOWN_SYMBOL1863;
    MySQLParser_string_literal_return string_literal1838;
    #undef	RETURN_TYPE_string_literal1838
    #define	RETURN_TYPE_string_literal1838 MySQLParser_string_literal_return

    MySQLParser_key_cache_list_or_parts_return key_cache_list_or_parts1841;
    #undef	RETURN_TYPE_key_cache_list_or_parts1841
    #define	RETURN_TYPE_key_cache_list_or_parts1841 MySQLParser_key_cache_list_or_parts_return

    MySQLParser_identifier_return identifier1843;
    #undef	RETURN_TYPE_identifier1843
    #define	RETURN_TYPE_identifier1843 MySQLParser_identifier_return

    MySQLParser_no_write_to_bin_log_return no_write_to_bin_log1846;
    #undef	RETURN_TYPE_no_write_to_bin_log1846
    #define	RETURN_TYPE_no_write_to_bin_log1846 MySQLParser_no_write_to_bin_log_return

    MySQLParser_flush_tables_return flush_tables1847;
    #undef	RETURN_TYPE_flush_tables1847
    #define	RETURN_TYPE_flush_tables1847 MySQLParser_flush_tables_return

    MySQLParser_flush_option_return flush_option1848;
    #undef	RETURN_TYPE_flush_option1848
    #define	RETURN_TYPE_flush_option1848 MySQLParser_flush_option_return

    MySQLParser_flush_option_return flush_option1850;
    #undef	RETURN_TYPE_flush_option1850
    #define	RETURN_TYPE_flush_option1850 MySQLParser_flush_option_return

    MySQLParser_expression_return expression1853;
    #undef	RETURN_TYPE_expression1853
    #define	RETURN_TYPE_expression1853 MySQLParser_expression_return

    MySQLParser_load_table_index_list_return load_table_index_list1858;
    #undef	RETURN_TYPE_load_table_index_list1858
    #define	RETURN_TYPE_load_table_index_list1858 MySQLParser_load_table_index_list_return

    MySQLParser_reset_option_return reset_option1860;
    #undef	RETURN_TYPE_reset_option1860
    #define	RETURN_TYPE_reset_option1860 MySQLParser_reset_option_return

    MySQLParser_reset_option_return reset_option1862;
    #undef	RETURN_TYPE_reset_option1862
    #define	RETURN_TYPE_reset_option1862 MySQLParser_reset_option_return

    pANTLR3_BASE_TREE BINLOG_SYMBOL1837_tree;
    pANTLR3_BASE_TREE CACHE_SYMBOL1839_tree;
    pANTLR3_BASE_TREE INDEX_SYMBOL1840_tree;
    pANTLR3_BASE_TREE IN_SYMBOL1842_tree;
    pANTLR3_BASE_TREE DEFAULT_SYMBOL1844_tree;
    pANTLR3_BASE_TREE FLUSH_SYMBOL1845_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1849_tree;
    pANTLR3_BASE_TREE KILL_SYMBOL1851_tree;
    pANTLR3_BASE_TREE set1852_tree;
    pANTLR3_BASE_TREE LOAD_SYMBOL1854_tree;
    pANTLR3_BASE_TREE INDEX_SYMBOL1855_tree;
    pANTLR3_BASE_TREE INTO_SYMBOL1856_tree;
    pANTLR3_BASE_TREE CACHE_SYMBOL1857_tree;
    pANTLR3_BASE_TREE RESET_SYMBOL1859_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1861_tree;
    pANTLR3_BASE_TREE SHUTDOWN_SYMBOL1863_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    BINLOG_SYMBOL1837       = NULL;
    CACHE_SYMBOL1839       = NULL;
    INDEX_SYMBOL1840       = NULL;
    IN_SYMBOL1842       = NULL;
    DEFAULT_SYMBOL1844       = NULL;
    FLUSH_SYMBOL1845       = NULL;
    COMMA_SYMBOL1849       = NULL;
    KILL_SYMBOL1851       = NULL;
    set1852       = NULL;
    LOAD_SYMBOL1854       = NULL;
    INDEX_SYMBOL1855       = NULL;
    INTO_SYMBOL1856       = NULL;
    CACHE_SYMBOL1857       = NULL;
    RESET_SYMBOL1859       = NULL;
    COMMA_SYMBOL1861       = NULL;
    SHUTDOWN_SYMBOL1863       = NULL;
    string_literal1838.tree = NULL;

    key_cache_list_or_parts1841.tree = NULL;

    identifier1843.tree = NULL;

    no_write_to_bin_log1846.tree = NULL;

    flush_tables1847.tree = NULL;

    flush_option1848.tree = NULL;

    flush_option1850.tree = NULL;

    expression1853.tree = NULL;

    load_table_index_list1858.tree = NULL;

    reset_option1860.tree = NULL;

    reset_option1862.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    BINLOG_SYMBOL1837_tree   = NULL;
    CACHE_SYMBOL1839_tree   = NULL;
    INDEX_SYMBOL1840_tree   = NULL;
    IN_SYMBOL1842_tree   = NULL;
    DEFAULT_SYMBOL1844_tree   = NULL;
    FLUSH_SYMBOL1845_tree   = NULL;
    COMMA_SYMBOL1849_tree   = NULL;
    KILL_SYMBOL1851_tree   = NULL;
    set1852_tree   = NULL;
    LOAD_SYMBOL1854_tree   = NULL;
    INDEX_SYMBOL1855_tree   = NULL;
    INTO_SYMBOL1856_tree   = NULL;
    CACHE_SYMBOL1857_tree   = NULL;
    RESET_SYMBOL1859_tree   = NULL;
    COMMA_SYMBOL1861_tree   = NULL;
    SHUTDOWN_SYMBOL1863_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2043: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:2044:2: BINLOG_SYMBOL ^ string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BINLOG_SYMBOL1837 = (pANTLR3_COMMON_TOKEN) MATCHT(BINLOG_SYMBOL, &FOLLOW_BINLOG_SYMBOL_in_other_administrative_statement9726);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleother_administrative_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BINLOG_SYMBOL1837_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINLOG_SYMBOL1837))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, BINLOG_SYMBOL1837_tree, root_0));
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_other_administrative_statement9729);
        	        string_literal1838=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleother_administrative_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal1838.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2045:4: CACHE_SYMBOL ^ INDEX_SYMBOL key_cache_list_or_parts IN_SYMBOL ( identifier | DEFAULT_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CACHE_SYMBOL1839 = (pANTLR3_COMMON_TOKEN) MATCHT(CACHE_SYMBOL, &FOLLOW_CACHE_SYMBOL_in_other_administrative_statement9734);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleother_administrative_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CACHE_SYMBOL1839_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CACHE_SYMBOL1839))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, CACHE_SYMBOL1839_tree, root_0));
        	        }

        	        INDEX_SYMBOL1840 = (pANTLR3_COMMON_TOKEN) MATCHT(INDEX_SYMBOL, &FOLLOW_INDEX_SYMBOL_in_other_administrative_statement9737);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleother_administrative_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INDEX_SYMBOL1840_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INDEX_SYMBOL1840));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INDEX_SYMBOL1840_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_key_cache_list_or_parts_in_other_administrative_statement9739);
        	        key_cache_list_or_parts1841=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_parts1841.tree);

        	        IN_SYMBOL1842 = (pANTLR3_COMMON_TOKEN) MATCHT(IN_SYMBOL, &FOLLOW_IN_SYMBOL_in_other_administrative_statement9741);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleother_administrative_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        IN_SYMBOL1842_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IN_SYMBOL1842));
        	        ADAPTOR->addChild(ADAPTOR, root_0, IN_SYMBOL1842_tree);
        	        }

        	        // MySQL.g:2045: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:2045:66: identifier
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_identifier_in_other_administrative_statement9744);
        	        	        identifier1843=identifier(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleother_administrative_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier1843.tree);

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:2045:79: DEFAULT_SYMBOL
        	        	    {
        	        	        DEFAULT_SYMBOL1844 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_other_administrative_statement9748);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleother_administrative_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        DEFAULT_SYMBOL1844_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL1844));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL1844_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2046: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_SYMBOL1845 = (pANTLR3_COMMON_TOKEN) MATCHT(FLUSH_SYMBOL, &FOLLOW_FLUSH_SYMBOL_in_other_administrative_statement9754);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleother_administrative_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FLUSH_SYMBOL1845_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FLUSH_SYMBOL1845))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, FLUSH_SYMBOL1845_tree, root_0));
        	        }

        	        // MySQL.g:2046: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:2046:18: no_write_to_bin_log
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_no_write_to_bin_log_in_other_administrative_statement9757);
        	        	        no_write_to_bin_log1846=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_log1846.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:2047: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:2048:4: flush_tables
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_flush_tables_in_other_administrative_statement9767);
        	        	        flush_tables1847=flush_tables(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleother_administrative_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, flush_tables1847.tree);

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:2049:6: flush_option ( COMMA_SYMBOL flush_option )*
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_flush_option_in_other_administrative_statement9774);
        	        	        flush_option1848=flush_option(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleother_administrative_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, flush_option1848.tree);

        	        	        // MySQL.g:2049:19: ( COMMA_SYMBOL flush_option )*

        	        	        for (;;)
        	        	        {
        	        	            int alt574=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	            case COMMA_SYMBOL:
        	        	            	{
        	        	            		alt574=1;
        	        	            	}
        	        	                break;

        	        	            }

        	        	            switch (alt574)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:2049:20: COMMA_SYMBOL flush_option
        	        	        	    {
        	        	        	        COMMA_SYMBOL1849 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_other_administrative_statement9777);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruleother_administrative_statementEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        COMMA_SYMBOL1849_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1849));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1849_tree);
        	        	        	        }

        	        	        	        FOLLOWPUSH(FOLLOW_flush_option_in_other_administrative_statement9779);
        	        	        	        flush_option1850=flush_option(ctx);

        	        	        	        FOLLOWPOP();
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruleother_administrative_statementEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, flush_option1850.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:2051:4: KILL_SYMBOL ^ ( options {greedy=true; } : ( CONNECTION_SYMBOL | QUERY_SYMBOL ) )? expression
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        KILL_SYMBOL1851 = (pANTLR3_COMMON_TOKEN) MATCHT(KILL_SYMBOL, &FOLLOW_KILL_SYMBOL_in_other_administrative_statement9790);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleother_administrative_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        KILL_SYMBOL1851_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, KILL_SYMBOL1851))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, KILL_SYMBOL1851_tree, root_0));
        	        }

        	        // MySQL.g:2051: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 == BINARY_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 == EXISTS_SYMBOL || ((LA576_1 >= EXTRACT_SYMBOL) && (LA576_1 <= FALSE_SYMBOL)) || LA576_1 == GROUP_CONCAT_SYMBOL || LA576_1 == IF_SYMBOL || LA576_1 == INSERT_SYMBOL || LA576_1 == INTERVAL_SYMBOL || LA576_1 == LEFT_SYMBOL || 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 <= OPEN_PAR_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 >= UTC_DATE_SYMBOL) && (LA576_1 <= UTC_TIME_SYMBOL)) || LA576_1 == VALUES_SYMBOL || LA576_1 == VARIANCE_SYMBOL || LA576_1 == VAR_SAMP_SYMBOL || ((LA576_1 >= AT_AT_SIGN_SYMBOL) && (LA576_1 <= AT_TEXT_SUFFIX)) || ((LA576_1 >= BACK_TICK_QUOTED_ID) && (LA576_1 <= BIN_NUMBER)) || LA576_1 == BITWISE_NOT_OPERATOR || ((LA576_1 >= BIT_AND_SYMBOL) && (LA576_1 <= BIT_XOR_SYMBOL)) || LA576_1 == DECIMAL_NUMBER || LA576_1 == DOUBLE_QUOTED_TEXT || LA576_1 == FLOAT_NUMBER || ((LA576_1 >= HEX_NUMBER) && (LA576_1 <= IDENTIFIER)) || LA576_1 == INT_NUMBER || LA576_1 == LOGICAL_NOT_OPERATOR || LA576_1 == LONG_NUMBER || ((LA576_1 >= ULONGLONG_NUMBER) && (LA576_1 <= UNDERSCORE_CHARSET))))
        	                		    {
        	                		        alt576=1;
        	                		    }
        	                		    else if ( (LA576_1 == MOD_SYMBOL))
        	                		    {
        	                		        alt576=1;
        	                		    }
        	                		    else if ( (LA576_1 == DOT_SYMBOL))
        	                		    {
        	                		        alt576=1;
        	                		    }
        	                		    else if ( (LA576_1 == SOUNDS_SYMBOL))
        	                		    {
        	                		        alt576=1;
        	                		    }
        	                		}
        	                	}
        	                    break;
        	            }

        	            switch (alt576)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2051:47: ( CONNECTION_SYMBOL | QUERY_SYMBOL )
        	        	    {
        	        	        set1852=(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, set1852))
        	        	            );
        	        	            PERRORRECOVERY=ANTLR3_FALSE;
        	        	            FAILEDFLAG=ANTLR3_FALSE;

        	        	        }
        	        	        else
        	        	        {
        	        	            if (BACKTRACKING>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_statement9817);
        	        expression1853=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleother_administrative_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1853.tree);

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:2052:4: LOAD_SYMBOL ^ INDEX_SYMBOL INTO_SYMBOL CACHE_SYMBOL load_table_index_list
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        LOAD_SYMBOL1854 = (pANTLR3_COMMON_TOKEN) MATCHT(LOAD_SYMBOL, &FOLLOW_LOAD_SYMBOL_in_other_administrative_statement9822);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleother_administrative_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LOAD_SYMBOL1854_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOAD_SYMBOL1854))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, LOAD_SYMBOL1854_tree, root_0));
        	        }

        	        INDEX_SYMBOL1855 = (pANTLR3_COMMON_TOKEN) MATCHT(INDEX_SYMBOL, &FOLLOW_INDEX_SYMBOL_in_other_administrative_statement9825);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleother_administrative_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INDEX_SYMBOL1855_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INDEX_SYMBOL1855));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INDEX_SYMBOL1855_tree);
        	        }

        	        INTO_SYMBOL1856 = (pANTLR3_COMMON_TOKEN) MATCHT(INTO_SYMBOL, &FOLLOW_INTO_SYMBOL_in_other_administrative_statement9827);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleother_administrative_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INTO_SYMBOL1856_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTO_SYMBOL1856));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INTO_SYMBOL1856_tree);
        	        }

        	        CACHE_SYMBOL1857 = (pANTLR3_COMMON_TOKEN) MATCHT(CACHE_SYMBOL, &FOLLOW_CACHE_SYMBOL_in_other_administrative_statement9829);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleother_administrative_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CACHE_SYMBOL1857_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CACHE_SYMBOL1857));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CACHE_SYMBOL1857_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_load_table_index_list_in_other_administrative_statement9831);
        	        load_table_index_list1858=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_list1858.tree);

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:2053:4: RESET_SYMBOL ^ reset_option ( COMMA_SYMBOL reset_option )*
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        RESET_SYMBOL1859 = (pANTLR3_COMMON_TOKEN) MATCHT(RESET_SYMBOL, &FOLLOW_RESET_SYMBOL_in_other_administrative_statement9836);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleother_administrative_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        RESET_SYMBOL1859_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RESET_SYMBOL1859))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, RESET_SYMBOL1859_tree, root_0));
        	        }

        	        FOLLOWPUSH(FOLLOW_reset_option_in_other_administrative_statement9839);
        	        reset_option1860=reset_option(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleother_administrative_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, reset_option1860.tree);

        	        // MySQL.g:2053:31: ( COMMA_SYMBOL reset_option )*

        	        for (;;)
        	        {
        	            int alt577=2;
        	            switch ( LA(1) )
        	            {
        	            case COMMA_SYMBOL:
        	            	{
        	            		alt577=1;
        	            	}
        	                break;

        	            }

        	            switch (alt577)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2053:32: COMMA_SYMBOL reset_option
        	        	    {
        	        	        COMMA_SYMBOL1861 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_other_administrative_statement9842);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleother_administrative_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        COMMA_SYMBOL1861_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1861));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1861_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_reset_option_in_other_administrative_statement9844);
        	        	        reset_option1862=reset_option(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleother_administrative_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, reset_option1862.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:2054: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_SYMBOL1863 = (pANTLR3_COMMON_TOKEN) MATCHT(SHUTDOWN_SYMBOL, &FOLLOW_SHUTDOWN_SYMBOL_in_other_administrative_statement9853);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleother_administrative_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SHUTDOWN_SYMBOL1863_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SHUTDOWN_SYMBOL1863));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SHUTDOWN_SYMBOL1863_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:2057: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_list1864;
    #undef	RETURN_TYPE_key_cache_list1864
    #define	RETURN_TYPE_key_cache_list1864 MySQLParser_key_cache_list_return

    MySQLParser_assign_to_keycache_partition_return assign_to_keycache_partition1865;
    #undef	RETURN_TYPE_assign_to_keycache_partition1865
    #define	RETURN_TYPE_assign_to_keycache_partition1865 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_list1864.tree = NULL;

    assign_to_keycache_partition1865.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:2057: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 INDEX_SYMBOL:
                    		        case IN_SYMBOL:
                    		        case KEY_SYMBOL:
                    		        case COMMA_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 INDEX_SYMBOL:
                    		        case IN_SYMBOL:
                    		        case KEY_SYMBOL:
                    		        case COMMA_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 INDEX_SYMBOL:
                    		        case IN_SYMBOL:
                    		        case KEY_SYMBOL:
                    		        case COMMA_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 INDEX_SYMBOL:
                    		        case IN_SYMBOL:
                    		        case KEY_SYMBOL:
                    		        case COMMA_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 INDEX_SYMBOL:
                    		        case IN_SYMBOL:
                    		        case KEY_SYMBOL:
                    		        case COMMA_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 INDEX_SYMBOL:
                    case IN_SYMBOL:
                    case KEY_SYMBOL:
                    case COMMA_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 INDEX_SYMBOL:
                    		        case IN_SYMBOL:
                    		        case KEY_SYMBOL:
                    		        case COMMA_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 INDEX_SYMBOL:
                    		        case IN_SYMBOL:
                    		        case KEY_SYMBOL:
                    		        case COMMA_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 INDEX_SYMBOL:
                    		        case IN_SYMBOL:
                    		        case KEY_SYMBOL:
                    		        case COMMA_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 INDEX_SYMBOL:
                    		        case IN_SYMBOL:
                    		        case KEY_SYMBOL:
                    		        case COMMA_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 INDEX_SYMBOL:
                    		        case IN_SYMBOL:
                    		        case KEY_SYMBOL:
                    		        case COMMA_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 INDEX_SYMBOL:
                    case IN_SYMBOL:
                    case KEY_SYMBOL:
                    case COMMA_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 INDEX_SYMBOL:
                    		        case IN_SYMBOL:
                    		        case KEY_SYMBOL:
                    		        case COMMA_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 INDEX_SYMBOL:
                    		        case IN_SYMBOL:
                    		        case KEY_SYMBOL:
                    		        case COMMA_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 INDEX_SYMBOL:
                    		        case IN_SYMBOL:
                    		        case KEY_SYMBOL:
                    		        case COMMA_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 INDEX_SYMBOL:
                    		        case IN_SYMBOL:
                    		        case KEY_SYMBOL:
                    		        case COMMA_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 INDEX_SYMBOL:
                    		        case IN_SYMBOL:
                    		        case KEY_SYMBOL:
                    		        case COMMA_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 INDEX_SYMBOL:
                    case IN_SYMBOL:
                    case KEY_SYMBOL:
                    case COMMA_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 INDEX_SYMBOL:
                    		        case IN_SYMBOL:
                    		        case KEY_SYMBOL:
                    		        case COMMA_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 INDEX_SYMBOL:
                    		        case IN_SYMBOL:
                    		        case KEY_SYMBOL:
                    		        case COMMA_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 INDEX_SYMBOL:
                    		        case IN_SYMBOL:
                    		        case KEY_SYMBOL:
                    		        case COMMA_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 INDEX_SYMBOL:
                    		        case IN_SYMBOL:
                    		        case KEY_SYMBOL:
                    		        case COMMA_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 INDEX_SYMBOL:
                    		        case IN_SYMBOL:
                    		        case KEY_SYMBOL:
                    		        case COMMA_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 INDEX_SYMBOL:
                    case IN_SYMBOL:
                    case KEY_SYMBOL:
                    case COMMA_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 INDEX_SYMBOL:
                    		        case IN_SYMBOL:
                    		        case KEY_SYMBOL:
                    		        case COMMA_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 INDEX_SYMBOL:
                    		        case IN_SYMBOL:
                    		        case KEY_SYMBOL:
                    		        case COMMA_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 INDEX_SYMBOL:
                    		        case IN_SYMBOL:
                    		        case KEY_SYMBOL:
                    		        case COMMA_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 INDEX_SYMBOL:
                    		        case IN_SYMBOL:
                    		        case KEY_SYMBOL:
                    		        case COMMA_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 INDEX_SYMBOL:
                    		        case IN_SYMBOL:
                    		        case KEY_SYMBOL:
                    		        case COMMA_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 INDEX_SYMBOL:
                    case IN_SYMBOL:
                    case KEY_SYMBOL:
                    case COMMA_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 INDEX_SYMBOL:
                            case IN_SYMBOL:
                            case KEY_SYMBOL:
                            case COMMA_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 INDEX_SYMBOL:
                            case IN_SYMBOL:
                            case KEY_SYMBOL:
                            case COMMA_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 INDEX_SYMBOL:
                            case IN_SYMBOL:
                            case KEY_SYMBOL:
                            case COMMA_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 INDEX_SYMBOL:
                            case IN_SYMBOL:
                            case KEY_SYMBOL:
                            case COMMA_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 INDEX_SYMBOL:
                            case IN_SYMBOL:
                            case KEY_SYMBOL:
                            case COMMA_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:2058:2: key_cache_list
        	    {
        	        FOLLOWPUSH(FOLLOW_key_cache_list_in_key_cache_list_or_parts9873);
        	        key_cache_list1864=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_list1864.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;
        	        	// 2058:17: -> ^( KEY_CACHE_LIST_TOKEN key_cache_list )
        	        	{
        	        	    // MySQL.g:2058: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:2059:4: assign_to_keycache_partition
        	    {
        	        FOLLOWPUSH(FOLLOW_assign_to_keycache_partition_in_key_cache_list_or_parts9886);
        	        assign_to_keycache_partition1865=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_partition1865.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;
        	        	// 2059:33: -> ^( KEY_CACHE_PARTITION_TOKEN assign_to_keycache_partition )
        	        	{
        	        	    // MySQL.g:2059: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:2062: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_SYMBOL1867;
    MySQLParser_assign_to_keycache_return assign_to_keycache1866;
    #undef	RETURN_TYPE_assign_to_keycache1866
    #define	RETURN_TYPE_assign_to_keycache1866 MySQLParser_assign_to_keycache_return

    MySQLParser_assign_to_keycache_return assign_to_keycache1868;
    #undef	RETURN_TYPE_assign_to_keycache1868
    #define	RETURN_TYPE_assign_to_keycache1868 MySQLParser_assign_to_keycache_return

    pANTLR3_BASE_TREE COMMA_SYMBOL1867_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL1867       = NULL;
    assign_to_keycache1866.tree = NULL;

    assign_to_keycache1868.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL1867_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2062:15: ( assign_to_keycache ( COMMA_SYMBOL assign_to_keycache )* )
        // MySQL.g:2063: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_list9903);
            assign_to_keycache1866=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_keycache1866.tree);

            // MySQL.g:2063: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:2063:22: COMMA_SYMBOL assign_to_keycache
            	    {
            	        COMMA_SYMBOL1867 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_key_cache_list9906);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulekey_cache_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL1867_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1867));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1867_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_assign_to_keycache_in_key_cache_list9908);
            	        assign_to_keycache1868=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_keycache1868.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:2066: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_ref1869;
    #undef	RETURN_TYPE_table_ref1869
    #define	RETURN_TYPE_table_ref1869 MySQLParser_table_ref_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


    /* Initialize rule variables
     */

    root_0 = NULL;

    table_ref1869.tree = NULL;

    cache_keys_spec1870.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:2066:19: ( table_ref ( cache_keys_spec )? )
        // MySQL.g:2067:2: table_ref ( cache_keys_spec )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_table_ref_in_assign_to_keycache9919);
            table_ref1869=table_ref(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleassign_to_keycacheEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref1869.tree);

            // MySQL.g:2067: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:2067:12: cache_keys_spec
            	    {
            	        FOLLOWPUSH(FOLLOW_cache_keys_spec_in_assign_to_keycache9921);
            	        cache_keys_spec1870=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_spec1870.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:2070: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_SYMBOL1872;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1873;
    pANTLR3_COMMON_TOKEN    ALL_SYMBOL1874;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1876;
    MySQLParser_table_ref_return table_ref1871;
    #undef	RETURN_TYPE_table_ref1871
    #define	RETURN_TYPE_table_ref1871 MySQLParser_table_ref_return

    MySQLParser_identifier_list_return identifier_list1875;
    #undef	RETURN_TYPE_identifier_list1875
    #define	RETURN_TYPE_identifier_list1875 MySQLParser_identifier_list_return

    MySQLParser_cache_keys_spec_return cache_keys_spec1877;
    #undef	RETURN_TYPE_cache_keys_spec1877
    #define	RETURN_TYPE_cache_keys_spec1877 MySQLParser_cache_keys_spec_return

    pANTLR3_BASE_TREE PARTITION_SYMBOL1872_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1873_tree;
    pANTLR3_BASE_TREE ALL_SYMBOL1874_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1876_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    PARTITION_SYMBOL1872       = NULL;
    OPEN_PAR_SYMBOL1873       = NULL;
    ALL_SYMBOL1874       = NULL;
    CLOSE_PAR_SYMBOL1876       = NULL;
    table_ref1871.tree = NULL;

    identifier_list1875.tree = NULL;

    cache_keys_spec1877.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    PARTITION_SYMBOL1872_tree   = NULL;
    OPEN_PAR_SYMBOL1873_tree   = NULL;
    ALL_SYMBOL1874_tree   = NULL;
    CLOSE_PAR_SYMBOL1876_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2070:29: ( table_ref PARTITION_SYMBOL OPEN_PAR_SYMBOL ( ALL_SYMBOL | identifier_list ) CLOSE_PAR_SYMBOL ( cache_keys_spec )? )
        // MySQL.g:2071: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_partition9931);
            table_ref1871=table_ref(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleassign_to_keycache_partitionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref1871.tree);

            PARTITION_SYMBOL1872 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITION_SYMBOL, &FOLLOW_PARTITION_SYMBOL_in_assign_to_keycache_partition9933);
            if  (HASEXCEPTION())
            {
                goto ruleassign_to_keycache_partitionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            PARTITION_SYMBOL1872_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARTITION_SYMBOL1872));
            ADAPTOR->addChild(ADAPTOR, root_0, PARTITION_SYMBOL1872_tree);
            }

            OPEN_PAR_SYMBOL1873 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_assign_to_keycache_partition9935);
            if  (HASEXCEPTION())
            {
                goto ruleassign_to_keycache_partitionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL1873_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1873));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1873_tree);
            }

            // MySQL.g:2071: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:2071:46: ALL_SYMBOL
            	    {
            	        ALL_SYMBOL1874 = (pANTLR3_COMMON_TOKEN) MATCHT(ALL_SYMBOL, &FOLLOW_ALL_SYMBOL_in_assign_to_keycache_partition9938);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleassign_to_keycache_partitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ALL_SYMBOL1874_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ALL_SYMBOL1874));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ALL_SYMBOL1874_tree);
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2071:59: identifier_list
            	    {
            	        FOLLOWPUSH(FOLLOW_identifier_list_in_assign_to_keycache_partition9942);
            	        identifier_list1875=identifier_list(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleassign_to_keycache_partitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier_list1875.tree);

            	    }
            	    break;

                }
            }

            CLOSE_PAR_SYMBOL1876 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_assign_to_keycache_partition9945);
            if  (HASEXCEPTION())
            {
                goto ruleassign_to_keycache_partitionEx;
            }
            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);
            }

            // MySQL.g:2071: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:2071:93: cache_keys_spec
            	    {
            	        FOLLOWPUSH(FOLLOW_cache_keys_spec_in_assign_to_keycache_partition9947);
            	        cache_keys_spec1877=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_spec1877.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:2074: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    set1878;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1879;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1881;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1883;
    MySQLParser_key_usage_element_return key_usage_element1880;
    #undef	RETURN_TYPE_key_usage_element1880
    #define	RETURN_TYPE_key_usage_element1880 MySQLParser_key_usage_element_return

    MySQLParser_key_usage_element_return key_usage_element1882;
    #undef	RETURN_TYPE_key_usage_element1882
    #define	RETURN_TYPE_key_usage_element1882 MySQLParser_key_usage_element_return

    pANTLR3_BASE_TREE set1878_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1879_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1881_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1883_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1878       = NULL;
    OPEN_PAR_SYMBOL1879       = NULL;
    COMMA_SYMBOL1881       = NULL;
    CLOSE_PAR_SYMBOL1883       = NULL;
    key_usage_element1880.tree = NULL;

    key_usage_element1882.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1878_tree   = NULL;
    OPEN_PAR_SYMBOL1879_tree   = NULL;
    COMMA_SYMBOL1881_tree   = NULL;
    CLOSE_PAR_SYMBOL1883_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2074:16: ( ( KEY_SYMBOL | INDEX_SYMBOL ) OPEN_PAR_SYMBOL ( key_usage_element ( COMMA_SYMBOL key_usage_element )* )? CLOSE_PAR_SYMBOL )
        // MySQL.g:2075: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));


            set1878=(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, set1878))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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_SYMBOL1879 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_cache_keys_spec9965);
            if  (HASEXCEPTION())
            {
                goto rulecache_keys_specEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL1879_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1879));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1879_tree);
            }

            // MySQL.g:2075: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 == PRIMARY_SYMBOL || LA585_0 == BACK_TICK_QUOTED_ID || LA585_0 == DOUBLE_QUOTED_TEXT || LA585_0 == IDENTIFIER))
                    {
                        alt585=1;
                    }
                }
                switch (alt585)
                {
            	case 1:
            	    // MySQL.g:2075:47: key_usage_element ( COMMA_SYMBOL key_usage_element )*
            	    {
            	        FOLLOWPUSH(FOLLOW_key_usage_element_in_cache_keys_spec9968);
            	        key_usage_element1880=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_element1880.tree);

            	        // MySQL.g:2075: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:2075:66: COMMA_SYMBOL key_usage_element
            	        	    {
            	        	        COMMA_SYMBOL1881 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_cache_keys_spec9971);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecache_keys_specEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        COMMA_SYMBOL1881_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1881));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1881_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_key_usage_element_in_cache_keys_spec9973);
            	        	        key_usage_element1882=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_element1882.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_SYMBOL1883 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_cache_keys_spec9979);
            if  (HASEXCEPTION())
            {
                goto rulecache_keys_specEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL1883_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1883));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1883_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:2078: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_SYMBOL1885;
    MySQLParser_identifier_return identifier1884;
    #undef	RETURN_TYPE_identifier1884
    #define	RETURN_TYPE_identifier1884 MySQLParser_identifier_return

    pANTLR3_BASE_TREE PRIMARY_SYMBOL1885_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    PRIMARY_SYMBOL1885       = NULL;
    identifier1884.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    PRIMARY_SYMBOL1885_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2078: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:2079:2: identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_identifier_in_key_usage_element9988);
        	        identifier1884=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulekey_usage_elementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier1884.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2080:4: PRIMARY_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        PRIMARY_SYMBOL1885 = (pANTLR3_COMMON_TOKEN) MATCHT(PRIMARY_SYMBOL, &FOLLOW_PRIMARY_SYMBOL_in_key_usage_element9993);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulekey_usage_elementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PRIMARY_SYMBOL1885_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PRIMARY_SYMBOL1885));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PRIMARY_SYMBOL1885_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:2083: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_SYMBOL1886;
    pANTLR3_COMMON_TOKEN    HOSTS_SYMBOL1887;
    pANTLR3_COMMON_TOKEN    LOGS_SYMBOL1889;
    pANTLR3_COMMON_TOKEN    RELAY_SYMBOL1890;
    pANTLR3_COMMON_TOKEN    LOGS_SYMBOL1891;
    pANTLR3_COMMON_TOKEN    PRIVILEGES_SYMBOL1893;
    pANTLR3_COMMON_TOKEN    QUERY_SYMBOL1894;
    pANTLR3_COMMON_TOKEN    CACHE_SYMBOL1895;
    pANTLR3_COMMON_TOKEN    STATUS_SYMBOL1896;
    pANTLR3_COMMON_TOKEN    USER_RESOURCES_SYMBOL1897;
    pANTLR3_COMMON_TOKEN    OPTIMIZER_COSTS_SYMBOL1898;
    MySQLParser_log_type_return log_type1888;
    #undef	RETURN_TYPE_log_type1888
    #define	RETURN_TYPE_log_type1888 MySQLParser_log_type_return

    MySQLParser_channel_return channel1892;
    #undef	RETURN_TYPE_channel1892
    #define	RETURN_TYPE_channel1892 MySQLParser_channel_return

    pANTLR3_BASE_TREE DES_KEY_FILE_SYMBOL1886_tree;
    pANTLR3_BASE_TREE HOSTS_SYMBOL1887_tree;
    pANTLR3_BASE_TREE LOGS_SYMBOL1889_tree;
    pANTLR3_BASE_TREE RELAY_SYMBOL1890_tree;
    pANTLR3_BASE_TREE LOGS_SYMBOL1891_tree;
    pANTLR3_BASE_TREE PRIVILEGES_SYMBOL1893_tree;
    pANTLR3_BASE_TREE QUERY_SYMBOL1894_tree;
    pANTLR3_BASE_TREE CACHE_SYMBOL1895_tree;
    pANTLR3_BASE_TREE STATUS_SYMBOL1896_tree;
    pANTLR3_BASE_TREE USER_RESOURCES_SYMBOL1897_tree;
    pANTLR3_BASE_TREE OPTIMIZER_COSTS_SYMBOL1898_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DES_KEY_FILE_SYMBOL1886       = NULL;
    HOSTS_SYMBOL1887       = NULL;
    LOGS_SYMBOL1889       = NULL;
    RELAY_SYMBOL1890       = NULL;
    LOGS_SYMBOL1891       = NULL;
    PRIVILEGES_SYMBOL1893       = NULL;
    QUERY_SYMBOL1894       = NULL;
    CACHE_SYMBOL1895       = NULL;
    STATUS_SYMBOL1896       = NULL;
    USER_RESOURCES_SYMBOL1897       = NULL;
    OPTIMIZER_COSTS_SYMBOL1898       = NULL;
    log_type1888.tree = NULL;

    channel1892.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DES_KEY_FILE_SYMBOL1886_tree   = NULL;
    HOSTS_SYMBOL1887_tree   = NULL;
    LOGS_SYMBOL1889_tree   = NULL;
    RELAY_SYMBOL1890_tree   = NULL;
    LOGS_SYMBOL1891_tree   = NULL;
    PRIVILEGES_SYMBOL1893_tree   = NULL;
    QUERY_SYMBOL1894_tree   = NULL;
    CACHE_SYMBOL1895_tree   = NULL;
    STATUS_SYMBOL1896_tree   = NULL;
    USER_RESOURCES_SYMBOL1897_tree   = NULL;
    OPTIMIZER_COSTS_SYMBOL1898_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2083: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:2084:2: DES_KEY_FILE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DES_KEY_FILE_SYMBOL1886 = (pANTLR3_COMMON_TOKEN) MATCHT(DES_KEY_FILE_SYMBOL, &FOLLOW_DES_KEY_FILE_SYMBOL_in_flush_option10002);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleflush_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DES_KEY_FILE_SYMBOL1886_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DES_KEY_FILE_SYMBOL1886));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DES_KEY_FILE_SYMBOL1886_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2085:4: HOSTS_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        HOSTS_SYMBOL1887 = (pANTLR3_COMMON_TOKEN) MATCHT(HOSTS_SYMBOL, &FOLLOW_HOSTS_SYMBOL_in_flush_option10007);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleflush_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        HOSTS_SYMBOL1887_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, HOSTS_SYMBOL1887));
        	        ADAPTOR->addChild(ADAPTOR, root_0, HOSTS_SYMBOL1887_tree);
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2086:4: ( log_type )? LOGS_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:2086: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:2086:4: log_type
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_log_type_in_flush_option10012);
        	        	        log_type1888=log_type(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleflush_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, log_type1888.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        LOGS_SYMBOL1889 = (pANTLR3_COMMON_TOKEN) MATCHT(LOGS_SYMBOL, &FOLLOW_LOGS_SYMBOL_in_flush_option10015);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleflush_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LOGS_SYMBOL1889_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOGS_SYMBOL1889));
        	        ADAPTOR->addChild(ADAPTOR, root_0, LOGS_SYMBOL1889_tree);
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:2087:4: RELAY_SYMBOL LOGS_SYMBOL ( channel )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        RELAY_SYMBOL1890 = (pANTLR3_COMMON_TOKEN) MATCHT(RELAY_SYMBOL, &FOLLOW_RELAY_SYMBOL_in_flush_option10020);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleflush_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        RELAY_SYMBOL1890_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RELAY_SYMBOL1890));
        	        ADAPTOR->addChild(ADAPTOR, root_0, RELAY_SYMBOL1890_tree);
        	        }

        	        LOGS_SYMBOL1891 = (pANTLR3_COMMON_TOKEN) MATCHT(LOGS_SYMBOL, &FOLLOW_LOGS_SYMBOL_in_flush_option10022);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleflush_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LOGS_SYMBOL1891_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOGS_SYMBOL1891));
        	        ADAPTOR->addChild(ADAPTOR, root_0, LOGS_SYMBOL1891_tree);
        	        }

        	        // MySQL.g:2087: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:2087:29: channel
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_channel_in_flush_option10024);
        	        	        channel1892=channel(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleflush_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, channel1892.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:2088:4: PRIVILEGES_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        PRIVILEGES_SYMBOL1893 = (pANTLR3_COMMON_TOKEN) MATCHT(PRIVILEGES_SYMBOL, &FOLLOW_PRIVILEGES_SYMBOL_in_flush_option10030);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleflush_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PRIVILEGES_SYMBOL1893_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PRIVILEGES_SYMBOL1893));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PRIVILEGES_SYMBOL1893_tree);
        	        }

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:2089:4: QUERY_SYMBOL CACHE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        QUERY_SYMBOL1894 = (pANTLR3_COMMON_TOKEN) MATCHT(QUERY_SYMBOL, &FOLLOW_QUERY_SYMBOL_in_flush_option10035);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleflush_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        QUERY_SYMBOL1894_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, QUERY_SYMBOL1894));
        	        ADAPTOR->addChild(ADAPTOR, root_0, QUERY_SYMBOL1894_tree);
        	        }

        	        CACHE_SYMBOL1895 = (pANTLR3_COMMON_TOKEN) MATCHT(CACHE_SYMBOL, &FOLLOW_CACHE_SYMBOL_in_flush_option10037);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleflush_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CACHE_SYMBOL1895_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CACHE_SYMBOL1895));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CACHE_SYMBOL1895_tree);
        	        }

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:2090:4: STATUS_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        STATUS_SYMBOL1896 = (pANTLR3_COMMON_TOKEN) MATCHT(STATUS_SYMBOL, &FOLLOW_STATUS_SYMBOL_in_flush_option10042);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleflush_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        STATUS_SYMBOL1896_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STATUS_SYMBOL1896));
        	        ADAPTOR->addChild(ADAPTOR, root_0, STATUS_SYMBOL1896_tree);
        	        }

        	    }
        	    break;
        	case 8:
        	    // MySQL.g:2091:4: USER_RESOURCES_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        USER_RESOURCES_SYMBOL1897 = (pANTLR3_COMMON_TOKEN) MATCHT(USER_RESOURCES_SYMBOL, &FOLLOW_USER_RESOURCES_SYMBOL_in_flush_option10047);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleflush_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        USER_RESOURCES_SYMBOL1897_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USER_RESOURCES_SYMBOL1897));
        	        ADAPTOR->addChild(ADAPTOR, root_0, USER_RESOURCES_SYMBOL1897_tree);
        	        }

        	    }
        	    break;
        	case 9:
        	    // MySQL.g:2092: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_SYMBOL1898 = (pANTLR3_COMMON_TOKEN) MATCHT(OPTIMIZER_COSTS_SYMBOL, &FOLLOW_OPTIMIZER_COSTS_SYMBOL_in_flush_option10054);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleflush_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPTIMIZER_COSTS_SYMBOL1898_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPTIMIZER_COSTS_SYMBOL1898));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPTIMIZER_COSTS_SYMBOL1898_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:2095: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    set1899;

    pANTLR3_BASE_TREE set1899_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1899       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1899_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2095:9: ( BINARY_SYMBOL | ENGINE_SYMBOL | ERROR_SYMBOL | GENERAL_SYMBOL | SLOW_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set1899=(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, set1899))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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:2103: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    set1900;
    pANTLR3_COMMON_TOKEN    WITH_SYMBOL1901;
    pANTLR3_COMMON_TOKEN    READ_SYMBOL1902;
    pANTLR3_COMMON_TOKEN    LOCK_SYMBOL1903;
    MySQLParser_identifier_list_return identifier_list1904;
    #undef	RETURN_TYPE_identifier_list1904
    #define	RETURN_TYPE_identifier_list1904 MySQLParser_identifier_list_return

    MySQLParser_flush_tables_options_return flush_tables_options1905;
    #undef	RETURN_TYPE_flush_tables_options1905
    #define	RETURN_TYPE_flush_tables_options1905 MySQLParser_flush_tables_options_return

    pANTLR3_BASE_TREE set1900_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;

    set1900       = NULL;
    WITH_SYMBOL1901       = NULL;
    READ_SYMBOL1902       = NULL;
    LOCK_SYMBOL1903       = NULL;
    identifier_list1904.tree = NULL;

    flush_tables_options1905.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1900_tree   = NULL;
    WITH_SYMBOL1901_tree   = NULL;
    READ_SYMBOL1902_tree   = NULL;
    LOCK_SYMBOL1903_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2103:13: ( ( TABLES_SYMBOL | TABLE_SYMBOL ) ( WITH_SYMBOL READ_SYMBOL LOCK_SYMBOL | identifier_list ( flush_tables_options )? )? )
        // MySQL.g:2104:2: ( TABLES_SYMBOL | TABLE_SYMBOL ) ( WITH_SYMBOL READ_SYMBOL LOCK_SYMBOL | identifier_list ( flush_tables_options )? )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set1900=(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, set1900))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
                EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
                EXCEPTION->expectingSet = NULL;

                goto ruleflush_tablesEx;
            }


            // MySQL.g:2105: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:2106:3: WITH_SYMBOL READ_SYMBOL LOCK_SYMBOL
            	    {
            	        WITH_SYMBOL1901 = (pANTLR3_COMMON_TOKEN) MATCHT(WITH_SYMBOL, &FOLLOW_WITH_SYMBOL_in_flush_tables10105);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleflush_tablesEx;
            	        }
            	        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_tables10107);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleflush_tablesEx;
            	        }
            	        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_tables10109);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleflush_tablesEx;
            	        }
            	        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;
            	case 2:
            	    // MySQL.g:2107:5: identifier_list ( flush_tables_options )?
            	    {
            	        FOLLOWPUSH(FOLLOW_identifier_list_in_flush_tables10115);
            	        identifier_list1904=identifier_list(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleflush_tablesEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier_list1904.tree);

            	        // MySQL.g:2107: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:2107:21: flush_tables_options
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_flush_tables_options_in_flush_tables10117);
            	        	        flush_tables_options1905=flush_tables_options(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleflush_tablesEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, flush_tables_options1905.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:2111: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_SYMBOL1906;
    pANTLR3_COMMON_TOKEN    EXPORT_SYMBOL1907;
    pANTLR3_COMMON_TOKEN    WITH_SYMBOL1908;
    pANTLR3_COMMON_TOKEN    READ_SYMBOL1909;
    pANTLR3_COMMON_TOKEN    LOCK_SYMBOL1910;

    pANTLR3_BASE_TREE FOR_SYMBOL1906_tree;
    pANTLR3_BASE_TREE EXPORT_SYMBOL1907_tree;
    pANTLR3_BASE_TREE WITH_SYMBOL1908_tree;
    pANTLR3_BASE_TREE READ_SYMBOL1909_tree;
    pANTLR3_BASE_TREE LOCK_SYMBOL1910_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    FOR_SYMBOL1906       = NULL;
    EXPORT_SYMBOL1907       = NULL;
    WITH_SYMBOL1908       = NULL;
    READ_SYMBOL1909       = NULL;
    LOCK_SYMBOL1910       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    FOR_SYMBOL1906_tree   = NULL;
    EXPORT_SYMBOL1907_tree   = NULL;
    WITH_SYMBOL1908_tree   = NULL;
    READ_SYMBOL1909_tree   = NULL;
    LOCK_SYMBOL1910_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2111: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:2112: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_SYMBOL1906 = (pANTLR3_COMMON_TOKEN) MATCHT(FOR_SYMBOL, &FOLLOW_FOR_SYMBOL_in_flush_tables_options10133);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleflush_tables_optionsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FOR_SYMBOL1906_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOR_SYMBOL1906));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FOR_SYMBOL1906_tree);
        	        }

        	        EXPORT_SYMBOL1907 = (pANTLR3_COMMON_TOKEN) MATCHT(EXPORT_SYMBOL, &FOLLOW_EXPORT_SYMBOL_in_flush_tables_options10135);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleflush_tables_optionsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EXPORT_SYMBOL1907_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EXPORT_SYMBOL1907));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EXPORT_SYMBOL1907_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2113:4: WITH_SYMBOL READ_SYMBOL LOCK_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        WITH_SYMBOL1908 = (pANTLR3_COMMON_TOKEN) MATCHT(WITH_SYMBOL, &FOLLOW_WITH_SYMBOL_in_flush_tables_options10140);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleflush_tables_optionsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        WITH_SYMBOL1908_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WITH_SYMBOL1908));
        	        ADAPTOR->addChild(ADAPTOR, root_0, WITH_SYMBOL1908_tree);
        	        }

        	        READ_SYMBOL1909 = (pANTLR3_COMMON_TOKEN) MATCHT(READ_SYMBOL, &FOLLOW_READ_SYMBOL_in_flush_tables_options10142);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleflush_tables_optionsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        READ_SYMBOL1909_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, READ_SYMBOL1909));
        	        ADAPTOR->addChild(ADAPTOR, root_0, READ_SYMBOL1909_tree);
        	        }

        	        LOCK_SYMBOL1910 = (pANTLR3_COMMON_TOKEN) MATCHT(LOCK_SYMBOL, &FOLLOW_LOCK_SYMBOL_in_flush_tables_options10144);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleflush_tables_optionsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LOCK_SYMBOL1910_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOCK_SYMBOL1910));
        	        ADAPTOR->addChild(ADAPTOR, root_0, LOCK_SYMBOL1910_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:2116: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    set1913;
    pANTLR3_COMMON_TOKEN    IGNORE_SYMBOL1915;
    pANTLR3_COMMON_TOKEN    LEAVES_SYMBOL1916;
    MySQLParser_table_ref_return table_ref1911;
    #undef	RETURN_TYPE_table_ref1911
    #define	RETURN_TYPE_table_ref1911 MySQLParser_table_ref_return

    MySQLParser_load_table_index_partion_return load_table_index_partion1912;
    #undef	RETURN_TYPE_load_table_index_partion1912
    #define	RETURN_TYPE_load_table_index_partion1912 MySQLParser_load_table_index_partion_return

    MySQLParser_identifier_list_with_parentheses_return identifier_list_with_parentheses1914;
    #undef	RETURN_TYPE_identifier_list_with_parentheses1914
    #define	RETURN_TYPE_identifier_list_with_parentheses1914 MySQLParser_identifier_list_with_parentheses_return

    pANTLR3_BASE_TREE set1913_tree;
    pANTLR3_BASE_TREE IGNORE_SYMBOL1915_tree;
    pANTLR3_BASE_TREE LEAVES_SYMBOL1916_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1913       = NULL;
    IGNORE_SYMBOL1915       = NULL;
    LEAVES_SYMBOL1916       = NULL;
    table_ref1911.tree = NULL;

    load_table_index_partion1912.tree = NULL;

    identifier_list_with_parentheses1914.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1913_tree   = NULL;
    IGNORE_SYMBOL1915_tree   = NULL;
    LEAVES_SYMBOL1916_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2116:22: ( table_ref ( load_table_index_partion )? ( ( INDEX_SYMBOL | KEY_SYMBOL )? identifier_list_with_parentheses )? ( IGNORE_SYMBOL LEAVES_SYMBOL )? )
        // MySQL.g:2117: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_list10153);
            table_ref1911=table_ref(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleload_table_index_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref1911.tree);

            // MySQL.g:2117: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:2117:12: load_table_index_partion
            	    {
            	        FOLLOWPUSH(FOLLOW_load_table_index_partion_in_load_table_index_list10155);
            	        load_table_index_partion1912=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_partion1912.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:2118: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:2118:4: ( INDEX_SYMBOL | KEY_SYMBOL )? identifier_list_with_parentheses
            	    {
            	        // MySQL.g:2118: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:
            	        	    {
            	        	        set1913=(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, set1913))
            	        	            );
            	        	            PERRORRECOVERY=ANTLR3_FALSE;
            	        	            FAILEDFLAG=ANTLR3_FALSE;

            	        	        }
            	        	        else
            	        	        {
            	        	            if (BACKTRACKING>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_list10170);
            	        identifier_list_with_parentheses1914=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_parentheses1914.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:2118:68: ( IGNORE_SYMBOL LEAVES_SYMBOL )?
            {
                int alt596=2;
                switch ( LA(1) )
                {
                    case IGNORE_SYMBOL:
                    	{
                    		alt596=1;
                    	}
                        break;
                }

                switch (alt596)
                {
            	case 1:
            	    // MySQL.g:2118:69: IGNORE_SYMBOL LEAVES_SYMBOL
            	    {
            	        IGNORE_SYMBOL1915 = (pANTLR3_COMMON_TOKEN) MATCHT(IGNORE_SYMBOL, &FOLLOW_IGNORE_SYMBOL_in_load_table_index_list10175);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleload_table_index_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        IGNORE_SYMBOL1915_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IGNORE_SYMBOL1915));
            	        ADAPTOR->addChild(ADAPTOR, root_0, IGNORE_SYMBOL1915_tree);
            	        }

            	        LEAVES_SYMBOL1916 = (pANTLR3_COMMON_TOKEN) MATCHT(LEAVES_SYMBOL, &FOLLOW_LEAVES_SYMBOL_in_load_table_index_list10177);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleload_table_index_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        LEAVES_SYMBOL1916_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LEAVES_SYMBOL1916));
            	        ADAPTOR->addChild(ADAPTOR, root_0, LEAVES_SYMBOL1916_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:2121: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_SYMBOL1917;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1918;
    pANTLR3_COMMON_TOKEN    ALL_SYMBOL1920;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1921;
    MySQLParser_identifier_list_return identifier_list1919;
    #undef	RETURN_TYPE_identifier_list1919
    #define	RETURN_TYPE_identifier_list1919 MySQLParser_identifier_list_return

    pANTLR3_BASE_TREE PARTITION_SYMBOL1917_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1918_tree;
    pANTLR3_BASE_TREE ALL_SYMBOL1920_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1921_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    PARTITION_SYMBOL1917       = NULL;
    OPEN_PAR_SYMBOL1918       = NULL;
    ALL_SYMBOL1920       = NULL;
    CLOSE_PAR_SYMBOL1921       = NULL;
    identifier_list1919.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    PARTITION_SYMBOL1917_tree   = NULL;
    OPEN_PAR_SYMBOL1918_tree   = NULL;
    ALL_SYMBOL1920_tree   = NULL;
    CLOSE_PAR_SYMBOL1921_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2121:25: ({...}? => ( PARTITION_SYMBOL OPEN_PAR_SYMBOL ( identifier_list | ALL_SYMBOL ) CLOSE_PAR_SYMBOL ) )
        // MySQL.g:2122: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:2122:32: ( PARTITION_SYMBOL OPEN_PAR_SYMBOL ( identifier_list | ALL_SYMBOL ) CLOSE_PAR_SYMBOL )
            // MySQL.g:2122:33: PARTITION_SYMBOL OPEN_PAR_SYMBOL ( identifier_list | ALL_SYMBOL ) CLOSE_PAR_SYMBOL
            {
                PARTITION_SYMBOL1917 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITION_SYMBOL, &FOLLOW_PARTITION_SYMBOL_in_load_table_index_partion10193);
                if  (HASEXCEPTION())
                {
                    goto ruleload_table_index_partionEx;
                }
                if (HASFAILED())
                {
                    return retval;
                }

                if ( BACKTRACKING==0 ) {
                PARTITION_SYMBOL1917_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARTITION_SYMBOL1917));
                ADAPTOR->addChild(ADAPTOR, root_0, PARTITION_SYMBOL1917_tree);
                }

                OPEN_PAR_SYMBOL1918 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_load_table_index_partion10195);
                if  (HASEXCEPTION())
                {
                    goto ruleload_table_index_partionEx;
                }
                if (HASFAILED())
                {
                    return retval;
                }

                if ( BACKTRACKING==0 ) {
                OPEN_PAR_SYMBOL1918_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1918));
                ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1918_tree);
                }

                // MySQL.g:2122: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:2122:67: identifier_list
                	    {
                	        FOLLOWPUSH(FOLLOW_identifier_list_in_load_table_index_partion10198);
                	        identifier_list1919=identifier_list(ctx);

                	        FOLLOWPOP();
                	        if  (HASEXCEPTION())
                	        {
                	            goto ruleload_table_index_partionEx;
                	        }
                	        if (HASFAILED())
                	        {
                	            return retval;
                	        }

                	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier_list1919.tree);

                	    }
                	    break;
                	case 2:
                	    // MySQL.g:2122:85: ALL_SYMBOL
                	    {
                	        ALL_SYMBOL1920 = (pANTLR3_COMMON_TOKEN) MATCHT(ALL_SYMBOL, &FOLLOW_ALL_SYMBOL_in_load_table_index_partion10202);
                	        if  (HASEXCEPTION())
                	        {
                	            goto ruleload_table_index_partionEx;
                	        }
                	        if (HASFAILED())
                	        {
                	            return retval;
                	        }

                	        if ( BACKTRACKING==0 ) {
                	        ALL_SYMBOL1920_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ALL_SYMBOL1920));
                	        ADAPTOR->addChild(ADAPTOR, root_0, ALL_SYMBOL1920_tree);
                	        }

                	    }
                	    break;

                    }
                }

                CLOSE_PAR_SYMBOL1921 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_load_table_index_partion10205);
                if  (HASEXCEPTION())
                {
                    goto ruleload_table_index_partionEx;
                }
                if (HASFAILED())
                {
                    return retval;
                }

                if ( BACKTRACKING==0 ) {
                CLOSE_PAR_SYMBOL1921_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1921));
                ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1921_tree);
                }

            }


        }

    }

    // 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:2125: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_SYMBOL1922;
    pANTLR3_COMMON_TOKEN    QUERY_SYMBOL1923;
    pANTLR3_COMMON_TOKEN    CACHE_SYMBOL1924;
    pANTLR3_COMMON_TOKEN    SLAVE_SYMBOL1925;
    pANTLR3_COMMON_TOKEN    ALL_SYMBOL1926;
    MySQLParser_channel_return channel1927;
    #undef	RETURN_TYPE_channel1927
    #define	RETURN_TYPE_channel1927 MySQLParser_channel_return

    pANTLR3_BASE_TREE MASTER_SYMBOL1922_tree;
    pANTLR3_BASE_TREE QUERY_SYMBOL1923_tree;
    pANTLR3_BASE_TREE CACHE_SYMBOL1924_tree;
    pANTLR3_BASE_TREE SLAVE_SYMBOL1925_tree;
    pANTLR3_BASE_TREE ALL_SYMBOL1926_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    MASTER_SYMBOL1922       = NULL;
    QUERY_SYMBOL1923       = NULL;
    CACHE_SYMBOL1924       = NULL;
    SLAVE_SYMBOL1925       = NULL;
    ALL_SYMBOL1926       = NULL;
    channel1927.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    MASTER_SYMBOL1922_tree   = NULL;
    QUERY_SYMBOL1923_tree   = NULL;
    CACHE_SYMBOL1924_tree   = NULL;
    SLAVE_SYMBOL1925_tree   = NULL;
    ALL_SYMBOL1926_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2125: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:2126:2: MASTER_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_SYMBOL1922 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_SYMBOL, &FOLLOW_MASTER_SYMBOL_in_reset_option10215);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereset_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_SYMBOL1922_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_SYMBOL1922));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_SYMBOL1922_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2127:4: QUERY_SYMBOL CACHE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        QUERY_SYMBOL1923 = (pANTLR3_COMMON_TOKEN) MATCHT(QUERY_SYMBOL, &FOLLOW_QUERY_SYMBOL_in_reset_option10220);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereset_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        QUERY_SYMBOL1923_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, QUERY_SYMBOL1923));
        	        ADAPTOR->addChild(ADAPTOR, root_0, QUERY_SYMBOL1923_tree);
        	        }

        	        CACHE_SYMBOL1924 = (pANTLR3_COMMON_TOKEN) MATCHT(CACHE_SYMBOL, &FOLLOW_CACHE_SYMBOL_in_reset_option10222);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereset_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CACHE_SYMBOL1924_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CACHE_SYMBOL1924));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CACHE_SYMBOL1924_tree);
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2128:4: SLAVE_SYMBOL ( ALL_SYMBOL )? ( channel )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SLAVE_SYMBOL1925 = (pANTLR3_COMMON_TOKEN) MATCHT(SLAVE_SYMBOL, &FOLLOW_SLAVE_SYMBOL_in_reset_option10227);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereset_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SLAVE_SYMBOL1925_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SLAVE_SYMBOL1925));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SLAVE_SYMBOL1925_tree);
        	        }

        	        // MySQL.g:2128:17: ( ALL_SYMBOL )?
        	        {
        	            int alt598=2;
        	            switch ( LA(1) )
        	            {
        	                case ALL_SYMBOL:
        	                	{
        	                		alt598=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt598)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2128:17: ALL_SYMBOL
        	        	    {
        	        	        ALL_SYMBOL1926 = (pANTLR3_COMMON_TOKEN) MATCHT(ALL_SYMBOL, &FOLLOW_ALL_SYMBOL_in_reset_option10229);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulereset_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        ALL_SYMBOL1926_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ALL_SYMBOL1926));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, ALL_SYMBOL1926_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:2128: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:2128:29: channel
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_channel_in_reset_option10232);
        	        	        channel1927=channel(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulereset_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, channel1927.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:2133: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_SYMBOL1932;
    pANTLR3_COMMON_TOKEN    PARTITIONS_SYMBOL1933;
    pANTLR3_COMMON_TOKEN    FORMAT_SYMBOL1934;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1935;
    pANTLR3_COMMON_TOKEN    HELP_SYMBOL1938;
    MySQLParser_describe_command_return describe_command1928;
    #undef	RETURN_TYPE_describe_command1928
    #define	RETURN_TYPE_describe_command1928 MySQLParser_describe_command_return

    MySQLParser_table_ref_return table_ref1929;
    #undef	RETURN_TYPE_table_ref1929
    #define	RETURN_TYPE_table_ref1929 MySQLParser_table_ref_return

    MySQLParser_text_string_return text_string1930;
    #undef	RETURN_TYPE_text_string1930
    #define	RETURN_TYPE_text_string1930 MySQLParser_text_string_return

    MySQLParser_identifier_return identifier1931;
    #undef	RETURN_TYPE_identifier1931
    #define	RETURN_TYPE_identifier1931 MySQLParser_identifier_return

    MySQLParser_text_or_identifier_return text_or_identifier1936;
    #undef	RETURN_TYPE_text_or_identifier1936
    #define	RETURN_TYPE_text_or_identifier1936 MySQLParser_text_or_identifier_return

    MySQLParser_explainable_statement_return explainable_statement1937;
    #undef	RETURN_TYPE_explainable_statement1937
    #define	RETURN_TYPE_explainable_statement1937 MySQLParser_explainable_statement_return

    MySQLParser_text_or_identifier_return text_or_identifier1939;
    #undef	RETURN_TYPE_text_or_identifier1939
    #define	RETURN_TYPE_text_or_identifier1939 MySQLParser_text_or_identifier_return

    MySQLParser_use_command_return use_command1940;
    #undef	RETURN_TYPE_use_command1940
    #define	RETURN_TYPE_use_command1940 MySQLParser_use_command_return

    pANTLR3_BASE_TREE EXTENDED_SYMBOL1932_tree;
    pANTLR3_BASE_TREE PARTITIONS_SYMBOL1933_tree;
    pANTLR3_BASE_TREE FORMAT_SYMBOL1934_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1935_tree;
    pANTLR3_BASE_TREE HELP_SYMBOL1938_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    EXTENDED_SYMBOL1932       = NULL;
    PARTITIONS_SYMBOL1933       = NULL;
    FORMAT_SYMBOL1934       = NULL;
    EQUAL_OPERATOR1935       = NULL;
    HELP_SYMBOL1938       = NULL;
    describe_command1928.tree = NULL;

    table_ref1929.tree = NULL;

    text_string1930.tree = NULL;

    identifier1931.tree = NULL;

    text_or_identifier1936.tree = NULL;

    explainable_statement1937.tree = NULL;

    text_or_identifier1939.tree = NULL;

    use_command1940.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    EXTENDED_SYMBOL1932_tree   = NULL;
    PARTITIONS_SYMBOL1933_tree   = NULL;
    FORMAT_SYMBOL1934_tree   = NULL;
    EQUAL_OPERATOR1935_tree   = NULL;
    HELP_SYMBOL1938_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2133: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:2134: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_statement10244);
        	        describe_command1928=describe_command(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleutility_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, describe_command1928.tree);

        	        // MySQL.g:2135: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 == SEMICOLON_SYMBOL || LA603_4 == SINGLE_QUOTED_TEXT || ((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))))
        	                        {
        	                            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 == SEMICOLON_SYMBOL || LA603_5 == SINGLE_QUOTED_TEXT || ((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))))
        	                        {
        	                            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 == SEMICOLON_SYMBOL || LA603_7 == SINGLE_QUOTED_TEXT || ((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))))
        	                        {
        	                            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:2136:4: table_ref ( text_string | identifier )?
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_table_ref_in_utility_statement10253);
        	        	        table_ref1929=table_ref(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleutility_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref1929.tree);

        	        	        // MySQL.g:2136:14: ( text_string | identifier )?
        	        	        {
        	        	            int alt601=3;
        	        	            {
        	        	                int LA601_0 = LA(1);
        	        	                if ( (LA601_0 == SINGLE_QUOTED_TEXT || LA601_0 == BIN_NUMBER || LA601_0 == HEX_NUMBER))
        	        	                {
        	        	                    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:2136:15: text_string
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_text_string_in_utility_statement10256);
        	        	        	        text_string1930=text_string(ctx);

        	        	        	        FOLLOWPOP();
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruleutility_statementEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string1930.tree);

        	        	        	    }
        	        	        	    break;
        	        	        	case 2:
        	        	        	    // MySQL.g:2136:29: identifier
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_identifier_in_utility_statement10260);
        	        	        	        identifier1931=identifier(ctx);

        	        	        	        FOLLOWPOP();
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruleutility_statementEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier1931.tree);

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:2138:5: ( EXTENDED_SYMBOL |{...}? PARTITIONS_SYMBOL |{...}? FORMAT_SYMBOL EQUAL_OPERATOR text_or_identifier )? explainable_statement
        	        	    {
        	        	        // MySQL.g:2138: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:2141:6: EXTENDED_SYMBOL
        	        	        	    {
        	        	        	        EXTENDED_SYMBOL1932 = (pANTLR3_COMMON_TOKEN) MATCHT(EXTENDED_SYMBOL, &FOLLOW_EXTENDED_SYMBOL_in_utility_statement10292);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruleutility_statementEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        EXTENDED_SYMBOL1932_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EXTENDED_SYMBOL1932));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EXTENDED_SYMBOL1932_tree);
        	        	        	        }

        	        	        	    }
        	        	        	    break;
        	        	        	case 2:
        	        	        	    // MySQL.g:2142: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_SYMBOL1933 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITIONS_SYMBOL, &FOLLOW_PARTITIONS_SYMBOL_in_utility_statement10304);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruleutility_statementEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        PARTITIONS_SYMBOL1933_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARTITIONS_SYMBOL1933));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, PARTITIONS_SYMBOL1933_tree);
        	        	        	        }

        	        	        	    }
        	        	        	    break;
        	        	        	case 3:
        	        	        	    // MySQL.g:2143: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_SYMBOL1934 = (pANTLR3_COMMON_TOKEN) MATCHT(FORMAT_SYMBOL, &FOLLOW_FORMAT_SYMBOL_in_utility_statement10316);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruleutility_statementEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        FORMAT_SYMBOL1934_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FORMAT_SYMBOL1934));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, FORMAT_SYMBOL1934_tree);
        	        	        	        }

        	        	        	        EQUAL_OPERATOR1935 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_utility_statement10318);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruleutility_statementEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        EQUAL_OPERATOR1935_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1935));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1935_tree);
        	        	        	        }

        	        	        	        FOLLOWPUSH(FOLLOW_text_or_identifier_in_utility_statement10320);
        	        	        	        text_or_identifier1936=text_or_identifier(ctx);

        	        	        	        FOLLOWPOP();
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruleutility_statementEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_or_identifier1936.tree);

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_explainable_statement_in_utility_statement10329);
        	        	        explainable_statement1937=explainable_statement(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleutility_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, explainable_statement1937.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2146:4: HELP_SYMBOL ^ text_or_identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        HELP_SYMBOL1938 = (pANTLR3_COMMON_TOKEN) MATCHT(HELP_SYMBOL, &FOLLOW_HELP_SYMBOL_in_utility_statement10338);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleutility_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        HELP_SYMBOL1938_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, HELP_SYMBOL1938))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, HELP_SYMBOL1938_tree, root_0));
        	        }

        	        FOLLOWPUSH(FOLLOW_text_or_identifier_in_utility_statement10341);
        	        text_or_identifier1939=text_or_identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleutility_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_or_identifier1939.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2147:4: use_command
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_use_command_in_utility_statement10346);
        	        use_command1940=use_command(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleutility_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, use_command1940.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:2150: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_SYMBOL1941;
    pANTLR3_COMMON_TOKEN    DESC_SYMBOL1942;

    pANTLR3_BASE_TREE DESCRIBE_SYMBOL1941_tree;
    pANTLR3_BASE_TREE DESC_SYMBOL1942_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DESCRIBE_SYMBOL1941       = NULL;
    DESC_SYMBOL1942       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DESCRIBE_SYMBOL1941_tree   = NULL;
    DESC_SYMBOL1942_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2150: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:2151:2: DESCRIBE_SYMBOL ^
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DESCRIBE_SYMBOL1941 = (pANTLR3_COMMON_TOKEN) MATCHT(DESCRIBE_SYMBOL, &FOLLOW_DESCRIBE_SYMBOL_in_describe_command10355);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledescribe_commandEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DESCRIBE_SYMBOL1941_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DESCRIBE_SYMBOL1941))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, DESCRIBE_SYMBOL1941_tree, root_0));
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2151:21: DESC_SYMBOL ^
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DESC_SYMBOL1942 = (pANTLR3_COMMON_TOKEN) MATCHT(DESC_SYMBOL, &FOLLOW_DESC_SYMBOL_in_describe_command10360);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledescribe_commandEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DESC_SYMBOL1942_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DESC_SYMBOL1942))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, DESC_SYMBOL1942_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:2155: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_SYMBOL1948;
    pANTLR3_COMMON_TOKEN    CONNECTION_SYMBOL1949;
    MySQLParser_select_statement_return select_statement1943;
    #undef	RETURN_TYPE_select_statement1943
    #define	RETURN_TYPE_select_statement1943 MySQLParser_select_statement_return

    MySQLParser_delete_statement_return delete_statement1944;
    #undef	RETURN_TYPE_delete_statement1944
    #define	RETURN_TYPE_delete_statement1944 MySQLParser_delete_statement_return

    MySQLParser_insert_statement_return insert_statement1945;
    #undef	RETURN_TYPE_insert_statement1945
    #define	RETURN_TYPE_insert_statement1945 MySQLParser_insert_statement_return

    MySQLParser_replace_statement_return replace_statement1946;
    #undef	RETURN_TYPE_replace_statement1946
    #define	RETURN_TYPE_replace_statement1946 MySQLParser_replace_statement_return

    MySQLParser_update_statement_return update_statement1947;
    #undef	RETURN_TYPE_update_statement1947
    #define	RETURN_TYPE_update_statement1947 MySQLParser_update_statement_return

    MySQLParser_real_ulong_number_return real_ulong_number1950;
    #undef	RETURN_TYPE_real_ulong_number1950
    #define	RETURN_TYPE_real_ulong_number1950 MySQLParser_real_ulong_number_return

    pANTLR3_BASE_TREE FOR_SYMBOL1948_tree;
    pANTLR3_BASE_TREE CONNECTION_SYMBOL1949_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    FOR_SYMBOL1948       = NULL;
    CONNECTION_SYMBOL1949       = NULL;
    select_statement1943.tree = NULL;

    delete_statement1944.tree = NULL;

    insert_statement1945.tree = NULL;

    replace_statement1946.tree = NULL;

    update_statement1947.tree = NULL;

    real_ulong_number1950.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    FOR_SYMBOL1948_tree   = NULL;
    CONNECTION_SYMBOL1949_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2155: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:2156:2: select_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_select_statement_in_explainable_statement10371);
        	        select_statement1943=select_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleexplainable_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_statement1943.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2157: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:2158: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:2159:4: delete_statement
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_delete_statement_in_explainable_statement10385);
        	        	        delete_statement1944=delete_statement(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleexplainable_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, delete_statement1944.tree);

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:2160:6: insert_statement
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_insert_statement_in_explainable_statement10392);
        	        	        insert_statement1945=insert_statement(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleexplainable_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, insert_statement1945.tree);

        	        	    }
        	        	    break;
        	        	case 3:
        	        	    // MySQL.g:2161:6: replace_statement
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_replace_statement_in_explainable_statement10399);
        	        	        replace_statement1946=replace_statement(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleexplainable_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, replace_statement1946.tree);

        	        	    }
        	        	    break;
        	        	case 4:
        	        	    // MySQL.g:2162:6: update_statement
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_update_statement_in_explainable_statement10406);
        	        	        update_statement1947=update_statement(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleexplainable_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, update_statement1947.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2164: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_SYMBOL1948 = (pANTLR3_COMMON_TOKEN) MATCHT(FOR_SYMBOL, &FOLLOW_FOR_SYMBOL_in_explainable_statement10417);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleexplainable_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FOR_SYMBOL1948_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOR_SYMBOL1948));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FOR_SYMBOL1948_tree);
        	        }

        	        CONNECTION_SYMBOL1949 = (pANTLR3_COMMON_TOKEN) MATCHT(CONNECTION_SYMBOL, &FOLLOW_CONNECTION_SYMBOL_in_explainable_statement10419);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleexplainable_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CONNECTION_SYMBOL1949_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CONNECTION_SYMBOL1949));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CONNECTION_SYMBOL1949_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_real_ulong_number_in_explainable_statement10421);
        	        real_ulong_number1950=real_ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleexplainable_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, real_ulong_number1950.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:2167: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_SYMBOL1951;
    MySQLParser_identifier_return identifier1952;
    #undef	RETURN_TYPE_identifier1952
    #define	RETURN_TYPE_identifier1952 MySQLParser_identifier_return

    pANTLR3_BASE_TREE USE_SYMBOL1951_tree;
    pANTLR3_REWRITE_RULE_TOKEN_STREAM stream_USE_SYMBOL;
    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    USE_SYMBOL1951       = NULL;
    identifier1952.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    USE_SYMBOL1951_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:2167:12: ( USE_SYMBOL identifier -> ^( USE_SYMBOL SCHEMA_REF_TOKEN identifier ) )
        // MySQL.g:2168:2: USE_SYMBOL identifier
        {
            USE_SYMBOL1951 = (pANTLR3_COMMON_TOKEN) MATCHT(USE_SYMBOL, &FOLLOW_USE_SYMBOL_in_use_command10430);
            if  (HASEXCEPTION())
            {
                goto ruleuse_commandEx;
            }
            if (HASFAILED())
            {
                return retval;
            }
             
            if ( BACKTRACKING==0 ) { CREATE_stream_USE_SYMBOL; stream_USE_SYMBOL->add(stream_USE_SYMBOL, USE_SYMBOL1951, NULL); }


            FOLLOWPUSH(FOLLOW_identifier_in_use_command10432);
            identifier1952=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleuse_commandEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_identifier; stream_identifier->add(stream_identifier, identifier1952.tree, NULL); }

            /* AST REWRITE
             * elements          : identifier, USE_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;
            	// 2168:24: -> ^( USE_SYMBOL SCHEMA_REF_TOKEN identifier )
            	{
            	    // MySQL.g:2168: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:2176: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_expression1953;
    #undef	RETURN_TYPE_logical_or_expression1953
    #define	RETURN_TYPE_logical_or_expression1953 MySQLParser_logical_or_expression_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_logical_or_expression;
    /* Initialize rule variables
     */

    root_0 = NULL;

    logical_or_expression1953.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:2176:11: ( logical_or_expression -> ^( EXPRESSION_TOKEN logical_or_expression ) )
        // MySQL.g:2177:2: logical_or_expression
        {
            FOLLOWPUSH(FOLLOW_logical_or_expression_in_expression10456);
            logical_or_expression1953=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_expression1953.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;
            	// 2177:24: -> ^( EXPRESSION_TOKEN logical_or_expression )
            	{
            	    // MySQL.g:2177: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:2180: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    set1955;
    MySQLParser_logical_xor_expression_return logical_xor_expression1954;
    #undef	RETURN_TYPE_logical_xor_expression1954
    #define	RETURN_TYPE_logical_xor_expression1954 MySQLParser_logical_xor_expression_return

    MySQLParser_logical_xor_expression_return logical_xor_expression1956;
    #undef	RETURN_TYPE_logical_xor_expression1956
    #define	RETURN_TYPE_logical_xor_expression1956 MySQLParser_logical_xor_expression_return

    pANTLR3_BASE_TREE set1955_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1955       = NULL;
    logical_xor_expression1954.tree = NULL;

    logical_xor_expression1956.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1955_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2180:22: ( logical_xor_expression ( options {greedy=true; } : ( LOGICAL_OR_OPERATOR | OR_SYMBOL ) ^ logical_xor_expression )* )
        // MySQL.g:2181: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_expression10473);
            logical_xor_expression1954=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_expression1954.tree);

            // MySQL.g:2181:25: ( options {greedy=true; } : ( LOGICAL_OR_OPERATOR | OR_SYMBOL ) ^ logical_xor_expression )*

            for (;;)
            {
                int alt608=2;
                switch ( LA(1) )
                {
                case OR_SYMBOL:
                case LOGICAL_OR_OPERATOR:
                	{
                		alt608=1;
                	}
                    break;

                }

                switch (alt608)
                {
            	case 1:
            	    // MySQL.g:2181:55: ( LOGICAL_OR_OPERATOR | OR_SYMBOL ) ^ logical_xor_expression
            	    {
            	        set1955=(pANTLR3_COMMON_TOKEN)LT(1);

            	        set1955=(pANTLR3_COMMON_TOKEN)LT(1);

            	        if ( LA(1) == OR_SYMBOL || LA(1) == LOGICAL_OR_OPERATOR )
            	        {
            	            CONSUME();
            	            if ( BACKTRACKING==0 ) root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, 
            	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1955))
            	            , 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_expression10498);
            	        logical_xor_expression1956=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_expression1956.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:2184: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_SYMBOL1958;
    MySQLParser_logical_and_expression_return logical_and_expression1957;
    #undef	RETURN_TYPE_logical_and_expression1957
    #define	RETURN_TYPE_logical_and_expression1957 MySQLParser_logical_and_expression_return

    MySQLParser_logical_and_expression_return logical_and_expression1959;
    #undef	RETURN_TYPE_logical_and_expression1959
    #define	RETURN_TYPE_logical_and_expression1959 MySQLParser_logical_and_expression_return

    pANTLR3_BASE_TREE XOR_SYMBOL1958_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    XOR_SYMBOL1958       = NULL;
    logical_and_expression1957.tree = NULL;

    logical_and_expression1959.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    XOR_SYMBOL1958_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2184:23: ( logical_and_expression ( options {greedy=true; } : XOR_SYMBOL ^ logical_and_expression )* )
        // MySQL.g:2185: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_expression10509);
            logical_and_expression1957=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_expression1957.tree);

            // MySQL.g:2185: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:2185:55: XOR_SYMBOL ^ logical_and_expression
            	    {
            	        XOR_SYMBOL1958 = (pANTLR3_COMMON_TOKEN) MATCHT(XOR_SYMBOL, &FOLLOW_XOR_SYMBOL_in_logical_xor_expression10525);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulelogical_xor_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        XOR_SYMBOL1958_tree = 
            	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, XOR_SYMBOL1958))
            	        ;
            	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, XOR_SYMBOL1958_tree, root_0));
            	        }

            	        FOLLOWPUSH(FOLLOW_logical_and_expression_in_logical_xor_expression10528);
            	        logical_and_expression1959=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_expression1959.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:2188: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    set1961;
    MySQLParser_logical_not_expression_return logical_not_expression1960;
    #undef	RETURN_TYPE_logical_not_expression1960
    #define	RETURN_TYPE_logical_not_expression1960 MySQLParser_logical_not_expression_return

    MySQLParser_logical_not_expression_return logical_not_expression1962;
    #undef	RETURN_TYPE_logical_not_expression1962
    #define	RETURN_TYPE_logical_not_expression1962 MySQLParser_logical_not_expression_return

    pANTLR3_BASE_TREE set1961_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1961       = NULL;
    logical_not_expression1960.tree = NULL;

    logical_not_expression1962.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1961_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2188:23: ( logical_not_expression ( options {greedy=true; } : ( LOGICAL_AND_OPERATOR | AND_SYMBOL ) ^ logical_not_expression )* )
        // MySQL.g:2189: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_expression10539);
            logical_not_expression1960=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_expression1960.tree);

            // MySQL.g:2189: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:2189:55: ( LOGICAL_AND_OPERATOR | AND_SYMBOL ) ^ logical_not_expression
            	    {
            	        set1961=(pANTLR3_COMMON_TOKEN)LT(1);

            	        set1961=(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, set1961))
            	            , 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_expression10564);
            	        logical_not_expression1962=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_expression1962.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:2192: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_SYMBOL1963;
    MySQLParser_logical_not_expression_return logical_not_expression1964;
    #undef	RETURN_TYPE_logical_not_expression1964
    #define	RETURN_TYPE_logical_not_expression1964 MySQLParser_logical_not_expression_return

    MySQLParser_boolean_primary_expression_return boolean_primary_expression1965;
    #undef	RETURN_TYPE_boolean_primary_expression1965
    #define	RETURN_TYPE_boolean_primary_expression1965 MySQLParser_boolean_primary_expression_return

    pANTLR3_BASE_TREE NOT_SYMBOL1963_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    NOT_SYMBOL1963       = NULL;
    logical_not_expression1964.tree = NULL;

    boolean_primary_expression1965.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    NOT_SYMBOL1963_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2192: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 == BINARY_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 == EXISTS_SYMBOL || ((LA611_0 >= EXTRACT_SYMBOL) && (LA611_0 <= FALSE_SYMBOL)) || LA611_0 == GROUP_CONCAT_SYMBOL || LA611_0 == IF_SYMBOL || LA611_0 == INSERT_SYMBOL || LA611_0 == INTERVAL_SYMBOL || LA611_0 == LEFT_SYMBOL || LA611_0 == MATCH_SYMBOL || LA611_0 == MAX_SYMBOL || 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 <= 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 >= UTC_DATE_SYMBOL) && (LA611_0 <= UTC_TIME_SYMBOL)) || LA611_0 == VALUES_SYMBOL || LA611_0 == VARIANCE_SYMBOL || LA611_0 == VAR_SAMP_SYMBOL || ((LA611_0 >= AT_AT_SIGN_SYMBOL) && (LA611_0 <= AT_TEXT_SUFFIX)) || ((LA611_0 >= BACK_TICK_QUOTED_ID) && (LA611_0 <= BIN_NUMBER)) || LA611_0 == BITWISE_NOT_OPERATOR || ((LA611_0 >= BIT_AND_SYMBOL) && (LA611_0 <= BIT_XOR_SYMBOL)) || LA611_0 == DECIMAL_NUMBER || LA611_0 == DOT_SYMBOL || LA611_0 == DOUBLE_QUOTED_TEXT || LA611_0 == FLOAT_NUMBER || ((LA611_0 >= HEX_NUMBER) && (LA611_0 <= IDENTIFIER)) || LA611_0 == INT_NUMBER || LA611_0 == LOGICAL_NOT_OPERATOR || ((LA611_0 >= LONG_NUMBER) && (LA611_0 <= MINUS_OPERATOR)) || LA611_0 == PLUS_OPERATOR || ((LA611_0 >= ULONGLONG_NUMBER) && (LA611_0 <= UNDERSCORE_CHARSET))))
                {
                    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:2193:2: NOT_SYMBOL ^ logical_not_expression
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NOT_SYMBOL1963 = (pANTLR3_COMMON_TOKEN) MATCHT(NOT_SYMBOL, &FOLLOW_NOT_SYMBOL_in_logical_not_expression10575);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelogical_not_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NOT_SYMBOL1963_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NOT_SYMBOL1963))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, NOT_SYMBOL1963_tree, root_0));
        	        }

        	        FOLLOWPUSH(FOLLOW_logical_not_expression_in_logical_not_expression10578);
        	        logical_not_expression1964=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_expression1964.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2194:4: boolean_primary_expression
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_boolean_primary_expression_in_logical_not_expression10583);
        	        boolean_primary_expression1965=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_expression1965.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:2197: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    set1968;
    pANTLR3_COMMON_TOKEN    IS_SYMBOL1971;
    pANTLR3_COMMON_TOKEN    NOT_SYMBOL1972;
    pANTLR3_COMMON_TOKEN    FALSE_SYMBOL1974;
    pANTLR3_COMMON_TOKEN    TRUE_SYMBOL1975;
    pANTLR3_COMMON_TOKEN    UNKNOWN_SYMBOL1976;
    MySQLParser_predicate_return predicate1966;
    #undef	RETURN_TYPE_predicate1966
    #define	RETURN_TYPE_predicate1966 MySQLParser_predicate_return

    MySQLParser_comparison_operator_return comparison_operator1967;
    #undef	RETURN_TYPE_comparison_operator1967
    #define	RETURN_TYPE_comparison_operator1967 MySQLParser_comparison_operator_return

    MySQLParser_subquery_return subquery1969;
    #undef	RETURN_TYPE_subquery1969
    #define	RETURN_TYPE_subquery1969 MySQLParser_subquery_return

    MySQLParser_predicate_return predicate1970;
    #undef	RETURN_TYPE_predicate1970
    #define	RETURN_TYPE_predicate1970 MySQLParser_predicate_return

    MySQLParser_null_literal_return null_literal1973;
    #undef	RETURN_TYPE_null_literal1973
    #define	RETURN_TYPE_null_literal1973 MySQLParser_null_literal_return

    pANTLR3_BASE_TREE set1968_tree;
    pANTLR3_BASE_TREE IS_SYMBOL1971_tree;
    pANTLR3_BASE_TREE NOT_SYMBOL1972_tree;
    pANTLR3_BASE_TREE FALSE_SYMBOL1974_tree;
    pANTLR3_BASE_TREE TRUE_SYMBOL1975_tree;
    pANTLR3_BASE_TREE UNKNOWN_SYMBOL1976_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1968       = NULL;
    IS_SYMBOL1971       = NULL;
    NOT_SYMBOL1972       = NULL;
    FALSE_SYMBOL1974       = NULL;
    TRUE_SYMBOL1975       = NULL;
    UNKNOWN_SYMBOL1976       = NULL;
    predicate1966.tree = NULL;

    comparison_operator1967.tree = NULL;

    subquery1969.tree = NULL;

    predicate1970.tree = NULL;

    null_literal1973.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1968_tree   = NULL;
    IS_SYMBOL1971_tree   = NULL;
    NOT_SYMBOL1972_tree   = NULL;
    FALSE_SYMBOL1974_tree   = NULL;
    TRUE_SYMBOL1975_tree   = NULL;
    UNKNOWN_SYMBOL1976_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2197: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:2198: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_expression10592);
            predicate1966=predicate(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleboolean_primary_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, predicate1966.tree);

            // MySQL.g:2199: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:2200:4: comparison_operator ^ ({...}? ( ALL_SYMBOL | ANY_SYMBOL ) subquery | predicate )
            	    {
            	        FOLLOWPUSH(FOLLOW_comparison_operator_in_boolean_primary_expression10613);
            	        comparison_operator1967=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_operator1967.tree, root_0));

            	        // MySQL.g:2201: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))
            	                        {
            	                            alt612=1;
            	                        }
            	                        else if ( (LA612_1 == EOF || ((LA612_1 >= ACCOUNT_SYMBOL) && (LA612_1 <= YEAR_SYMBOL)) || ((LA612_1 >= AND_SYMBOL) && (LA612_1 <= ASC_SYMBOL)) || LA612_1 == BETWEEN_SYMBOL || LA612_1 == COLLATE_SYMBOL || LA612_1 == CROSS_SYMBOL || ((LA612_1 >= DAY_HOUR_SYMBOL) && (LA612_1 <= DAY_SECOND_SYMBOL)) || LA612_1 == DESC_SYMBOL || LA612_1 == ELSE_SYMBOL || ((LA612_1 >= FOR_SYMBOL) && (LA612_1 <= FROM_SYMBOL)) || ((LA612_1 >= GROUP_SYMBOL) && (LA612_1 <= HAVING_SYMBOL)) || ((LA612_1 >= HOUR_MICROSECOND_SYMBOL) && (LA612_1 <= HOUR_SECOND_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA612_1 == LOCK_SYMBOL || ((LA612_1 >= MINUTE_MICROSECOND_SYMBOL) && (LA612_1 <= MINUTE_SECOND_SYMBOL)) || ((LA612_1 >= MOD_SYMBOL) && (LA612_1 <= NATURAL_SYMBOL)) || LA612_1 == NOT_SYMBOL || LA612_1 == ON_SYMBOL || ((LA612_1 >= ORDER_SYMBOL) && (LA612_1 <= OR_SYMBOL)) || 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 == 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)) || ((LA612_1 >= AS_SYMBOL) && (LA612_1 <= AT_TEXT_SUFFIX)) || ((LA612_1 >= BACK_TICK_QUOTED_ID) && (LA612_1 <= BITWISE_AND_OPERATOR)) || ((LA612_1 >= BITWISE_OR_OPERATOR) && (LA612_1 <= BITWISE_XOR_OPERATOR)) || ((LA612_1 >= CLOSE_CURLY_SYMBOL) && (LA612_1 <= CLOSE_PAR_SYMBOL)) || ((LA612_1 >= COMMA_SYMBOL) && (LA612_1 <= CONCAT_PIPES_SYMBOL)) || ((LA612_1 >= DIV_OPERATOR) && (LA612_1 <= DIV_SYMBOL)) || LA612_1 == DOT_SYMBOL || LA612_1 == DOUBLE_QUOTED_TEXT || LA612_1 == EQUAL_OPERATOR || ((LA612_1 >= GREATER_OR_EQUAL_OPERATOR) && (LA612_1 <= GREATER_THAN_OPERATOR)) || ((LA612_1 >= HEX_NUMBER) && (LA612_1 <= IDENTIFIER)) || LA612_1 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA612_1 >= LESS_OR_EQUAL_OPERATOR) && (LA612_1 <= LESS_THAN_OPERATOR)) || LA612_1 == LOGICAL_AND_OPERATOR || LA612_1 == LOGICAL_OR_OPERATOR || ((LA612_1 >= MINUS_OPERATOR) && (LA612_1 <= MOD_OPERATOR)) || ((LA612_1 >= MULT_OPERATOR) && (LA612_1 <= NULL_SAFE_EQUAL_OPERATOR)) || LA612_1 == PLUS_OPERATOR || ((LA612_1 >= SHIFT_LEFT_OPERATOR) && (LA612_1 <= SHIFT_RIGHT_OPERATOR))))
            	                        {
            	                            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 == BINARY_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 == EXISTS_SYMBOL || ((LA612_0 >= EXTRACT_SYMBOL) && (LA612_0 <= FALSE_SYMBOL)) || LA612_0 == GROUP_CONCAT_SYMBOL || LA612_0 == IF_SYMBOL || LA612_0 == INSERT_SYMBOL || LA612_0 == INTERVAL_SYMBOL || LA612_0 == LEFT_SYMBOL || LA612_0 == MATCH_SYMBOL || LA612_0 == MAX_SYMBOL || 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 <= 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 >= UTC_DATE_SYMBOL) && (LA612_0 <= UTC_TIME_SYMBOL)) || LA612_0 == VALUES_SYMBOL || LA612_0 == VARIANCE_SYMBOL || LA612_0 == VAR_SAMP_SYMBOL || ((LA612_0 >= AT_AT_SIGN_SYMBOL) && (LA612_0 <= AT_TEXT_SUFFIX)) || ((LA612_0 >= BACK_TICK_QUOTED_ID) && (LA612_0 <= BIN_NUMBER)) || LA612_0 == BITWISE_NOT_OPERATOR || ((LA612_0 >= BIT_AND_SYMBOL) && (LA612_0 <= BIT_XOR_SYMBOL)) || LA612_0 == DECIMAL_NUMBER || LA612_0 == DOT_SYMBOL || LA612_0 == DOUBLE_QUOTED_TEXT || LA612_0 == FLOAT_NUMBER || ((LA612_0 >= HEX_NUMBER) && (LA612_0 <= IDENTIFIER)) || LA612_0 == INT_NUMBER || LA612_0 == LOGICAL_NOT_OPERATOR || ((LA612_0 >= LONG_NUMBER) && (LA612_0 <= MINUS_OPERATOR)) || LA612_0 == PLUS_OPERATOR || ((LA612_0 >= ULONGLONG_NUMBER) && (LA612_0 <= UNDERSCORE_CHARSET))))
            	                {
            	                    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:2202: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";


            	        	        }

            	        	        set1968=(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, set1968))
            	        	            );
            	        	            PERRORRECOVERY=ANTLR3_FALSE;
            	        	            FAILEDFLAG=ANTLR3_FALSE;

            	        	        }
            	        	        else
            	        	        {
            	        	            if (BACKTRACKING>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_expression10635);
            	        	        subquery1969=subquery(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleboolean_primary_expressionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, subquery1969.tree);

            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:2203:7: predicate
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_predicate_in_boolean_primary_expression10643);
            	        	        predicate1970=predicate(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleboolean_primary_expressionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, predicate1970.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2205:9: ( options {greedy=true; } : IS_SYMBOL ^ ( NOT_SYMBOL )? ( null_literal | FALSE_SYMBOL | TRUE_SYMBOL | UNKNOWN_SYMBOL ) )+
            	    {
            	        // MySQL.g:2205: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:2205:39: IS_SYMBOL ^ ( NOT_SYMBOL )? ( null_literal | FALSE_SYMBOL | TRUE_SYMBOL | UNKNOWN_SYMBOL )
            	        	        {
            	        	            IS_SYMBOL1971 = (pANTLR3_COMMON_TOKEN) MATCHT(IS_SYMBOL, &FOLLOW_IS_SYMBOL_in_boolean_primary_expression10672);
            	        	            if  (HASEXCEPTION())
            	        	            {
            	        	                goto ruleboolean_primary_expressionEx;
            	        	            }
            	        	            if (HASFAILED())
            	        	            {
            	        	                return retval;
            	        	            }

            	        	            if ( BACKTRACKING==0 ) {
            	        	            IS_SYMBOL1971_tree = 
            	        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IS_SYMBOL1971))
            	        	            ;
            	        	            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, IS_SYMBOL1971_tree, root_0));
            	        	            }

            	        	            // MySQL.g:2205:50: ( NOT_SYMBOL )?
            	        	            {
            	        	                int alt613=2;
            	        	                switch ( LA(1) )
            	        	                {
            	        	                    case NOT_SYMBOL:
            	        	                    	{
            	        	                    		alt613=1;
            	        	                    	}
            	        	                        break;
            	        	                }

            	        	                switch (alt613)
            	        	                {
            	        	            	case 1:
            	        	            	    // MySQL.g:2205:50: NOT_SYMBOL
            	        	            	    {
            	        	            	        NOT_SYMBOL1972 = (pANTLR3_COMMON_TOKEN) MATCHT(NOT_SYMBOL, &FOLLOW_NOT_SYMBOL_in_boolean_primary_expression10675);
            	        	            	        if  (HASEXCEPTION())
            	        	            	        {
            	        	            	            goto ruleboolean_primary_expressionEx;
            	        	            	        }
            	        	            	        if (HASFAILED())
            	        	            	        {
            	        	            	            return retval;
            	        	            	        }

            	        	            	        if ( BACKTRACKING==0 ) {
            	        	            	        NOT_SYMBOL1972_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NOT_SYMBOL1972));
            	        	            	        ADAPTOR->addChild(ADAPTOR, root_0, NOT_SYMBOL1972_tree);
            	        	            	        }

            	        	            	    }
            	        	            	    break;

            	        	                }
            	        	            }

            	        	            // MySQL.g:2205: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:2205:64: null_literal
            	        	            	    {
            	        	            	        FOLLOWPUSH(FOLLOW_null_literal_in_boolean_primary_expression10680);
            	        	            	        null_literal1973=null_literal(ctx);

            	        	            	        FOLLOWPOP();
            	        	            	        if  (HASEXCEPTION())
            	        	            	        {
            	        	            	            goto ruleboolean_primary_expressionEx;
            	        	            	        }
            	        	            	        if (HASFAILED())
            	        	            	        {
            	        	            	            return retval;
            	        	            	        }

            	        	            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, null_literal1973.tree);

            	        	            	    }
            	        	            	    break;
            	        	            	case 2:
            	        	            	    // MySQL.g:2205:79: FALSE_SYMBOL
            	        	            	    {
            	        	            	        FALSE_SYMBOL1974 = (pANTLR3_COMMON_TOKEN) MATCHT(FALSE_SYMBOL, &FOLLOW_FALSE_SYMBOL_in_boolean_primary_expression10684);
            	        	            	        if  (HASEXCEPTION())
            	        	            	        {
            	        	            	            goto ruleboolean_primary_expressionEx;
            	        	            	        }
            	        	            	        if (HASFAILED())
            	        	            	        {
            	        	            	            return retval;
            	        	            	        }

            	        	            	        if ( BACKTRACKING==0 ) {
            	        	            	        FALSE_SYMBOL1974_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FALSE_SYMBOL1974));
            	        	            	        ADAPTOR->addChild(ADAPTOR, root_0, FALSE_SYMBOL1974_tree);
            	        	            	        }

            	        	            	    }
            	        	            	    break;
            	        	            	case 3:
            	        	            	    // MySQL.g:2205:94: TRUE_SYMBOL
            	        	            	    {
            	        	            	        TRUE_SYMBOL1975 = (pANTLR3_COMMON_TOKEN) MATCHT(TRUE_SYMBOL, &FOLLOW_TRUE_SYMBOL_in_boolean_primary_expression10688);
            	        	            	        if  (HASEXCEPTION())
            	        	            	        {
            	        	            	            goto ruleboolean_primary_expressionEx;
            	        	            	        }
            	        	            	        if (HASFAILED())
            	        	            	        {
            	        	            	            return retval;
            	        	            	        }

            	        	            	        if ( BACKTRACKING==0 ) {
            	        	            	        TRUE_SYMBOL1975_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TRUE_SYMBOL1975));
            	        	            	        ADAPTOR->addChild(ADAPTOR, root_0, TRUE_SYMBOL1975_tree);
            	        	            	        }

            	        	            	    }
            	        	            	    break;
            	        	            	case 4:
            	        	            	    // MySQL.g:2205:108: UNKNOWN_SYMBOL
            	        	            	    {
            	        	            	        UNKNOWN_SYMBOL1976 = (pANTLR3_COMMON_TOKEN) MATCHT(UNKNOWN_SYMBOL, &FOLLOW_UNKNOWN_SYMBOL_in_boolean_primary_expression10692);
            	        	            	        if  (HASEXCEPTION())
            	        	            	        {
            	        	            	            goto ruleboolean_primary_expressionEx;
            	        	            	        }
            	        	            	        if (HASFAILED())
            	        	            	        {
            	        	            	            return retval;
            	        	            	        }

            	        	            	        if ( BACKTRACKING==0 ) {
            	        	            	        UNKNOWN_SYMBOL1976_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNKNOWN_SYMBOL1976));
            	        	            	        ADAPTOR->addChild(ADAPTOR, root_0, UNKNOWN_SYMBOL1976_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:2209: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_SYMBOL1978;
    pANTLR3_COMMON_TOKEN    BETWEEN_SYMBOL1979;
    pANTLR3_COMMON_TOKEN    AND_SYMBOL1981;
    pANTLR3_COMMON_TOKEN    LIKE_SYMBOL1983;
    pANTLR3_COMMON_TOKEN    ESCAPE_SYMBOL1985;
    pANTLR3_COMMON_TOKEN    REGEXP_SYMBOL1987;
    pANTLR3_COMMON_TOKEN    IN_SYMBOL1989;
    pANTLR3_COMMON_TOKEN    SOUNDS_SYMBOL1991;
    pANTLR3_COMMON_TOKEN    LIKE_SYMBOL1992;
    MySQLParser_bitwise_or_expression_return bitwise_or_expression1977;
    #undef	RETURN_TYPE_bitwise_or_expression1977
    #define	RETURN_TYPE_bitwise_or_expression1977 MySQLParser_bitwise_or_expression_return

    MySQLParser_bitwise_or_expression_return bitwise_or_expression1980;
    #undef	RETURN_TYPE_bitwise_or_expression1980
    #define	RETURN_TYPE_bitwise_or_expression1980 MySQLParser_bitwise_or_expression_return

    MySQLParser_predicate_return predicate1982;
    #undef	RETURN_TYPE_predicate1982
    #define	RETURN_TYPE_predicate1982 MySQLParser_predicate_return

    MySQLParser_unary_expression_return unary_expression1984;
    #undef	RETURN_TYPE_unary_expression1984
    #define	RETURN_TYPE_unary_expression1984 MySQLParser_unary_expression_return

    MySQLParser_primary_return primary1986;
    #undef	RETURN_TYPE_primary1986
    #define	RETURN_TYPE_primary1986 MySQLParser_primary_return

    MySQLParser_bitwise_or_expression_return bitwise_or_expression1988;
    #undef	RETURN_TYPE_bitwise_or_expression1988
    #define	RETURN_TYPE_bitwise_or_expression1988 MySQLParser_bitwise_or_expression_return

    MySQLParser_predicate_in_return predicate_in1990;
    #undef	RETURN_TYPE_predicate_in1990
    #define	RETURN_TYPE_predicate_in1990 MySQLParser_predicate_in_return

    MySQLParser_bitwise_or_expression_return bitwise_or_expression1993;
    #undef	RETURN_TYPE_bitwise_or_expression1993
    #define	RETURN_TYPE_bitwise_or_expression1993 MySQLParser_bitwise_or_expression_return

    pANTLR3_BASE_TREE NOT_SYMBOL1978_tree;
    pANTLR3_BASE_TREE BETWEEN_SYMBOL1979_tree;
    pANTLR3_BASE_TREE AND_SYMBOL1981_tree;
    pANTLR3_BASE_TREE LIKE_SYMBOL1983_tree;
    pANTLR3_BASE_TREE ESCAPE_SYMBOL1985_tree;
    pANTLR3_BASE_TREE REGEXP_SYMBOL1987_tree;
    pANTLR3_BASE_TREE IN_SYMBOL1989_tree;
    pANTLR3_BASE_TREE SOUNDS_SYMBOL1991_tree;
    pANTLR3_BASE_TREE LIKE_SYMBOL1992_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    NOT_SYMBOL1978       = NULL;
    BETWEEN_SYMBOL1979       = NULL;
    AND_SYMBOL1981       = NULL;
    LIKE_SYMBOL1983       = NULL;
    ESCAPE_SYMBOL1985       = NULL;
    REGEXP_SYMBOL1987       = NULL;
    IN_SYMBOL1989       = NULL;
    SOUNDS_SYMBOL1991       = NULL;
    LIKE_SYMBOL1992       = NULL;
    bitwise_or_expression1977.tree = NULL;

    bitwise_or_expression1980.tree = NULL;

    predicate1982.tree = NULL;

    unary_expression1984.tree = NULL;

    primary1986.tree = NULL;

    bitwise_or_expression1988.tree = NULL;

    predicate_in1990.tree = NULL;

    bitwise_or_expression1993.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    NOT_SYMBOL1978_tree   = NULL;
    BETWEEN_SYMBOL1979_tree   = NULL;
    AND_SYMBOL1981_tree   = NULL;
    LIKE_SYMBOL1983_tree   = NULL;
    ESCAPE_SYMBOL1985_tree   = NULL;
    REGEXP_SYMBOL1987_tree   = NULL;
    IN_SYMBOL1989_tree   = NULL;
    SOUNDS_SYMBOL1991_tree   = NULL;
    LIKE_SYMBOL1992_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2209: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:2210: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_predicate10709);
            bitwise_or_expression1977=bitwise_or_expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulepredicateEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, bitwise_or_expression1977.tree);

            // MySQL.g:2211: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:2212: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:2212:4: ( NOT_SYMBOL )?
            	        {
            	            int alt617=2;
            	            switch ( LA(1) )
            	            {
            	                case NOT_SYMBOL:
            	                	{
            	                		alt617=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt617)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2212:4: NOT_SYMBOL
            	        	    {
            	        	        NOT_SYMBOL1978 = (pANTLR3_COMMON_TOKEN) MATCHT(NOT_SYMBOL, &FOLLOW_NOT_SYMBOL_in_predicate10730);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepredicateEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        NOT_SYMBOL1978_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NOT_SYMBOL1978));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, NOT_SYMBOL1978_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:2213: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:2214:6: BETWEEN_SYMBOL ^ bitwise_or_expression AND_SYMBOL predicate
            	        	    {
            	        	        BETWEEN_SYMBOL1979 = (pANTLR3_COMMON_TOKEN) MATCHT(BETWEEN_SYMBOL, &FOLLOW_BETWEEN_SYMBOL_in_predicate10744);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepredicateEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        BETWEEN_SYMBOL1979_tree = 
            	        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BETWEEN_SYMBOL1979))
            	        	        ;
            	        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, BETWEEN_SYMBOL1979_tree, root_0));
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_bitwise_or_expression_in_predicate10747);
            	        	        bitwise_or_expression1980=bitwise_or_expression(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepredicateEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, bitwise_or_expression1980.tree);

            	        	        AND_SYMBOL1981 = (pANTLR3_COMMON_TOKEN) MATCHT(AND_SYMBOL, &FOLLOW_AND_SYMBOL_in_predicate10749);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepredicateEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        AND_SYMBOL1981_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AND_SYMBOL1981));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, AND_SYMBOL1981_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_predicate_in_predicate10751);
            	        	        predicate1982=predicate(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepredicateEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, predicate1982.tree);

            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:2215:8: LIKE_SYMBOL ^ unary_expression ( options {greedy=true; } : ESCAPE_SYMBOL primary )?
            	        	    {
            	        	        LIKE_SYMBOL1983 = (pANTLR3_COMMON_TOKEN) MATCHT(LIKE_SYMBOL, &FOLLOW_LIKE_SYMBOL_in_predicate10760);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepredicateEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        LIKE_SYMBOL1983_tree = 
            	        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LIKE_SYMBOL1983))
            	        	        ;
            	        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, LIKE_SYMBOL1983_tree, root_0));
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_unary_expression_in_predicate10763);
            	        	        unary_expression1984=unary_expression(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepredicateEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, unary_expression1984.tree);

            	        	        // MySQL.g:2215: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:2215:68: ESCAPE_SYMBOL primary
            	        	        	    {
            	        	        	        ESCAPE_SYMBOL1985 = (pANTLR3_COMMON_TOKEN) MATCHT(ESCAPE_SYMBOL, &FOLLOW_ESCAPE_SYMBOL_in_predicate10779);
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulepredicateEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) {
            	        	        	        ESCAPE_SYMBOL1985_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ESCAPE_SYMBOL1985));
            	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, ESCAPE_SYMBOL1985_tree);
            	        	        	        }

            	        	        	        FOLLOWPUSH(FOLLOW_primary_in_predicate10781);
            	        	        	        primary1986=primary(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulepredicateEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, primary1986.tree);

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	    }
            	        	    break;
            	        	case 3:
            	        	    // MySQL.g:2216:8: REGEXP_SYMBOL ^ bitwise_or_expression
            	        	    {
            	        	        REGEXP_SYMBOL1987 = (pANTLR3_COMMON_TOKEN) MATCHT(REGEXP_SYMBOL, &FOLLOW_REGEXP_SYMBOL_in_predicate10792);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepredicateEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        REGEXP_SYMBOL1987_tree = 
            	        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REGEXP_SYMBOL1987))
            	        	        ;
            	        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, REGEXP_SYMBOL1987_tree, root_0));
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_bitwise_or_expression_in_predicate10795);
            	        	        bitwise_or_expression1988=bitwise_or_expression(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepredicateEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, bitwise_or_expression1988.tree);

            	        	    }
            	        	    break;
            	        	case 4:
            	        	    // MySQL.g:2217:8: IN_SYMBOL predicate_in
            	        	    {
            	        	        IN_SYMBOL1989 = (pANTLR3_COMMON_TOKEN) MATCHT(IN_SYMBOL, &FOLLOW_IN_SYMBOL_in_predicate10804);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepredicateEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        IN_SYMBOL1989_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IN_SYMBOL1989));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, IN_SYMBOL1989_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_predicate_in_in_predicate10806);
            	        	        predicate_in1990=predicate_in(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepredicateEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, predicate_in1990.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2219:9: SOUNDS_SYMBOL ^ LIKE_SYMBOL bitwise_or_expression
            	    {
            	        SOUNDS_SYMBOL1991 = (pANTLR3_COMMON_TOKEN) MATCHT(SOUNDS_SYMBOL, &FOLLOW_SOUNDS_SYMBOL_in_predicate10825);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepredicateEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SOUNDS_SYMBOL1991_tree = 
            	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SOUNDS_SYMBOL1991))
            	        ;
            	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, SOUNDS_SYMBOL1991_tree, root_0));
            	        }

            	        LIKE_SYMBOL1992 = (pANTLR3_COMMON_TOKEN) MATCHT(LIKE_SYMBOL, &FOLLOW_LIKE_SYMBOL_in_predicate10828);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepredicateEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        LIKE_SYMBOL1992_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LIKE_SYMBOL1992));
            	        ADAPTOR->addChild(ADAPTOR, root_0, LIKE_SYMBOL1992_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_bitwise_or_expression_in_predicate10830);
            	        bitwise_or_expression1993=bitwise_or_expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepredicateEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, bitwise_or_expression1993.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:2224: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 subquery1994;
    #undef	RETURN_TYPE_subquery1994
    #define	RETURN_TYPE_subquery1994 MySQLParser_subquery_return

    MySQLParser_expression_list_with_parentheses_return expression_list_with_parentheses1995;
    #undef	RETURN_TYPE_expression_list_with_parentheses1995
    #define	RETURN_TYPE_expression_list_with_parentheses1995 MySQLParser_expression_list_with_parentheses_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    subquery1994.tree = NULL;

    expression_list_with_parentheses1995.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2224: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 == BINARY_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 == EXISTS_SYMBOL || ((LA621_1 >= EXTRACT_SYMBOL) && (LA621_1 <= FALSE_SYMBOL)) || LA621_1 == GROUP_CONCAT_SYMBOL || LA621_1 == IF_SYMBOL || LA621_1 == INSERT_SYMBOL || LA621_1 == INTERVAL_SYMBOL || LA621_1 == LEFT_SYMBOL || LA621_1 == MATCH_SYMBOL || LA621_1 == MAX_SYMBOL || LA621_1 == MIN_SYMBOL || LA621_1 == MOD_SYMBOL || LA621_1 == NCHAR_TEXT || ((LA621_1 >= NOT2_SYMBOL) && (LA621_1 <= NOW_SYMBOL)) || ((LA621_1 >= NULL2_SYMBOL) && (LA621_1 <= NULL_SYMBOL)) || LA621_1 == OPEN_CURLY_SYMBOL || ((LA621_1 >= PARAM_MARKER) && (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 >= UTC_DATE_SYMBOL) && (LA621_1 <= UTC_TIME_SYMBOL)) || LA621_1 == VALUES_SYMBOL || LA621_1 == VARIANCE_SYMBOL || LA621_1 == VAR_SAMP_SYMBOL || ((LA621_1 >= AT_AT_SIGN_SYMBOL) && (LA621_1 <= AT_TEXT_SUFFIX)) || ((LA621_1 >= BACK_TICK_QUOTED_ID) && (LA621_1 <= BIN_NUMBER)) || LA621_1 == BITWISE_NOT_OPERATOR || ((LA621_1 >= BIT_AND_SYMBOL) && (LA621_1 <= BIT_XOR_SYMBOL)) || LA621_1 == DECIMAL_NUMBER || LA621_1 == DOT_SYMBOL || LA621_1 == DOUBLE_QUOTED_TEXT || LA621_1 == FLOAT_NUMBER || ((LA621_1 >= HEX_NUMBER) && (LA621_1 <= IDENTIFIER)) || LA621_1 == INT_NUMBER || LA621_1 == LOGICAL_NOT_OPERATOR || ((LA621_1 >= LONG_NUMBER) && (LA621_1 <= MINUS_OPERATOR)) || LA621_1 == PLUS_OPERATOR || ((LA621_1 >= ULONGLONG_NUMBER) && (LA621_1 <= UNDERSCORE_CHARSET))))
            		    {
            		        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:2225: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_in10849);
        	        subquery1994=subquery(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulepredicate_inEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, subquery1994.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2226:4: expression_list_with_parentheses
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_expression_list_with_parentheses_in_predicate_in10854);
        	        expression_list_with_parentheses1995=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_parentheses1995.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:2229: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_OPERATOR1997;
    MySQLParser_bitwise_and_expression_return bitwise_and_expression1996;
    #undef	RETURN_TYPE_bitwise_and_expression1996
    #define	RETURN_TYPE_bitwise_and_expression1996 MySQLParser_bitwise_and_expression_return

    MySQLParser_bitwise_and_expression_return bitwise_and_expression1998;
    #undef	RETURN_TYPE_bitwise_and_expression1998
    #define	RETURN_TYPE_bitwise_and_expression1998 MySQLParser_bitwise_and_expression_return

    pANTLR3_BASE_TREE BITWISE_OR_OPERATOR1997_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    BITWISE_OR_OPERATOR1997       = NULL;
    bitwise_and_expression1996.tree = NULL;

    bitwise_and_expression1998.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    BITWISE_OR_OPERATOR1997_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2229:22: ( bitwise_and_expression ( options {greedy=true; } : BITWISE_OR_OPERATOR ^ bitwise_and_expression )* )
        // MySQL.g:2230: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_expression10863);
            bitwise_and_expression1996=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_expression1996.tree);

            // MySQL.g:2230: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:2230:55: BITWISE_OR_OPERATOR ^ bitwise_and_expression
            	    {
            	        BITWISE_OR_OPERATOR1997 = (pANTLR3_COMMON_TOKEN) MATCHT(BITWISE_OR_OPERATOR, &FOLLOW_BITWISE_OR_OPERATOR_in_bitwise_or_expression10879);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulebitwise_or_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        BITWISE_OR_OPERATOR1997_tree = 
            	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BITWISE_OR_OPERATOR1997))
            	        ;
            	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, BITWISE_OR_OPERATOR1997_tree, root_0));
            	        }

            	        FOLLOWPUSH(FOLLOW_bitwise_and_expression_in_bitwise_or_expression10882);
            	        bitwise_and_expression1998=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_expression1998.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:2233: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_OPERATOR2000;
    MySQLParser_shift_expression_return shift_expression1999;
    #undef	RETURN_TYPE_shift_expression1999
    #define	RETURN_TYPE_shift_expression1999 MySQLParser_shift_expression_return

    MySQLParser_shift_expression_return shift_expression2001;
    #undef	RETURN_TYPE_shift_expression2001
    #define	RETURN_TYPE_shift_expression2001 MySQLParser_shift_expression_return

    pANTLR3_BASE_TREE BITWISE_AND_OPERATOR2000_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    BITWISE_AND_OPERATOR2000       = NULL;
    shift_expression1999.tree = NULL;

    shift_expression2001.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    BITWISE_AND_OPERATOR2000_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2233:23: ( shift_expression ( options {greedy=true; } : BITWISE_AND_OPERATOR ^ shift_expression )* )
        // MySQL.g:2234: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_expression10893);
            shift_expression1999=shift_expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulebitwise_and_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, shift_expression1999.tree);

            // MySQL.g:2234: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:2234:49: BITWISE_AND_OPERATOR ^ shift_expression
            	    {
            	        BITWISE_AND_OPERATOR2000 = (pANTLR3_COMMON_TOKEN) MATCHT(BITWISE_AND_OPERATOR, &FOLLOW_BITWISE_AND_OPERATOR_in_bitwise_and_expression10909);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulebitwise_and_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        BITWISE_AND_OPERATOR2000_tree = 
            	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BITWISE_AND_OPERATOR2000))
            	        ;
            	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, BITWISE_AND_OPERATOR2000_tree, root_0));
            	        }

            	        FOLLOWPUSH(FOLLOW_shift_expression_in_bitwise_and_expression10912);
            	        shift_expression2001=shift_expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulebitwise_and_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, shift_expression2001.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:2237: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    set2003;
    MySQLParser_additive_expression_return additive_expression2002;
    #undef	RETURN_TYPE_additive_expression2002
    #define	RETURN_TYPE_additive_expression2002 MySQLParser_additive_expression_return

    MySQLParser_additive_expression_return additive_expression2004;
    #undef	RETURN_TYPE_additive_expression2004
    #define	RETURN_TYPE_additive_expression2004 MySQLParser_additive_expression_return

    pANTLR3_BASE_TREE set2003_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2003       = NULL;
    additive_expression2002.tree = NULL;

    additive_expression2004.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2003_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2237:17: ( additive_expression ( options {greedy=true; } : ( SHIFT_LEFT_OPERATOR | SHIFT_RIGHT_OPERATOR ) ^ additive_expression )* )
        // MySQL.g:2238: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_expression10923);
            additive_expression2002=additive_expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleshift_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, additive_expression2002.tree);

            // MySQL.g:2238: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:2238:52: ( SHIFT_LEFT_OPERATOR | SHIFT_RIGHT_OPERATOR ) ^ additive_expression
            	    {
            	        set2003=(pANTLR3_COMMON_TOKEN)LT(1);

            	        set2003=(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, set2003))
            	            , 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_expression10948);
            	        additive_expression2004=additive_expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshift_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, additive_expression2004.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:2241: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    set2006;
    MySQLParser_multiplicative_expression_return multiplicative_expression2005;
    #undef	RETURN_TYPE_multiplicative_expression2005
    #define	RETURN_TYPE_multiplicative_expression2005 MySQLParser_multiplicative_expression_return

    MySQLParser_multiplicative_expression_return multiplicative_expression2007;
    #undef	RETURN_TYPE_multiplicative_expression2007
    #define	RETURN_TYPE_multiplicative_expression2007 MySQLParser_multiplicative_expression_return

    pANTLR3_BASE_TREE set2006_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2006       = NULL;
    multiplicative_expression2005.tree = NULL;

    multiplicative_expression2007.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2006_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2241:20: ( multiplicative_expression ( options {greedy=true; } : ( PLUS_OPERATOR | MINUS_OPERATOR ) ^ multiplicative_expression )* )
        // MySQL.g:2242: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_expression10959);
            multiplicative_expression2005=multiplicative_expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleadditive_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, multiplicative_expression2005.tree);

            // MySQL.g:2242: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:2242:57: ( PLUS_OPERATOR | MINUS_OPERATOR ) ^ multiplicative_expression
            	    {
            	        set2006=(pANTLR3_COMMON_TOKEN)LT(1);

            	        set2006=(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, set2006))
            	            , 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_expression10984);
            	        multiplicative_expression2007=multiplicative_expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleadditive_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, multiplicative_expression2007.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:2245: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_expression2008;
    #undef	RETURN_TYPE_bitwise_xor_expression2008
    #define	RETURN_TYPE_bitwise_xor_expression2008 MySQLParser_bitwise_xor_expression_return

    MySQLParser_multiplication_operator_return multiplication_operator2009;
    #undef	RETURN_TYPE_multiplication_operator2009
    #define	RETURN_TYPE_multiplication_operator2009 MySQLParser_multiplication_operator_return

    MySQLParser_bitwise_xor_expression_return bitwise_xor_expression2010;
    #undef	RETURN_TYPE_bitwise_xor_expression2010
    #define	RETURN_TYPE_bitwise_xor_expression2010 MySQLParser_bitwise_xor_expression_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    bitwise_xor_expression2008.tree = NULL;

    multiplication_operator2009.tree = NULL;

    bitwise_xor_expression2010.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:2245:26: ( bitwise_xor_expression ( options {greedy=true; } : multiplication_operator ^ bitwise_xor_expression )* )
        // MySQL.g:2246: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_expression10995);
            bitwise_xor_expression2008=bitwise_xor_expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulemultiplicative_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, bitwise_xor_expression2008.tree);

            // MySQL.g:2246:25: ( options {greedy=true; } : multiplication_operator ^ bitwise_xor_expression )*

            for (;;)
            {
                int alt626=2;
                switch ( LA(1) )
                {
                case MOD_SYMBOL:
                case DIV_OPERATOR:
                case DIV_SYMBOL:
                case MOD_OPERATOR:
                case MULT_OPERATOR:
                	{
                		alt626=1;
                	}
                    break;

                }

                switch (alt626)
                {
            	case 1:
            	    // MySQL.g:2246:55: multiplication_operator ^ bitwise_xor_expression
            	    {
            	        FOLLOWPUSH(FOLLOW_multiplication_operator_in_multiplicative_expression11011);
            	        multiplication_operator2009=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_operator2009.tree, root_0));

            	        FOLLOWPUSH(FOLLOW_bitwise_xor_expression_in_multiplicative_expression11014);
            	        bitwise_xor_expression2010=bitwise_xor_expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulemultiplicative_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, bitwise_xor_expression2010.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:2249: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_OPERATOR2012;
    MySQLParser_concat_expression_return concat_expression2011;
    #undef	RETURN_TYPE_concat_expression2011
    #define	RETURN_TYPE_concat_expression2011 MySQLParser_concat_expression_return

    MySQLParser_concat_expression_return concat_expression2013;
    #undef	RETURN_TYPE_concat_expression2013
    #define	RETURN_TYPE_concat_expression2013 MySQLParser_concat_expression_return

    pANTLR3_BASE_TREE BITWISE_XOR_OPERATOR2012_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    BITWISE_XOR_OPERATOR2012       = NULL;
    concat_expression2011.tree = NULL;

    concat_expression2013.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    BITWISE_XOR_OPERATOR2012_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2249:23: ( concat_expression ( options {greedy=true; } : BITWISE_XOR_OPERATOR ^ concat_expression )* )
        // MySQL.g:2250: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_expression11025);
            concat_expression2011=concat_expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulebitwise_xor_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, concat_expression2011.tree);

            // MySQL.g:2250: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:2250:50: BITWISE_XOR_OPERATOR ^ concat_expression
            	    {
            	        BITWISE_XOR_OPERATOR2012 = (pANTLR3_COMMON_TOKEN) MATCHT(BITWISE_XOR_OPERATOR, &FOLLOW_BITWISE_XOR_OPERATOR_in_bitwise_xor_expression11041);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulebitwise_xor_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        BITWISE_XOR_OPERATOR2012_tree = 
            	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BITWISE_XOR_OPERATOR2012))
            	        ;
            	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, BITWISE_XOR_OPERATOR2012_tree, root_0));
            	        }

            	        FOLLOWPUSH(FOLLOW_concat_expression_in_bitwise_xor_expression11044);
            	        concat_expression2013=concat_expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulebitwise_xor_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, concat_expression2013.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:2254: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_SYMBOL2015;
    MySQLParser_unary_expression_return unary_expression2014;
    #undef	RETURN_TYPE_unary_expression2014
    #define	RETURN_TYPE_unary_expression2014 MySQLParser_unary_expression_return

    MySQLParser_unary_expression_return unary_expression2016;
    #undef	RETURN_TYPE_unary_expression2016
    #define	RETURN_TYPE_unary_expression2016 MySQLParser_unary_expression_return

    pANTLR3_BASE_TREE CONCAT_PIPES_SYMBOL2015_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CONCAT_PIPES_SYMBOL2015       = NULL;
    unary_expression2014.tree = NULL;

    unary_expression2016.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CONCAT_PIPES_SYMBOL2015_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2254:18: ( unary_expression ( options {greedy=true; } : CONCAT_PIPES_SYMBOL ^ unary_expression )* )
        // MySQL.g:2255: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_expression11056);
            unary_expression2014=unary_expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleconcat_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, unary_expression2014.tree);

            // MySQL.g:2255: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:2255:49: CONCAT_PIPES_SYMBOL ^ unary_expression
            	    {
            	        CONCAT_PIPES_SYMBOL2015 = (pANTLR3_COMMON_TOKEN) MATCHT(CONCAT_PIPES_SYMBOL, &FOLLOW_CONCAT_PIPES_SYMBOL_in_concat_expression11072);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleconcat_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CONCAT_PIPES_SYMBOL2015_tree = 
            	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CONCAT_PIPES_SYMBOL2015))
            	        ;
            	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, CONCAT_PIPES_SYMBOL2015_tree, root_0));
            	        }

            	        FOLLOWPUSH(FOLLOW_unary_expression_in_concat_expression11075);
            	        unary_expression2016=unary_expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleconcat_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, unary_expression2016.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:2258: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    set2017;
    MySQLParser_unary_expression_return unary_expression2018;
    #undef	RETURN_TYPE_unary_expression2018
    #define	RETURN_TYPE_unary_expression2018 MySQLParser_unary_expression_return

    MySQLParser_not_expression_return not_expression2019;
    #undef	RETURN_TYPE_not_expression2019
    #define	RETURN_TYPE_not_expression2019 MySQLParser_not_expression_return

    pANTLR3_BASE_TREE set2017_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2017       = NULL;
    unary_expression2018.tree = NULL;

    not_expression2019.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2017_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2258: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 == BINARY_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 == EXISTS_SYMBOL || ((LA629_0 >= EXTRACT_SYMBOL) && (LA629_0 <= FALSE_SYMBOL)) || LA629_0 == GROUP_CONCAT_SYMBOL || LA629_0 == IF_SYMBOL || LA629_0 == INSERT_SYMBOL || LA629_0 == INTERVAL_SYMBOL || LA629_0 == LEFT_SYMBOL || 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 >= UTC_DATE_SYMBOL) && (LA629_0 <= UTC_TIME_SYMBOL)) || LA629_0 == VALUES_SYMBOL || LA629_0 == VARIANCE_SYMBOL || LA629_0 == VAR_SAMP_SYMBOL || ((LA629_0 >= AT_AT_SIGN_SYMBOL) && (LA629_0 <= AT_TEXT_SUFFIX)) || ((LA629_0 >= BACK_TICK_QUOTED_ID) && (LA629_0 <= BIN_NUMBER)) || ((LA629_0 >= BIT_AND_SYMBOL) && (LA629_0 <= BIT_XOR_SYMBOL)) || LA629_0 == DECIMAL_NUMBER || LA629_0 == DOT_SYMBOL || LA629_0 == DOUBLE_QUOTED_TEXT || LA629_0 == FLOAT_NUMBER || ((LA629_0 >= HEX_NUMBER) && (LA629_0 <= IDENTIFIER)) || LA629_0 == INT_NUMBER || LA629_0 == LOGICAL_NOT_OPERATOR || LA629_0 == LONG_NUMBER || ((LA629_0 >= ULONGLONG_NUMBER) && (LA629_0 <= UNDERSCORE_CHARSET))))
                {
                    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:2259:2: ( PLUS_OPERATOR | MINUS_OPERATOR | BITWISE_NOT_OPERATOR ) unary_expression
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        set2017=(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, set2017))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>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_expression11098);
        	        unary_expression2018=unary_expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleunary_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, unary_expression2018.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2260:4: not_expression
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_not_expression_in_unary_expression11103);
        	        not_expression2019=not_expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleunary_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, not_expression2019.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:2263: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_rule2020;
    #undef	RETURN_TYPE_not2_rule2020
    #define	RETURN_TYPE_not2_rule2020 MySQLParser_not2_rule_return

    MySQLParser_interval_expression_return interval_expression2021;
    #undef	RETURN_TYPE_interval_expression2021
    #define	RETURN_TYPE_interval_expression2021 MySQLParser_interval_expression_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    not2_rule2020.tree = NULL;

    interval_expression2021.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:2263:15: ( ( not2_rule )? interval_expression )
        // MySQL.g:2264:2: ( not2_rule )? interval_expression
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:2264:2: ( not2_rule )?
            {
                int alt630=2;
                switch ( LA(1) )
                {
                    case NOT2_SYMBOL:
                    case LOGICAL_NOT_OPERATOR:
                    	{
                    		alt630=1;
                    	}
                        break;
                }

                switch (alt630)
                {
            	case 1:
            	    // MySQL.g:2264:2: not2_rule
            	    {
            	        FOLLOWPUSH(FOLLOW_not2_rule_in_not_expression11112);
            	        not2_rule2020=not2_rule(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulenot_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, not2_rule2020.tree);

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_interval_expression_in_not_expression11115);
            interval_expression2021=interval_expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulenot_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, interval_expression2021.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:2267: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_SYMBOL2022;
    MySQLParser_interval_function_return interval_function2023;
    #undef	RETURN_TYPE_interval_function2023
    #define	RETURN_TYPE_interval_function2023 MySQLParser_interval_function_return

    MySQLParser_interval_time_span_return interval_time_span2024;
    #undef	RETURN_TYPE_interval_time_span2024
    #define	RETURN_TYPE_interval_time_span2024 MySQLParser_interval_time_span_return

    MySQLParser_primary_return primary2025;
    #undef	RETURN_TYPE_primary2025
    #define	RETURN_TYPE_primary2025 MySQLParser_primary_return

    pANTLR3_BASE_TREE INTERVAL_SYMBOL2022_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    INTERVAL_SYMBOL2022       = NULL;
    interval_function2023.tree = NULL;

    interval_time_span2024.tree = NULL;

    primary2025.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    INTERVAL_SYMBOL2022_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2267: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 == BINARY_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 == EXISTS_SYMBOL || ((LA632_0 >= EXTRACT_SYMBOL) && (LA632_0 <= FALSE_SYMBOL)) || LA632_0 == GROUP_CONCAT_SYMBOL || LA632_0 == IF_SYMBOL || LA632_0 == INSERT_SYMBOL || LA632_0 == LEFT_SYMBOL || 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 >= UTC_DATE_SYMBOL) && (LA632_0 <= UTC_TIME_SYMBOL)) || LA632_0 == VALUES_SYMBOL || LA632_0 == VARIANCE_SYMBOL || LA632_0 == VAR_SAMP_SYMBOL || ((LA632_0 >= AT_AT_SIGN_SYMBOL) && (LA632_0 <= AT_TEXT_SUFFIX)) || ((LA632_0 >= BACK_TICK_QUOTED_ID) && (LA632_0 <= BIN_NUMBER)) || ((LA632_0 >= BIT_AND_SYMBOL) && (LA632_0 <= BIT_XOR_SYMBOL)) || LA632_0 == DECIMAL_NUMBER || LA632_0 == DOT_SYMBOL || LA632_0 == DOUBLE_QUOTED_TEXT || LA632_0 == FLOAT_NUMBER || ((LA632_0 >= HEX_NUMBER) && (LA632_0 <= IDENTIFIER)) || LA632_0 == INT_NUMBER || LA632_0 == LONG_NUMBER || ((LA632_0 >= ULONGLONG_NUMBER) && (LA632_0 <= UNDERSCORE_CHARSET))))
                {
                    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:2268:2: INTERVAL_SYMBOL ! ( ( OPEN_PAR_SYMBOL expression COMMA_SYMBOL )=> interval_function | interval_time_span )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        INTERVAL_SYMBOL2022 = (pANTLR3_COMMON_TOKEN) MATCHT(INTERVAL_SYMBOL, &FOLLOW_INTERVAL_SYMBOL_in_interval_expression11124);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }


        	        // MySQL.g:2269: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 ( (synpred2_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 ( (synpred2_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 == NOT2_SYMBOL || LA631_1 == LOGICAL_NOT_OPERATOR))
        	                        {
        	                            {
        	                                int LA631_105 = LA(3);
        	                                if ( (synpred2_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 ( (synpred2_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 ( (synpred2_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 ( (synpred2_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 ( (synpred2_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 ( (synpred2_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 ( (synpred2_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 ( (synpred2_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 ( (synpred2_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 ( (synpred2_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 ( (synpred2_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 ( (synpred2_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 ( (synpred2_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 ( (synpred2_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 == IDENTIFIER))
        	                        {
        	                            {
        	                                int LA631_119 = LA(3);
        	                                if ( (synpred2_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 == BACK_TICK_QUOTED_ID))
        	                        {
        	                            {
        	                                int LA631_120 = LA(3);
        	                                if ( (synpred2_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 == CHAR_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_121 = LA(3);
        	                                if ( (synpred2_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 == CURRENT_USER_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_122 = LA(3);
        	                                if ( (synpred2_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 == DAY_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_123 = LA(3);
        	                                if ( (synpred2_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 == HOUR_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_124 = LA(3);
        	                                if ( (synpred2_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 == INSERT_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_125 = LA(3);
        	                                if ( (synpred2_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 == LEFT_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_126 = LA(3);
        	                                if ( (synpred2_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 == MINUTE_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_127 = LA(3);
        	                                if ( (synpred2_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 == MONTH_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_128 = LA(3);
        	                                if ( (synpred2_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 == RIGHT_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_129 = LA(3);
        	                                if ( (synpred2_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 == SECOND_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_130 = LA(3);
        	                                if ( (synpred2_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 == TRIM_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_131 = LA(3);
        	                                if ( (synpred2_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 == USER_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_132 = LA(3);
        	                                if ( (synpred2_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 == VALUES_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_133 = LA(3);
        	                                if ( (synpred2_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 == YEAR_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_134 = LA(3);
        	                                if ( (synpred2_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 == ADDDATE_SYMBOL || LA631_1 == SUBDATE_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_135 = LA(3);
        	                                if ( (synpred2_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 == CURDATE_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_136 = LA(3);
        	                                if ( (synpred2_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 == CURTIME_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_137 = LA(3);
        	                                if ( (synpred2_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 == DATE_ADD_SYMBOL || LA631_1 == DATE_SUB_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_138 = LA(3);
        	                                if ( (synpred2_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 == EXTRACT_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_139 = LA(3);
        	                                if ( (synpred2_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 == GET_FORMAT_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_140 = LA(3);
        	                                if ( (synpred2_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 == NOW_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_141 = LA(3);
        	                                if ( (synpred2_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 == POSITION_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_142 = LA(3);
        	                                if ( (synpred2_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 == SUBSTRING_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_143 = LA(3);
        	                                if ( (synpred2_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 == SYSDATE_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_144 = LA(3);
        	                                if ( (synpred2_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 >= TIMESTAMP_ADD_SYMBOL) && (LA631_1 <= TIMESTAMP_DIFF_SYMBOL))))
        	                        {
        	                            {
        	                                int LA631_145 = LA(3);
        	                                if ( (synpred2_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_DATE_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_146 = LA(3);
        	                                if ( (synpred2_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 == UTC_TIME_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_147 = LA(3);
        	                                if ( (synpred2_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 == UTC_TIMESTAMP_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_148 = LA(3);
        	                                if ( (synpred2_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 == ASCII_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_149 = LA(3);
        	                                if ( (synpred2_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 == CHARSET_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_150 = LA(3);
        	                                if ( (synpred2_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 == COALESCE_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_151 = LA(3);
        	                                if ( (synpred2_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 == COLLATION_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_152 = LA(3);
        	                                if ( (synpred2_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 == DATABASE_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_153 = LA(3);
        	                                if ( (synpred2_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 == IF_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_154 = LA(3);
        	                                if ( (synpred2_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 == FORMAT_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_155 = LA(3);
        	                                if ( (synpred2_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 == MICROSECOND_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_156 = LA(3);
        	                                if ( (synpred2_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 == MOD_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_157 = LA(3);
        	                                if ( (synpred2_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 == OLD_PASSWORD_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_158 = LA(3);
        	                                if ( (synpred2_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 == PASSWORD_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_159 = LA(3);
        	                                if ( (synpred2_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 == QUARTER_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_160 = LA(3);
        	                                if ( (synpred2_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 == REPEAT_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_161 = LA(3);
        	                                if ( (synpred2_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 == REPLACE_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_162 = LA(3);
        	                                if ( (synpred2_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 == REVERSE_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_163 = LA(3);
        	                                if ( (synpred2_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 == ROW_COUNT_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_164 = LA(3);
        	                                if ( (synpred2_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 == TRUNCATE_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_165 = LA(3);
        	                                if ( (synpred2_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 == WEEK_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_166 = LA(3);
        	                                if ( (synpred2_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 == WEIGHT_STRING_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_167 = LA(3);
        	                                if ( (synpred2_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 == GEOMETRYCOLLECTION_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_168 = LA(3);
        	                                if ( (synpred2_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 == LINESTRING_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_169 = LA(3);
        	                                if ( (synpred2_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 == MULTILINESTRING_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_170 = LA(3);
        	                                if ( (synpred2_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 == MULTIPOINT_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_171 = LA(3);
        	                                if ( (synpred2_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 == MULTIPOLYGON_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_172 = LA(3);
        	                                if ( (synpred2_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 == POINT_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_173 = LA(3);
        	                                if ( (synpred2_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 == POLYGON_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_174 = LA(3);
        	                                if ( (synpred2_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 == CONTAINS_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_175 = LA(3);
        	                                if ( (synpred2_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 == AVG_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_176 = LA(3);
        	                                if ( (synpred2_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_AND_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_177 = LA(3);
        	                                if ( (synpred2_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 == BIT_OR_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_178 = LA(3);
        	                                if ( (synpred2_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 == BIT_XOR_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_179 = LA(3);
        	                                if ( (synpred2_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 == COUNT_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_180 = LA(3);
        	                                if ( (synpred2_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 == MIN_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_181 = LA(3);
        	                                if ( (synpred2_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 == MAX_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_182 = LA(3);
        	                                if ( (synpred2_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 == STD_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_183 = LA(3);
        	                                if ( (synpred2_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 == VARIANCE_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_184 = LA(3);
        	                                if ( (synpred2_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 == STDDEV_SAMP_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_185 = LA(3);
        	                                if ( (synpred2_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 == VAR_SAMP_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_186 = LA(3);
        	                                if ( (synpred2_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 == SUM_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_187 = LA(3);
        	                                if ( (synpred2_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 == GROUP_CONCAT_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_188 = LA(3);
        	                                if ( (synpred2_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 == DOT_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_189 = LA(3);
        	                                if ( (synpred2_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 == ROW_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_190 = LA(3);
        	                                if ( (synpred2_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 == 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_191 = LA(3);
        	                                if ( (synpred2_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 ( (synpred2_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 ( (synpred2_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 ( (synpred2_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 ( (synpred2_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 ( (synpred2_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 ( (synpred2_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 ( (synpred2_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 ( (synpred2_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 ( (synpred2_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 ( (synpred2_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 ( (synpred2_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 ( (synpred2_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 ( (synpred2_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 == BINARY_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 == EXISTS_SYMBOL || ((LA631_0 >= EXTRACT_SYMBOL) && (LA631_0 <= FALSE_SYMBOL)) || LA631_0 == GROUP_CONCAT_SYMBOL || LA631_0 == IF_SYMBOL || LA631_0 == INSERT_SYMBOL || LA631_0 == INTERVAL_SYMBOL || LA631_0 == LEFT_SYMBOL || LA631_0 == MATCH_SYMBOL || LA631_0 == MAX_SYMBOL || LA631_0 == MIN_SYMBOL || LA631_0 == MOD_SYMBOL || LA631_0 == NCHAR_TEXT || ((LA631_0 >= NOT2_SYMBOL) && (LA631_0 <= NOW_SYMBOL)) || ((LA631_0 >= NULL2_SYMBOL) && (LA631_0 <= NULL_SYMBOL)) || LA631_0 == OPEN_CURLY_SYMBOL || ((LA631_0 >= PARAM_MARKER) && (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 >= UTC_DATE_SYMBOL) && (LA631_0 <= UTC_TIME_SYMBOL)) || LA631_0 == VALUES_SYMBOL || LA631_0 == VARIANCE_SYMBOL || LA631_0 == VAR_SAMP_SYMBOL || ((LA631_0 >= AT_AT_SIGN_SYMBOL) && (LA631_0 <= AT_TEXT_SUFFIX)) || ((LA631_0 >= BACK_TICK_QUOTED_ID) && (LA631_0 <= BIN_NUMBER)) || LA631_0 == BITWISE_NOT_OPERATOR || ((LA631_0 >= BIT_AND_SYMBOL) && (LA631_0 <= BIT_XOR_SYMBOL)) || LA631_0 == DECIMAL_NUMBER || LA631_0 == DOT_SYMBOL || LA631_0 == DOUBLE_QUOTED_TEXT || LA631_0 == FLOAT_NUMBER || ((LA631_0 >= HEX_NUMBER) && (LA631_0 <= IDENTIFIER)) || LA631_0 == INT_NUMBER || LA631_0 == LOGICAL_NOT_OPERATOR || ((LA631_0 >= LONG_NUMBER) && (LA631_0 <= MINUS_OPERATOR)) || LA631_0 == PLUS_OPERATOR || ((LA631_0 >= ULONGLONG_NUMBER) && (LA631_0 <= UNDERSCORE_CHARSET))))
        	                {
        	                    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:2273:4: ( OPEN_PAR_SYMBOL expression COMMA_SYMBOL )=> interval_function
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_interval_function_in_interval_expression11156);
        	        	        interval_function2023=interval_function(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleinterval_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, interval_function2023.tree);

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:2274:6: interval_time_span
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_interval_time_span_in_interval_expression11163);
        	        	        interval_time_span2024=interval_time_span(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleinterval_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, interval_time_span2024.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2276:4: primary
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_primary_in_interval_expression11172);
        	        primary2025=primary(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, primary2025.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:2279: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_SYMBOL2026;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2028;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2030;
    MySQLParser_expression_return expression2027;
    #undef	RETURN_TYPE_expression2027
    #define	RETURN_TYPE_expression2027 MySQLParser_expression_return

    MySQLParser_expression_return expression2029;
    #undef	RETURN_TYPE_expression2029
    #define	RETURN_TYPE_expression2029 MySQLParser_expression_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2026_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2028_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2030_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_SYMBOL2026       = NULL;
    COMMA_SYMBOL2028       = NULL;
    CLOSE_PAR_SYMBOL2030       = NULL;
    expression2027.tree = NULL;

    expression2029.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL2026_tree   = NULL;
    COMMA_SYMBOL2028_tree   = NULL;
    CLOSE_PAR_SYMBOL2030_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:2279: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:2280:2: OPEN_PAR_SYMBOL expression ( COMMA_SYMBOL expression )+ CLOSE_PAR_SYMBOL
        {
            OPEN_PAR_SYMBOL2026 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_interval_function11181);
            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_SYMBOL2026, NULL); }


            FOLLOWPUSH(FOLLOW_expression_in_interval_function11183);
            expression2027=expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleinterval_functionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_expression; stream_expression->add(stream_expression, expression2027.tree, NULL); }

            // MySQL.g:2280: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:2280:30: COMMA_SYMBOL expression
            	        {
            	            COMMA_SYMBOL2028 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_interval_function11186);
            	            if  (HASEXCEPTION())
            	            {
            	                goto ruleinterval_functionEx;
            	            }
            	            if (HASFAILED())
            	            {
            	                return retval;
            	            }
            	             
            	            if ( BACKTRACKING==0 ) { CREATE_stream_COMMA_SYMBOL; stream_COMMA_SYMBOL->add(stream_COMMA_SYMBOL, COMMA_SYMBOL2028, NULL); }


            	            FOLLOWPUSH(FOLLOW_expression_in_interval_function11188);
            	            expression2029=expression(ctx);

            	            FOLLOWPOP();
            	            if  (HASEXCEPTION())
            	            {
            	                goto ruleinterval_functionEx;
            	            }
            	            if (HASFAILED())
            	            {
            	                return retval;
            	            }

            	            if ( BACKTRACKING==0 ) { CREATE_stream_expression; stream_expression->add(stream_expression, expression2029.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_SYMBOL2030 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_interval_function11192);
            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_SYMBOL2030, NULL); }


            /* AST REWRITE
             * elements          : expression, CLOSE_PAR_SYMBOL, COMMA_SYMBOL, expression, OPEN_PAR_SYMBOL
             * token labels      : 
             * rule labels       : retval
             * token list labels : 
             * rule list labels  : 
             */
            if ( BACKTRACKING==0 ) 

            {
            	pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_retval;

            	stream_retval=antlr3RewriteRuleSubtreeStreamNewAEE(ADAPTOR,  RECOGNIZER, (pANTLR3_UINT8)"token retval", retval.tree != NULL ? retval.tree : NULL);

            	root_0			    = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));
            	retval.tree    = root_0;
            	// 2281:3: -> ^( RUNTIME_FUNCTION_TOKEN INTERVAL_SYMBOL OPEN_PAR_SYMBOL expression ( COMMA_SYMBOL expression )+ CLOSE_PAR_SYMBOL )
            	{
            	    // MySQL.g:2281: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:2284: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 interval2031;
    #undef	RETURN_TYPE_interval2031
    #define	RETURN_TYPE_interval2031 MySQLParser_interval_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_interval;
    /* Initialize rule variables
     */

    root_0 = NULL;

    interval2031.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:2284:19: ( interval -> ^( INTERVAL_SYMBOL interval ) )
        // MySQL.g:2285:2: interval
        {
            FOLLOWPUSH(FOLLOW_interval_in_interval_time_span11224);
            interval2031=interval(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleinterval_time_spanEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_interval; stream_interval->add(stream_interval, interval2031.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;
            	// 2285:11: -> ^( INTERVAL_SYMBOL interval )
            	{
            	    // MySQL.g:2285: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:2288:1: primary : ( options {k=4; } : literal | function_call | runtime_function_call | column_ref ( jsonOperator )? | PARAM_MARKER | variable | EXISTS_SYMBOL subquery | expression_with_nested_parentheses | ROW_SYMBOL OPEN_PAR_SYMBOL expression ( COMMA_SYMBOL expression )+ CLOSE_PAR_SYMBOL | 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    PARAM_MARKER2037;
    pANTLR3_COMMON_TOKEN    EXISTS_SYMBOL2039;
    pANTLR3_COMMON_TOKEN    ROW_SYMBOL2042;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2043;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2045;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2047;
    pANTLR3_COMMON_TOKEN    OPEN_CURLY_SYMBOL2048;
    pANTLR3_COMMON_TOKEN    CLOSE_CURLY_SYMBOL2051;
    pANTLR3_COMMON_TOKEN    COLLATE_SYMBOL2055;
    MySQLParser_literal_return literal2032;
    #undef	RETURN_TYPE_literal2032
    #define	RETURN_TYPE_literal2032 MySQLParser_literal_return

    MySQLParser_function_call_return function_call2033;
    #undef	RETURN_TYPE_function_call2033
    #define	RETURN_TYPE_function_call2033 MySQLParser_function_call_return

    MySQLParser_runtime_function_call_return runtime_function_call2034;
    #undef	RETURN_TYPE_runtime_function_call2034
    #define	RETURN_TYPE_runtime_function_call2034 MySQLParser_runtime_function_call_return

    MySQLParser_column_ref_return column_ref2035;
    #undef	RETURN_TYPE_column_ref2035
    #define	RETURN_TYPE_column_ref2035 MySQLParser_column_ref_return

    MySQLParser_jsonOperator_return jsonOperator2036;
    #undef	RETURN_TYPE_jsonOperator2036
    #define	RETURN_TYPE_jsonOperator2036 MySQLParser_jsonOperator_return

    MySQLParser_variable_return variable2038;
    #undef	RETURN_TYPE_variable2038
    #define	RETURN_TYPE_variable2038 MySQLParser_variable_return

    MySQLParser_subquery_return subquery2040;
    #undef	RETURN_TYPE_subquery2040
    #define	RETURN_TYPE_subquery2040 MySQLParser_subquery_return

    MySQLParser_expression_with_nested_parentheses_return expression_with_nested_parentheses2041;
    #undef	RETURN_TYPE_expression_with_nested_parentheses2041
    #define	RETURN_TYPE_expression_with_nested_parentheses2041 MySQLParser_expression_with_nested_parentheses_return

    MySQLParser_expression_return expression2044;
    #undef	RETURN_TYPE_expression2044
    #define	RETURN_TYPE_expression2044 MySQLParser_expression_return

    MySQLParser_expression_return expression2046;
    #undef	RETURN_TYPE_expression2046
    #define	RETURN_TYPE_expression2046 MySQLParser_expression_return

    MySQLParser_identifier_return identifier2049;
    #undef	RETURN_TYPE_identifier2049
    #define	RETURN_TYPE_identifier2049 MySQLParser_identifier_return

    MySQLParser_expression_return expression2050;
    #undef	RETURN_TYPE_expression2050
    #define	RETURN_TYPE_expression2050 MySQLParser_expression_return

    MySQLParser_match_expression_return match_expression2052;
    #undef	RETURN_TYPE_match_expression2052
    #define	RETURN_TYPE_match_expression2052 MySQLParser_match_expression_return

    MySQLParser_case_expression_return case_expression2053;
    #undef	RETURN_TYPE_case_expression2053
    #define	RETURN_TYPE_case_expression2053 MySQLParser_case_expression_return

    MySQLParser_cast_expression_return cast_expression2054;
    #undef	RETURN_TYPE_cast_expression2054
    #define	RETURN_TYPE_cast_expression2054 MySQLParser_cast_expression_return

    MySQLParser_collation_name_return collation_name2056;
    #undef	RETURN_TYPE_collation_name2056
    #define	RETURN_TYPE_collation_name2056 MySQLParser_collation_name_return

    pANTLR3_BASE_TREE PARAM_MARKER2037_tree;
    pANTLR3_BASE_TREE EXISTS_SYMBOL2039_tree;
    pANTLR3_BASE_TREE ROW_SYMBOL2042_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2043_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2045_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2047_tree;
    pANTLR3_BASE_TREE OPEN_CURLY_SYMBOL2048_tree;
    pANTLR3_BASE_TREE CLOSE_CURLY_SYMBOL2051_tree;
    pANTLR3_BASE_TREE COLLATE_SYMBOL2055_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    PARAM_MARKER2037       = NULL;
    EXISTS_SYMBOL2039       = NULL;
    ROW_SYMBOL2042       = NULL;
    OPEN_PAR_SYMBOL2043       = NULL;
    COMMA_SYMBOL2045       = NULL;
    CLOSE_PAR_SYMBOL2047       = NULL;
    OPEN_CURLY_SYMBOL2048       = NULL;
    CLOSE_CURLY_SYMBOL2051       = NULL;
    COLLATE_SYMBOL2055       = NULL;
    literal2032.tree = NULL;

    function_call2033.tree = NULL;

    runtime_function_call2034.tree = NULL;

    column_ref2035.tree = NULL;

    jsonOperator2036.tree = NULL;

    variable2038.tree = NULL;

    subquery2040.tree = NULL;

    expression_with_nested_parentheses2041.tree = NULL;

    expression2044.tree = NULL;

    expression2046.tree = NULL;

    identifier2049.tree = NULL;

    expression2050.tree = NULL;

    match_expression2052.tree = NULL;

    case_expression2053.tree = NULL;

    cast_expression2054.tree = NULL;

    collation_name2056.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    PARAM_MARKER2037_tree   = NULL;
    EXISTS_SYMBOL2039_tree   = NULL;
    ROW_SYMBOL2042_tree   = NULL;
    OPEN_PAR_SYMBOL2043_tree   = NULL;
    COMMA_SYMBOL2045_tree   = NULL;
    CLOSE_PAR_SYMBOL2047_tree   = NULL;
    OPEN_CURLY_SYMBOL2048_tree   = NULL;
    CLOSE_CURLY_SYMBOL2051_tree   = NULL;
    COLLATE_SYMBOL2055_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2288:8: ( ( options {k=4; } : literal | function_call | runtime_function_call | column_ref ( jsonOperator )? | PARAM_MARKER | variable | EXISTS_SYMBOL subquery | expression_with_nested_parentheses | ROW_SYMBOL OPEN_PAR_SYMBOL expression ( COMMA_SYMBOL expression )+ CLOSE_PAR_SYMBOL | OPEN_CURLY_SYMBOL identifier expression CLOSE_CURLY_SYMBOL | match_expression | case_expression | cast_expression ) ( options {greedy=true; } : COLLATE_SYMBOL collation_name )* )
        // MySQL.g:2289:5: ( options {k=4; } : literal | function_call | runtime_function_call | column_ref ( jsonOperator )? | PARAM_MARKER | variable | EXISTS_SYMBOL subquery | expression_with_nested_parentheses | ROW_SYMBOL OPEN_PAR_SYMBOL expression ( COMMA_SYMBOL expression )+ CLOSE_PAR_SYMBOL | 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:2289:5: ( options {k=4; } : literal | function_call | runtime_function_call | column_ref ( jsonOperator )? | PARAM_MARKER | variable | EXISTS_SYMBOL subquery | expression_with_nested_parentheses | ROW_SYMBOL OPEN_PAR_SYMBOL expression ( COMMA_SYMBOL expression )+ CLOSE_PAR_SYMBOL | 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 == FALSE_SYMBOL || LA636_0 == NCHAR_TEXT || ((LA636_0 >= NULL2_SYMBOL) && (LA636_0 <= NULL_SYMBOL)) || LA636_0 == SINGLE_QUOTED_TEXT || LA636_0 == TRUE_SYMBOL || LA636_0 == BIN_NUMBER || LA636_0 == DECIMAL_NUMBER || LA636_0 == FLOAT_NUMBER || LA636_0 == HEX_NUMBER || LA636_0 == INT_NUMBER || LA636_0 == LONG_NUMBER || ((LA636_0 >= ULONGLONG_NUMBER) && (LA636_0 <= UNDERSCORE_CHARSET))))
                    {
                        alt636=1;
                    }
                    else if ( (LA636_0 == DOUBLE_QUOTED_TEXT))
                    {
                        {
                            int LA636_4 = LA(2);
                            if ( (LA636_4 == OPEN_PAR_SYMBOL || LA636_4 == DOT_SYMBOL))
                            {
                                alt636=2;
                            }
                            else if ( ((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))
                            {
                                alt636=1;
                            }
                            else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))
                            {
                                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        = 4;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == DATE_SYMBOL))
                    {
                        {
                            int LA636_6 = LA(2);
                            if ( (LA636_6 == SINGLE_QUOTED_TEXT))
                            {
                                {
                                    int LA636_187 = LA(3);
                                    if ( ((LA(1) == DATE_SYMBOL || LA(1) == TIME_SYMBOL || LA(1) == TIMESTAMP_SYMBOL)))
                                    {
                                        alt636=1;
                                    }
                                    else if ( (ANTLR3_TRUE))
                                    {
                                        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 == OPEN_PAR_SYMBOL))
                            {
                                alt636=3;
                            }
                            else if ( (LA636_6 == EOF || ((LA636_6 >= ACCOUNT_SYMBOL) && (LA636_6 <= YEAR_SYMBOL)) || ((LA636_6 >= AND_SYMBOL) && (LA636_6 <= ASC_SYMBOL)) || LA636_6 == BETWEEN_SYMBOL || LA636_6 == COLLATE_SYMBOL || LA636_6 == CROSS_SYMBOL || ((LA636_6 >= DAY_HOUR_SYMBOL) && (LA636_6 <= DAY_SECOND_SYMBOL)) || LA636_6 == DESC_SYMBOL || LA636_6 == ELSE_SYMBOL || ((LA636_6 >= FOR_SYMBOL) && (LA636_6 <= FROM_SYMBOL)) || ((LA636_6 >= GROUP_SYMBOL) && (LA636_6 <= HAVING_SYMBOL)) || ((LA636_6 >= HOUR_MICROSECOND_SYMBOL) && (LA636_6 <= HOUR_SECOND_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA636_6 == LOCK_SYMBOL || ((LA636_6 >= MINUTE_MICROSECOND_SYMBOL) && (LA636_6 <= MINUTE_SECOND_SYMBOL)) || ((LA636_6 >= MOD_SYMBOL) && (LA636_6 <= NATURAL_SYMBOL)) || LA636_6 == NOT_SYMBOL || LA636_6 == ON_SYMBOL || ((LA636_6 >= ORDER_SYMBOL) && (LA636_6 <= OR_SYMBOL)) || 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 == 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)) || ((LA636_6 >= AS_SYMBOL) && (LA636_6 <= AT_TEXT_SUFFIX)) || ((LA636_6 >= BACK_TICK_QUOTED_ID) && (LA636_6 <= BITWISE_AND_OPERATOR)) || ((LA636_6 >= BITWISE_OR_OPERATOR) && (LA636_6 <= BITWISE_XOR_OPERATOR)) || ((LA636_6 >= CLOSE_CURLY_SYMBOL) && (LA636_6 <= CLOSE_PAR_SYMBOL)) || ((LA636_6 >= COMMA_SYMBOL) && (LA636_6 <= CONCAT_PIPES_SYMBOL)) || ((LA636_6 >= DIV_OPERATOR) && (LA636_6 <= DIV_SYMBOL)) || LA636_6 == DOT_SYMBOL || LA636_6 == DOUBLE_QUOTED_TEXT || LA636_6 == EQUAL_OPERATOR || ((LA636_6 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_6 <= GREATER_THAN_OPERATOR)) || ((LA636_6 >= HEX_NUMBER) && (LA636_6 <= IDENTIFIER)) || LA636_6 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA636_6 >= LESS_OR_EQUAL_OPERATOR) && (LA636_6 <= LESS_THAN_OPERATOR)) || LA636_6 == LOGICAL_AND_OPERATOR || LA636_6 == LOGICAL_OR_OPERATOR || ((LA636_6 >= MINUS_OPERATOR) && (LA636_6 <= MOD_OPERATOR)) || ((LA636_6 >= MULT_OPERATOR) && (LA636_6 <= NULL_SAFE_EQUAL_OPERATOR)) || LA636_6 == PLUS_OPERATOR || ((LA636_6 >= SHIFT_LEFT_OPERATOR) && (LA636_6 <= SHIFT_RIGHT_OPERATOR))))
                            {
                                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        = 6;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == TIME_SYMBOL))
                    {
                        {
                            int LA636_7 = LA(2);
                            if ( (LA636_7 == SINGLE_QUOTED_TEXT))
                            {
                                {
                                    int LA636_275 = LA(3);
                                    if ( ((LA(1) == DATE_SYMBOL || LA(1) == TIME_SYMBOL || LA(1) == TIMESTAMP_SYMBOL)))
                                    {
                                        alt636=1;
                                    }
                                    else if ( (ANTLR3_TRUE))
                                    {
                                        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        = 275;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_7 == OPEN_PAR_SYMBOL))
                            {
                                alt636=3;
                            }
                            else if ( (LA636_7 == EOF || ((LA636_7 >= ACCOUNT_SYMBOL) && (LA636_7 <= YEAR_SYMBOL)) || ((LA636_7 >= AND_SYMBOL) && (LA636_7 <= ASC_SYMBOL)) || LA636_7 == BETWEEN_SYMBOL || LA636_7 == COLLATE_SYMBOL || LA636_7 == CROSS_SYMBOL || ((LA636_7 >= DAY_HOUR_SYMBOL) && (LA636_7 <= DAY_SECOND_SYMBOL)) || LA636_7 == DESC_SYMBOL || LA636_7 == ELSE_SYMBOL || ((LA636_7 >= FOR_SYMBOL) && (LA636_7 <= FROM_SYMBOL)) || ((LA636_7 >= GROUP_SYMBOL) && (LA636_7 <= HAVING_SYMBOL)) || ((LA636_7 >= HOUR_MICROSECOND_SYMBOL) && (LA636_7 <= HOUR_SECOND_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA636_7 == LOCK_SYMBOL || ((LA636_7 >= MINUTE_MICROSECOND_SYMBOL) && (LA636_7 <= MINUTE_SECOND_SYMBOL)) || ((LA636_7 >= MOD_SYMBOL) && (LA636_7 <= NATURAL_SYMBOL)) || LA636_7 == NOT_SYMBOL || LA636_7 == ON_SYMBOL || ((LA636_7 >= ORDER_SYMBOL) && (LA636_7 <= OR_SYMBOL)) || 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 == 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)) || ((LA636_7 >= AS_SYMBOL) && (LA636_7 <= AT_TEXT_SUFFIX)) || ((LA636_7 >= BACK_TICK_QUOTED_ID) && (LA636_7 <= BITWISE_AND_OPERATOR)) || ((LA636_7 >= BITWISE_OR_OPERATOR) && (LA636_7 <= BITWISE_XOR_OPERATOR)) || ((LA636_7 >= CLOSE_CURLY_SYMBOL) && (LA636_7 <= CLOSE_PAR_SYMBOL)) || ((LA636_7 >= COMMA_SYMBOL) && (LA636_7 <= CONCAT_PIPES_SYMBOL)) || ((LA636_7 >= DIV_OPERATOR) && (LA636_7 <= DIV_SYMBOL)) || LA636_7 == DOT_SYMBOL || LA636_7 == DOUBLE_QUOTED_TEXT || LA636_7 == EQUAL_OPERATOR || ((LA636_7 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_7 <= GREATER_THAN_OPERATOR)) || ((LA636_7 >= HEX_NUMBER) && (LA636_7 <= IDENTIFIER)) || LA636_7 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA636_7 >= LESS_OR_EQUAL_OPERATOR) && (LA636_7 <= LESS_THAN_OPERATOR)) || LA636_7 == LOGICAL_AND_OPERATOR || LA636_7 == LOGICAL_OR_OPERATOR || ((LA636_7 >= MINUS_OPERATOR) && (LA636_7 <= MOD_OPERATOR)) || ((LA636_7 >= MULT_OPERATOR) && (LA636_7 <= NULL_SAFE_EQUAL_OPERATOR)) || LA636_7 == PLUS_OPERATOR || ((LA636_7 >= SHIFT_LEFT_OPERATOR) && (LA636_7 <= SHIFT_RIGHT_OPERATOR))))
                            {
                                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        = 7;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == TIMESTAMP_SYMBOL))
                    {
                        {
                            int LA636_8 = LA(2);
                            if ( (LA636_8 == SINGLE_QUOTED_TEXT))
                            {
                                {
                                    int LA636_363 = LA(3);
                                    if ( ((LA(1) == DATE_SYMBOL || LA(1) == TIME_SYMBOL || LA(1) == TIMESTAMP_SYMBOL)))
                                    {
                                        alt636=1;
                                    }
                                    else if ( (ANTLR3_TRUE))
                                    {
                                        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        = 363;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_8 == OPEN_PAR_SYMBOL))
                            {
                                alt636=3;
                            }
                            else if ( (LA636_8 == EOF || ((LA636_8 >= ACCOUNT_SYMBOL) && (LA636_8 <= YEAR_SYMBOL)) || ((LA636_8 >= AND_SYMBOL) && (LA636_8 <= ASC_SYMBOL)) || LA636_8 == BETWEEN_SYMBOL || LA636_8 == COLLATE_SYMBOL || LA636_8 == CROSS_SYMBOL || ((LA636_8 >= DAY_HOUR_SYMBOL) && (LA636_8 <= DAY_SECOND_SYMBOL)) || LA636_8 == DESC_SYMBOL || LA636_8 == ELSE_SYMBOL || ((LA636_8 >= FOR_SYMBOL) && (LA636_8 <= FROM_SYMBOL)) || ((LA636_8 >= GROUP_SYMBOL) && (LA636_8 <= HAVING_SYMBOL)) || ((LA636_8 >= HOUR_MICROSECOND_SYMBOL) && (LA636_8 <= HOUR_SECOND_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA636_8 == LOCK_SYMBOL || ((LA636_8 >= MINUTE_MICROSECOND_SYMBOL) && (LA636_8 <= MINUTE_SECOND_SYMBOL)) || ((LA636_8 >= MOD_SYMBOL) && (LA636_8 <= NATURAL_SYMBOL)) || LA636_8 == NOT_SYMBOL || LA636_8 == ON_SYMBOL || ((LA636_8 >= ORDER_SYMBOL) && (LA636_8 <= OR_SYMBOL)) || 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 == 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)) || ((LA636_8 >= AS_SYMBOL) && (LA636_8 <= AT_TEXT_SUFFIX)) || ((LA636_8 >= BACK_TICK_QUOTED_ID) && (LA636_8 <= BITWISE_AND_OPERATOR)) || ((LA636_8 >= BITWISE_OR_OPERATOR) && (LA636_8 <= BITWISE_XOR_OPERATOR)) || ((LA636_8 >= CLOSE_CURLY_SYMBOL) && (LA636_8 <= CLOSE_PAR_SYMBOL)) || ((LA636_8 >= COMMA_SYMBOL) && (LA636_8 <= CONCAT_PIPES_SYMBOL)) || ((LA636_8 >= DIV_OPERATOR) && (LA636_8 <= DIV_SYMBOL)) || LA636_8 == DOT_SYMBOL || LA636_8 == DOUBLE_QUOTED_TEXT || LA636_8 == EQUAL_OPERATOR || ((LA636_8 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_8 <= GREATER_THAN_OPERATOR)) || ((LA636_8 >= HEX_NUMBER) && (LA636_8 <= IDENTIFIER)) || LA636_8 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA636_8 >= LESS_OR_EQUAL_OPERATOR) && (LA636_8 <= LESS_THAN_OPERATOR)) || LA636_8 == LOGICAL_AND_OPERATOR || LA636_8 == LOGICAL_OR_OPERATOR || ((LA636_8 >= MINUS_OPERATOR) && (LA636_8 <= MOD_OPERATOR)) || ((LA636_8 >= MULT_OPERATOR) && (LA636_8 <= NULL_SAFE_EQUAL_OPERATOR)) || LA636_8 == PLUS_OPERATOR || ((LA636_8 >= SHIFT_LEFT_OPERATOR) && (LA636_8 <= SHIFT_RIGHT_OPERATOR))))
                            {
                                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        = 8;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == IDENTIFIER))
                    {
                        {
                            int LA636_13 = LA(2);
                            if ( (LA636_13 == OPEN_PAR_SYMBOL))
                            {
                                alt636=2;
                            }
                            else if ( (LA636_13 == DOT_SYMBOL))
                            {
                                {
                                    int LA636_452 = LA(3);
                                    if ( (LA636_452 == IDENTIFIER))
                                    {
                                        {
                                            int LA636_3832 = LA(4);
                                            if ( (LA636_3832 == OPEN_PAR_SYMBOL))
                                            {
                                                alt636=2;
                                            }
                                            else if ( (LA636_3832 == EOF || ((LA636_3832 >= ACCOUNT_SYMBOL) && (LA636_3832 <= YEAR_SYMBOL)) || ((LA636_3832 >= AND_SYMBOL) && (LA636_3832 <= ASC_SYMBOL)) || LA636_3832 == BETWEEN_SYMBOL || LA636_3832 == COLLATE_SYMBOL || LA636_3832 == CROSS_SYMBOL || ((LA636_3832 >= DAY_HOUR_SYMBOL) && (LA636_3832 <= DAY_SECOND_SYMBOL)) || LA636_3832 == DESC_SYMBOL || LA636_3832 == ELSE_SYMBOL || ((LA636_3832 >= FOR_SYMBOL) && (LA636_3832 <= FROM_SYMBOL)) || ((LA636_3832 >= GROUP_SYMBOL) && (LA636_3832 <= HAVING_SYMBOL)) || ((LA636_3832 >= HOUR_MICROSECOND_SYMBOL) && (LA636_3832 <= HOUR_SECOND_SYMBOL)) || LA636_3832 == INNER_SYMBOL || LA636_3832 == INTO_SYMBOL || LA636_3832 == IN_SYMBOL || LA636_3832 == IS_SYMBOL || ((LA636_3832 >= JOIN_SYMBOL) && (LA636_3832 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_3832 >= LEFT_SYMBOL) && (LA636_3832 <= LIMIT_SYMBOL)) || LA636_3832 == LOCK_SYMBOL || ((LA636_3832 >= MINUTE_MICROSECOND_SYMBOL) && (LA636_3832 <= MINUTE_SECOND_SYMBOL)) || ((LA636_3832 >= MOD_SYMBOL) && (LA636_3832 <= NATURAL_SYMBOL)) || LA636_3832 == NOT_SYMBOL || LA636_3832 == ON_SYMBOL || ((LA636_3832 >= ORDER_SYMBOL) && (LA636_3832 <= OR_SYMBOL)) || LA636_3832 == PROCEDURE_SYMBOL || LA636_3832 == REGEXP_SYMBOL || LA636_3832 == RENAME_SYMBOL || LA636_3832 == RIGHT_SYMBOL || LA636_3832 == SECOND_MICROSECOND_SYMBOL || LA636_3832 == SEMICOLON_SYMBOL || LA636_3832 == SEPARATOR_SYMBOL || LA636_3832 == SET_SYMBOL || LA636_3832 == SINGLE_QUOTED_TEXT || LA636_3832 == STRAIGHT_JOIN_SYMBOL || LA636_3832 == THEN_SYMBOL || LA636_3832 == UNION_SYMBOL || LA636_3832 == USING_SYMBOL || ((LA636_3832 >= WHEN_SYMBOL) && (LA636_3832 <= WHERE_SYMBOL)) || LA636_3832 == WITH_SYMBOL || ((LA636_3832 >= XOR_SYMBOL) && (LA636_3832 <= YEAR_MONTH_SYMBOL)) || ((LA636_3832 >= AS_SYMBOL) && (LA636_3832 <= AT_TEXT_SUFFIX)) || ((LA636_3832 >= BACK_TICK_QUOTED_ID) && (LA636_3832 <= BITWISE_AND_OPERATOR)) || ((LA636_3832 >= BITWISE_OR_OPERATOR) && (LA636_3832 <= BITWISE_XOR_OPERATOR)) || ((LA636_3832 >= CLOSE_CURLY_SYMBOL) && (LA636_3832 <= CLOSE_PAR_SYMBOL)) || ((LA636_3832 >= COMMA_SYMBOL) && (LA636_3832 <= CONCAT_PIPES_SYMBOL)) || ((LA636_3832 >= DIV_OPERATOR) && (LA636_3832 <= DIV_SYMBOL)) || LA636_3832 == DOT_SYMBOL || LA636_3832 == DOUBLE_QUOTED_TEXT || LA636_3832 == EQUAL_OPERATOR || ((LA636_3832 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_3832 <= GREATER_THAN_OPERATOR)) || ((LA636_3832 >= HEX_NUMBER) && (LA636_3832 <= IDENTIFIER)) || LA636_3832 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA636_3832 >= LESS_OR_EQUAL_OPERATOR) && (LA636_3832 <= LESS_THAN_OPERATOR)) || LA636_3832 == LOGICAL_AND_OPERATOR || LA636_3832 == LOGICAL_OR_OPERATOR || ((LA636_3832 >= MINUS_OPERATOR) && (LA636_3832 <= MOD_OPERATOR)) || ((LA636_3832 >= MULT_OPERATOR) && (LA636_3832 <= NULL_SAFE_EQUAL_OPERATOR)) || LA636_3832 == PLUS_OPERATOR || ((LA636_3832 >= SHIFT_LEFT_OPERATOR) && (LA636_3832 <= SHIFT_RIGHT_OPERATOR))))
                                            {
                                                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        = 3832;


                                                goto ruleprimaryEx;

                                            }
                                        }
                                    }
                                    else if ( (LA636_452 == BACK_TICK_QUOTED_ID))
                                    {
                                        {
                                            int LA636_3833 = LA(4);
                                            if ( (LA636_3833 == OPEN_PAR_SYMBOL))
                                            {
                                                alt636=2;
                                            }
                                            else if ( (LA636_3833 == EOF || ((LA636_3833 >= ACCOUNT_SYMBOL) && (LA636_3833 <= YEAR_SYMBOL)) || ((LA636_3833 >= AND_SYMBOL) && (LA636_3833 <= ASC_SYMBOL)) || LA636_3833 == BETWEEN_SYMBOL || LA636_3833 == COLLATE_SYMBOL || LA636_3833 == CROSS_SYMBOL || ((LA636_3833 >= DAY_HOUR_SYMBOL) && (LA636_3833 <= DAY_SECOND_SYMBOL)) || LA636_3833 == DESC_SYMBOL || LA636_3833 == ELSE_SYMBOL || ((LA636_3833 >= FOR_SYMBOL) && (LA636_3833 <= FROM_SYMBOL)) || ((LA636_3833 >= GROUP_SYMBOL) && (LA636_3833 <= HAVING_SYMBOL)) || ((LA636_3833 >= HOUR_MICROSECOND_SYMBOL) && (LA636_3833 <= HOUR_SECOND_SYMBOL)) || LA636_3833 == INNER_SYMBOL || LA636_3833 == INTO_SYMBOL || LA636_3833 == IN_SYMBOL || LA636_3833 == IS_SYMBOL || ((LA636_3833 >= JOIN_SYMBOL) && (LA636_3833 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_3833 >= LEFT_SYMBOL) && (LA636_3833 <= LIMIT_SYMBOL)) || LA636_3833 == LOCK_SYMBOL || ((LA636_3833 >= MINUTE_MICROSECOND_SYMBOL) && (LA636_3833 <= MINUTE_SECOND_SYMBOL)) || ((LA636_3833 >= MOD_SYMBOL) && (LA636_3833 <= NATURAL_SYMBOL)) || LA636_3833 == NOT_SYMBOL || LA636_3833 == ON_SYMBOL || ((LA636_3833 >= ORDER_SYMBOL) && (LA636_3833 <= OR_SYMBOL)) || LA636_3833 == PROCEDURE_SYMBOL || LA636_3833 == REGEXP_SYMBOL || LA636_3833 == RENAME_SYMBOL || LA636_3833 == RIGHT_SYMBOL || LA636_3833 == SECOND_MICROSECOND_SYMBOL || LA636_3833 == SEMICOLON_SYMBOL || LA636_3833 == SEPARATOR_SYMBOL || LA636_3833 == SET_SYMBOL || LA636_3833 == SINGLE_QUOTED_TEXT || LA636_3833 == STRAIGHT_JOIN_SYMBOL || LA636_3833 == THEN_SYMBOL || LA636_3833 == UNION_SYMBOL || LA636_3833 == USING_SYMBOL || ((LA636_3833 >= WHEN_SYMBOL) && (LA636_3833 <= WHERE_SYMBOL)) || LA636_3833 == WITH_SYMBOL || ((LA636_3833 >= XOR_SYMBOL) && (LA636_3833 <= YEAR_MONTH_SYMBOL)) || ((LA636_3833 >= AS_SYMBOL) && (LA636_3833 <= AT_TEXT_SUFFIX)) || ((LA636_3833 >= BACK_TICK_QUOTED_ID) && (LA636_3833 <= BITWISE_AND_OPERATOR)) || ((LA636_3833 >= BITWISE_OR_OPERATOR) && (LA636_3833 <= BITWISE_XOR_OPERATOR)) || ((LA636_3833 >= CLOSE_CURLY_SYMBOL) && (LA636_3833 <= CLOSE_PAR_SYMBOL)) || ((LA636_3833 >= COMMA_SYMBOL) && (LA636_3833 <= CONCAT_PIPES_SYMBOL)) || ((LA636_3833 >= DIV_OPERATOR) && (LA636_3833 <= DIV_SYMBOL)) || LA636_3833 == DOT_SYMBOL || LA636_3833 == DOUBLE_QUOTED_TEXT || LA636_3833 == EQUAL_OPERATOR || ((LA636_3833 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_3833 <= GREATER_THAN_OPERATOR)) || ((LA636_3833 >= HEX_NUMBER) && (LA636_3833 <= IDENTIFIER)) || LA636_3833 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA636_3833 >= LESS_OR_EQUAL_OPERATOR) && (LA636_3833 <= LESS_THAN_OPERATOR)) || LA636_3833 == LOGICAL_AND_OPERATOR || LA636_3833 == LOGICAL_OR_OPERATOR || ((LA636_3833 >= MINUS_OPERATOR) && (LA636_3833 <= MOD_OPERATOR)) || ((LA636_3833 >= MULT_OPERATOR) && (LA636_3833 <= NULL_SAFE_EQUAL_OPERATOR)) || LA636_3833 == PLUS_OPERATOR || ((LA636_3833 >= SHIFT_LEFT_OPERATOR) && (LA636_3833 <= SHIFT_RIGHT_OPERATOR))))
                                            {
                                                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        = 3833;


                                                goto ruleprimaryEx;

                                            }
                                        }
                                    }
                                    else if ( (LA636_452 == DOUBLE_QUOTED_TEXT))
                                    {
                                        {
                                            int LA636_3834 = LA(4);
                                            if ( (LA636_3834 == OPEN_PAR_SYMBOL))
                                            {
                                                alt636=2;
                                            }
                                            else if ( (LA636_3834 == EOF || ((LA636_3834 >= ACCOUNT_SYMBOL) && (LA636_3834 <= YEAR_SYMBOL)) || ((LA636_3834 >= AND_SYMBOL) && (LA636_3834 <= ASC_SYMBOL)) || LA636_3834 == BETWEEN_SYMBOL || LA636_3834 == COLLATE_SYMBOL || LA636_3834 == CROSS_SYMBOL || ((LA636_3834 >= DAY_HOUR_SYMBOL) && (LA636_3834 <= DAY_SECOND_SYMBOL)) || LA636_3834 == DESC_SYMBOL || LA636_3834 == ELSE_SYMBOL || ((LA636_3834 >= FOR_SYMBOL) && (LA636_3834 <= FROM_SYMBOL)) || ((LA636_3834 >= GROUP_SYMBOL) && (LA636_3834 <= HAVING_SYMBOL)) || ((LA636_3834 >= HOUR_MICROSECOND_SYMBOL) && (LA636_3834 <= HOUR_SECOND_SYMBOL)) || LA636_3834 == INNER_SYMBOL || LA636_3834 == INTO_SYMBOL || LA636_3834 == IN_SYMBOL || LA636_3834 == IS_SYMBOL || ((LA636_3834 >= JOIN_SYMBOL) && (LA636_3834 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_3834 >= LEFT_SYMBOL) && (LA636_3834 <= LIMIT_SYMBOL)) || LA636_3834 == LOCK_SYMBOL || ((LA636_3834 >= MINUTE_MICROSECOND_SYMBOL) && (LA636_3834 <= MINUTE_SECOND_SYMBOL)) || ((LA636_3834 >= MOD_SYMBOL) && (LA636_3834 <= NATURAL_SYMBOL)) || LA636_3834 == NOT_SYMBOL || LA636_3834 == ON_SYMBOL || ((LA636_3834 >= ORDER_SYMBOL) && (LA636_3834 <= OR_SYMBOL)) || LA636_3834 == PROCEDURE_SYMBOL || LA636_3834 == REGEXP_SYMBOL || LA636_3834 == RENAME_SYMBOL || LA636_3834 == RIGHT_SYMBOL || LA636_3834 == SECOND_MICROSECOND_SYMBOL || LA636_3834 == SEMICOLON_SYMBOL || LA636_3834 == SEPARATOR_SYMBOL || LA636_3834 == SET_SYMBOL || LA636_3834 == SINGLE_QUOTED_TEXT || LA636_3834 == STRAIGHT_JOIN_SYMBOL || LA636_3834 == THEN_SYMBOL || LA636_3834 == UNION_SYMBOL || LA636_3834 == USING_SYMBOL || ((LA636_3834 >= WHEN_SYMBOL) && (LA636_3834 <= WHERE_SYMBOL)) || LA636_3834 == WITH_SYMBOL || ((LA636_3834 >= XOR_SYMBOL) && (LA636_3834 <= YEAR_MONTH_SYMBOL)) || ((LA636_3834 >= AS_SYMBOL) && (LA636_3834 <= AT_TEXT_SUFFIX)) || ((LA636_3834 >= BACK_TICK_QUOTED_ID) && (LA636_3834 <= BITWISE_AND_OPERATOR)) || ((LA636_3834 >= BITWISE_OR_OPERATOR) && (LA636_3834 <= BITWISE_XOR_OPERATOR)) || ((LA636_3834 >= CLOSE_CURLY_SYMBOL) && (LA636_3834 <= CLOSE_PAR_SYMBOL)) || ((LA636_3834 >= COMMA_SYMBOL) && (LA636_3834 <= CONCAT_PIPES_SYMBOL)) || ((LA636_3834 >= DIV_OPERATOR) && (LA636_3834 <= DIV_SYMBOL)) || LA636_3834 == DOT_SYMBOL || LA636_3834 == DOUBLE_QUOTED_TEXT || LA636_3834 == EQUAL_OPERATOR || ((LA636_3834 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_3834 <= GREATER_THAN_OPERATOR)) || ((LA636_3834 >= HEX_NUMBER) && (LA636_3834 <= IDENTIFIER)) || LA636_3834 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA636_3834 >= LESS_OR_EQUAL_OPERATOR) && (LA636_3834 <= LESS_THAN_OPERATOR)) || LA636_3834 == LOGICAL_AND_OPERATOR || LA636_3834 == LOGICAL_OR_OPERATOR || ((LA636_3834 >= MINUS_OPERATOR) && (LA636_3834 <= MOD_OPERATOR)) || ((LA636_3834 >= MULT_OPERATOR) && (LA636_3834 <= NULL_SAFE_EQUAL_OPERATOR)) || LA636_3834 == PLUS_OPERATOR || ((LA636_3834 >= SHIFT_LEFT_OPERATOR) && (LA636_3834 <= SHIFT_RIGHT_OPERATOR))))
                                            {
                                                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        = 3834;


                                                goto ruleprimaryEx;

                                            }
                                        }
                                    }
                                    else if ( (((LA636_452 >= ACTION_SYMBOL) && (LA636_452 <= SHARE_SYMBOL)) || ((LA636_452 >= SLOW_SYMBOL) && (LA636_452 <= YEAR_SYMBOL))))
                                    {
                                        {
                                            int LA636_3835 = LA(4);
                                            if ( (LA636_3835 == OPEN_PAR_SYMBOL))
                                            {
                                                alt636=2;
                                            }
                                            else if ( (LA636_3835 == EOF || ((LA636_3835 >= ACCOUNT_SYMBOL) && (LA636_3835 <= YEAR_SYMBOL)) || ((LA636_3835 >= AND_SYMBOL) && (LA636_3835 <= ASC_SYMBOL)) || LA636_3835 == BETWEEN_SYMBOL || LA636_3835 == COLLATE_SYMBOL || LA636_3835 == CROSS_SYMBOL || ((LA636_3835 >= DAY_HOUR_SYMBOL) && (LA636_3835 <= DAY_SECOND_SYMBOL)) || LA636_3835 == DESC_SYMBOL || LA636_3835 == ELSE_SYMBOL || ((LA636_3835 >= FOR_SYMBOL) && (LA636_3835 <= FROM_SYMBOL)) || ((LA636_3835 >= GROUP_SYMBOL) && (LA636_3835 <= HAVING_SYMBOL)) || ((LA636_3835 >= HOUR_MICROSECOND_SYMBOL) && (LA636_3835 <= HOUR_SECOND_SYMBOL)) || LA636_3835 == INNER_SYMBOL || LA636_3835 == INTO_SYMBOL || LA636_3835 == IN_SYMBOL || LA636_3835 == IS_SYMBOL || ((LA636_3835 >= JOIN_SYMBOL) && (LA636_3835 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_3835 >= LEFT_SYMBOL) && (LA636_3835 <= LIMIT_SYMBOL)) || LA636_3835 == LOCK_SYMBOL || ((LA636_3835 >= MINUTE_MICROSECOND_SYMBOL) && (LA636_3835 <= MINUTE_SECOND_SYMBOL)) || ((LA636_3835 >= MOD_SYMBOL) && (LA636_3835 <= NATURAL_SYMBOL)) || LA636_3835 == NOT_SYMBOL || LA636_3835 == ON_SYMBOL || ((LA636_3835 >= ORDER_SYMBOL) && (LA636_3835 <= OR_SYMBOL)) || LA636_3835 == PROCEDURE_SYMBOL || LA636_3835 == REGEXP_SYMBOL || LA636_3835 == RENAME_SYMBOL || LA636_3835 == RIGHT_SYMBOL || LA636_3835 == SECOND_MICROSECOND_SYMBOL || LA636_3835 == SEMICOLON_SYMBOL || LA636_3835 == SEPARATOR_SYMBOL || LA636_3835 == SET_SYMBOL || LA636_3835 == SINGLE_QUOTED_TEXT || LA636_3835 == STRAIGHT_JOIN_SYMBOL || LA636_3835 == THEN_SYMBOL || LA636_3835 == UNION_SYMBOL || LA636_3835 == USING_SYMBOL || ((LA636_3835 >= WHEN_SYMBOL) && (LA636_3835 <= WHERE_SYMBOL)) || LA636_3835 == WITH_SYMBOL || ((LA636_3835 >= XOR_SYMBOL) && (LA636_3835 <= YEAR_MONTH_SYMBOL)) || ((LA636_3835 >= AS_SYMBOL) && (LA636_3835 <= AT_TEXT_SUFFIX)) || ((LA636_3835 >= BACK_TICK_QUOTED_ID) && (LA636_3835 <= BITWISE_AND_OPERATOR)) || ((LA636_3835 >= BITWISE_OR_OPERATOR) && (LA636_3835 <= BITWISE_XOR_OPERATOR)) || ((LA636_3835 >= CLOSE_CURLY_SYMBOL) && (LA636_3835 <= CLOSE_PAR_SYMBOL)) || ((LA636_3835 >= COMMA_SYMBOL) && (LA636_3835 <= CONCAT_PIPES_SYMBOL)) || ((LA636_3835 >= DIV_OPERATOR) && (LA636_3835 <= DIV_SYMBOL)) || LA636_3835 == DOT_SYMBOL || LA636_3835 == DOUBLE_QUOTED_TEXT || LA636_3835 == EQUAL_OPERATOR || ((LA636_3835 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_3835 <= GREATER_THAN_OPERATOR)) || ((LA636_3835 >= HEX_NUMBER) && (LA636_3835 <= IDENTIFIER)) || LA636_3835 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA636_3835 >= LESS_OR_EQUAL_OPERATOR) && (LA636_3835 <= LESS_THAN_OPERATOR)) || LA636_3835 == LOGICAL_AND_OPERATOR || LA636_3835 == LOGICAL_OR_OPERATOR || ((LA636_3835 >= MINUS_OPERATOR) && (LA636_3835 <= MOD_OPERATOR)) || ((LA636_3835 >= MULT_OPERATOR) && (LA636_3835 <= NULL_SAFE_EQUAL_OPERATOR)) || LA636_3835 == PLUS_OPERATOR || ((LA636_3835 >= SHIFT_LEFT_OPERATOR) && (LA636_3835 <= SHIFT_RIGHT_OPERATOR))))
                                            {
                                                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        = 3835;


                                                goto ruleprimaryEx;

                                            }
                                        }
                                    }
                                    else if ( (((LA636_452 >= ACCOUNT_SYMBOL) && (LA636_452 <= XA_SYMBOL)) || LA636_452 == SHUTDOWN_SYMBOL))
                                    {
                                        {
                                            int LA636_3836 = LA(4);
                                            if ( (LA636_3836 == OPEN_PAR_SYMBOL))
                                            {
                                                alt636=2;
                                            }
                                            else if ( (LA636_3836 == EOF || ((LA636_3836 >= ACCOUNT_SYMBOL) && (LA636_3836 <= YEAR_SYMBOL)) || ((LA636_3836 >= AND_SYMBOL) && (LA636_3836 <= ASC_SYMBOL)) || LA636_3836 == BETWEEN_SYMBOL || LA636_3836 == COLLATE_SYMBOL || LA636_3836 == CROSS_SYMBOL || ((LA636_3836 >= DAY_HOUR_SYMBOL) && (LA636_3836 <= DAY_SECOND_SYMBOL)) || LA636_3836 == DESC_SYMBOL || LA636_3836 == ELSE_SYMBOL || ((LA636_3836 >= FOR_SYMBOL) && (LA636_3836 <= FROM_SYMBOL)) || ((LA636_3836 >= GROUP_SYMBOL) && (LA636_3836 <= HAVING_SYMBOL)) || ((LA636_3836 >= HOUR_MICROSECOND_SYMBOL) && (LA636_3836 <= HOUR_SECOND_SYMBOL)) || LA636_3836 == INNER_SYMBOL || LA636_3836 == INTO_SYMBOL || LA636_3836 == IN_SYMBOL || LA636_3836 == IS_SYMBOL || ((LA636_3836 >= JOIN_SYMBOL) && (LA636_3836 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_3836 >= LEFT_SYMBOL) && (LA636_3836 <= LIMIT_SYMBOL)) || LA636_3836 == LOCK_SYMBOL || ((LA636_3836 >= MINUTE_MICROSECOND_SYMBOL) && (LA636_3836 <= MINUTE_SECOND_SYMBOL)) || ((LA636_3836 >= MOD_SYMBOL) && (LA636_3836 <= NATURAL_SYMBOL)) || LA636_3836 == NOT_SYMBOL || LA636_3836 == ON_SYMBOL || ((LA636_3836 >= ORDER_SYMBOL) && (LA636_3836 <= OR_SYMBOL)) || LA636_3836 == PROCEDURE_SYMBOL || LA636_3836 == REGEXP_SYMBOL || LA636_3836 == RENAME_SYMBOL || LA636_3836 == RIGHT_SYMBOL || LA636_3836 == SECOND_MICROSECOND_SYMBOL || LA636_3836 == SEMICOLON_SYMBOL || LA636_3836 == SEPARATOR_SYMBOL || LA636_3836 == SET_SYMBOL || LA636_3836 == SINGLE_QUOTED_TEXT || LA636_3836 == STRAIGHT_JOIN_SYMBOL || LA636_3836 == THEN_SYMBOL || LA636_3836 == UNION_SYMBOL || LA636_3836 == USING_SYMBOL || ((LA636_3836 >= WHEN_SYMBOL) && (LA636_3836 <= WHERE_SYMBOL)) || LA636_3836 == WITH_SYMBOL || ((LA636_3836 >= XOR_SYMBOL) && (LA636_3836 <= YEAR_MONTH_SYMBOL)) || ((LA636_3836 >= AS_SYMBOL) && (LA636_3836 <= AT_TEXT_SUFFIX)) || ((LA636_3836 >= BACK_TICK_QUOTED_ID) && (LA636_3836 <= BITWISE_AND_OPERATOR)) || ((LA636_3836 >= BITWISE_OR_OPERATOR) && (LA636_3836 <= BITWISE_XOR_OPERATOR)) || ((LA636_3836 >= CLOSE_CURLY_SYMBOL) && (LA636_3836 <= CLOSE_PAR_SYMBOL)) || ((LA636_3836 >= COMMA_SYMBOL) && (LA636_3836 <= CONCAT_PIPES_SYMBOL)) || ((LA636_3836 >= DIV_OPERATOR) && (LA636_3836 <= DIV_SYMBOL)) || LA636_3836 == DOT_SYMBOL || LA636_3836 == DOUBLE_QUOTED_TEXT || LA636_3836 == EQUAL_OPERATOR || ((LA636_3836 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_3836 <= GREATER_THAN_OPERATOR)) || ((LA636_3836 >= HEX_NUMBER) && (LA636_3836 <= IDENTIFIER)) || LA636_3836 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA636_3836 >= LESS_OR_EQUAL_OPERATOR) && (LA636_3836 <= LESS_THAN_OPERATOR)) || LA636_3836 == LOGICAL_AND_OPERATOR || LA636_3836 == LOGICAL_OR_OPERATOR || ((LA636_3836 >= MINUS_OPERATOR) && (LA636_3836 <= MOD_OPERATOR)) || ((LA636_3836 >= MULT_OPERATOR) && (LA636_3836 <= NULL_SAFE_EQUAL_OPERATOR)) || LA636_3836 == PLUS_OPERATOR || ((LA636_3836 >= SHIFT_LEFT_OPERATOR) && (LA636_3836 <= SHIFT_RIGHT_OPERATOR))))
                                            {
                                                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        = 3836;


                                                goto ruleprimaryEx;

                                            }
                                        }
                                    }
                                    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        = 452;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_13 == EOF || ((LA636_13 >= ACCOUNT_SYMBOL) && (LA636_13 <= YEAR_SYMBOL)) || ((LA636_13 >= AND_SYMBOL) && (LA636_13 <= ASC_SYMBOL)) || LA636_13 == BETWEEN_SYMBOL || LA636_13 == COLLATE_SYMBOL || LA636_13 == CROSS_SYMBOL || ((LA636_13 >= DAY_HOUR_SYMBOL) && (LA636_13 <= DAY_SECOND_SYMBOL)) || LA636_13 == DESC_SYMBOL || LA636_13 == ELSE_SYMBOL || ((LA636_13 >= FOR_SYMBOL) && (LA636_13 <= FROM_SYMBOL)) || ((LA636_13 >= GROUP_SYMBOL) && (LA636_13 <= HAVING_SYMBOL)) || ((LA636_13 >= HOUR_MICROSECOND_SYMBOL) && (LA636_13 <= HOUR_SECOND_SYMBOL)) || LA636_13 == INNER_SYMBOL || LA636_13 == INTO_SYMBOL || LA636_13 == IN_SYMBOL || LA636_13 == IS_SYMBOL || ((LA636_13 >= JOIN_SYMBOL) && (LA636_13 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_13 >= LEFT_SYMBOL) && (LA636_13 <= LIMIT_SYMBOL)) || LA636_13 == LOCK_SYMBOL || ((LA636_13 >= MINUTE_MICROSECOND_SYMBOL) && (LA636_13 <= MINUTE_SECOND_SYMBOL)) || ((LA636_13 >= MOD_SYMBOL) && (LA636_13 <= NATURAL_SYMBOL)) || LA636_13 == NOT_SYMBOL || LA636_13 == ON_SYMBOL || ((LA636_13 >= ORDER_SYMBOL) && (LA636_13 <= OR_SYMBOL)) || LA636_13 == PROCEDURE_SYMBOL || LA636_13 == REGEXP_SYMBOL || LA636_13 == RENAME_SYMBOL || LA636_13 == RIGHT_SYMBOL || LA636_13 == SECOND_MICROSECOND_SYMBOL || LA636_13 == SEMICOLON_SYMBOL || LA636_13 == SEPARATOR_SYMBOL || LA636_13 == SET_SYMBOL || LA636_13 == SINGLE_QUOTED_TEXT || LA636_13 == STRAIGHT_JOIN_SYMBOL || LA636_13 == THEN_SYMBOL || LA636_13 == UNION_SYMBOL || LA636_13 == USING_SYMBOL || ((LA636_13 >= WHEN_SYMBOL) && (LA636_13 <= WHERE_SYMBOL)) || LA636_13 == WITH_SYMBOL || ((LA636_13 >= XOR_SYMBOL) && (LA636_13 <= YEAR_MONTH_SYMBOL)) || ((LA636_13 >= AS_SYMBOL) && (LA636_13 <= AT_TEXT_SUFFIX)) || ((LA636_13 >= BACK_TICK_QUOTED_ID) && (LA636_13 <= BITWISE_AND_OPERATOR)) || ((LA636_13 >= BITWISE_OR_OPERATOR) && (LA636_13 <= BITWISE_XOR_OPERATOR)) || ((LA636_13 >= CLOSE_CURLY_SYMBOL) && (LA636_13 <= CLOSE_PAR_SYMBOL)) || ((LA636_13 >= COMMA_SYMBOL) && (LA636_13 <= CONCAT_PIPES_SYMBOL)) || ((LA636_13 >= DIV_OPERATOR) && (LA636_13 <= DIV_SYMBOL)) || LA636_13 == DOUBLE_QUOTED_TEXT || LA636_13 == EQUAL_OPERATOR || ((LA636_13 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_13 <= GREATER_THAN_OPERATOR)) || ((LA636_13 >= HEX_NUMBER) && (LA636_13 <= IDENTIFIER)) || LA636_13 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA636_13 >= LESS_OR_EQUAL_OPERATOR) && (LA636_13 <= LESS_THAN_OPERATOR)) || LA636_13 == LOGICAL_AND_OPERATOR || LA636_13 == LOGICAL_OR_OPERATOR || ((LA636_13 >= MINUS_OPERATOR) && (LA636_13 <= MOD_OPERATOR)) || ((LA636_13 >= MULT_OPERATOR) && (LA636_13 <= NULL_SAFE_EQUAL_OPERATOR)) || LA636_13 == PLUS_OPERATOR || ((LA636_13 >= SHIFT_LEFT_OPERATOR) && (LA636_13 <= SHIFT_RIGHT_OPERATOR))))
                            {
                                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        = 13;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == BACK_TICK_QUOTED_ID))
                    {
                        {
                            int LA636_14 = LA(2);
                            if ( (LA636_14 == OPEN_PAR_SYMBOL))
                            {
                                alt636=2;
                            }
                            else if ( (LA636_14 == DOT_SYMBOL))
                            {
                                {
                                    int LA636_539 = LA(3);
                                    if ( (LA636_539 == IDENTIFIER))
                                    {
                                        {
                                            int LA636_3837 = LA(4);
                                            if ( (LA636_3837 == OPEN_PAR_SYMBOL))
                                            {
                                                alt636=2;
                                            }
                                            else if ( (LA636_3837 == EOF || ((LA636_3837 >= ACCOUNT_SYMBOL) && (LA636_3837 <= YEAR_SYMBOL)) || ((LA636_3837 >= AND_SYMBOL) && (LA636_3837 <= ASC_SYMBOL)) || LA636_3837 == BETWEEN_SYMBOL || LA636_3837 == COLLATE_SYMBOL || LA636_3837 == CROSS_SYMBOL || ((LA636_3837 >= DAY_HOUR_SYMBOL) && (LA636_3837 <= DAY_SECOND_SYMBOL)) || LA636_3837 == DESC_SYMBOL || LA636_3837 == ELSE_SYMBOL || ((LA636_3837 >= FOR_SYMBOL) && (LA636_3837 <= FROM_SYMBOL)) || ((LA636_3837 >= GROUP_SYMBOL) && (LA636_3837 <= HAVING_SYMBOL)) || ((LA636_3837 >= HOUR_MICROSECOND_SYMBOL) && (LA636_3837 <= HOUR_SECOND_SYMBOL)) || LA636_3837 == INNER_SYMBOL || LA636_3837 == INTO_SYMBOL || LA636_3837 == IN_SYMBOL || LA636_3837 == IS_SYMBOL || ((LA636_3837 >= JOIN_SYMBOL) && (LA636_3837 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_3837 >= LEFT_SYMBOL) && (LA636_3837 <= LIMIT_SYMBOL)) || LA636_3837 == LOCK_SYMBOL || ((LA636_3837 >= MINUTE_MICROSECOND_SYMBOL) && (LA636_3837 <= MINUTE_SECOND_SYMBOL)) || ((LA636_3837 >= MOD_SYMBOL) && (LA636_3837 <= NATURAL_SYMBOL)) || LA636_3837 == NOT_SYMBOL || LA636_3837 == ON_SYMBOL || ((LA636_3837 >= ORDER_SYMBOL) && (LA636_3837 <= OR_SYMBOL)) || LA636_3837 == PROCEDURE_SYMBOL || LA636_3837 == REGEXP_SYMBOL || LA636_3837 == RENAME_SYMBOL || LA636_3837 == RIGHT_SYMBOL || LA636_3837 == SECOND_MICROSECOND_SYMBOL || LA636_3837 == SEMICOLON_SYMBOL || LA636_3837 == SEPARATOR_SYMBOL || LA636_3837 == SET_SYMBOL || LA636_3837 == SINGLE_QUOTED_TEXT || LA636_3837 == STRAIGHT_JOIN_SYMBOL || LA636_3837 == THEN_SYMBOL || LA636_3837 == UNION_SYMBOL || LA636_3837 == USING_SYMBOL || ((LA636_3837 >= WHEN_SYMBOL) && (LA636_3837 <= WHERE_SYMBOL)) || LA636_3837 == WITH_SYMBOL || ((LA636_3837 >= XOR_SYMBOL) && (LA636_3837 <= YEAR_MONTH_SYMBOL)) || ((LA636_3837 >= AS_SYMBOL) && (LA636_3837 <= AT_TEXT_SUFFIX)) || ((LA636_3837 >= BACK_TICK_QUOTED_ID) && (LA636_3837 <= BITWISE_AND_OPERATOR)) || ((LA636_3837 >= BITWISE_OR_OPERATOR) && (LA636_3837 <= BITWISE_XOR_OPERATOR)) || ((LA636_3837 >= CLOSE_CURLY_SYMBOL) && (LA636_3837 <= CLOSE_PAR_SYMBOL)) || ((LA636_3837 >= COMMA_SYMBOL) && (LA636_3837 <= CONCAT_PIPES_SYMBOL)) || ((LA636_3837 >= DIV_OPERATOR) && (LA636_3837 <= DIV_SYMBOL)) || LA636_3837 == DOT_SYMBOL || LA636_3837 == DOUBLE_QUOTED_TEXT || LA636_3837 == EQUAL_OPERATOR || ((LA636_3837 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_3837 <= GREATER_THAN_OPERATOR)) || ((LA636_3837 >= HEX_NUMBER) && (LA636_3837 <= IDENTIFIER)) || LA636_3837 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA636_3837 >= LESS_OR_EQUAL_OPERATOR) && (LA636_3837 <= LESS_THAN_OPERATOR)) || LA636_3837 == LOGICAL_AND_OPERATOR || LA636_3837 == LOGICAL_OR_OPERATOR || ((LA636_3837 >= MINUS_OPERATOR) && (LA636_3837 <= MOD_OPERATOR)) || ((LA636_3837 >= MULT_OPERATOR) && (LA636_3837 <= NULL_SAFE_EQUAL_OPERATOR)) || LA636_3837 == PLUS_OPERATOR || ((LA636_3837 >= SHIFT_LEFT_OPERATOR) && (LA636_3837 <= SHIFT_RIGHT_OPERATOR))))
                                            {
                                                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        = 3837;


                                                goto ruleprimaryEx;

                                            }
                                        }
                                    }
                                    else if ( (LA636_539 == BACK_TICK_QUOTED_ID))
                                    {
                                        {
                                            int LA636_3838 = LA(4);
                                            if ( (LA636_3838 == OPEN_PAR_SYMBOL))
                                            {
                                                alt636=2;
                                            }
                                            else if ( (LA636_3838 == EOF || ((LA636_3838 >= ACCOUNT_SYMBOL) && (LA636_3838 <= YEAR_SYMBOL)) || ((LA636_3838 >= AND_SYMBOL) && (LA636_3838 <= ASC_SYMBOL)) || LA636_3838 == BETWEEN_SYMBOL || LA636_3838 == COLLATE_SYMBOL || LA636_3838 == CROSS_SYMBOL || ((LA636_3838 >= DAY_HOUR_SYMBOL) && (LA636_3838 <= DAY_SECOND_SYMBOL)) || LA636_3838 == DESC_SYMBOL || LA636_3838 == ELSE_SYMBOL || ((LA636_3838 >= FOR_SYMBOL) && (LA636_3838 <= FROM_SYMBOL)) || ((LA636_3838 >= GROUP_SYMBOL) && (LA636_3838 <= HAVING_SYMBOL)) || ((LA636_3838 >= HOUR_MICROSECOND_SYMBOL) && (LA636_3838 <= HOUR_SECOND_SYMBOL)) || LA636_3838 == INNER_SYMBOL || LA636_3838 == INTO_SYMBOL || LA636_3838 == IN_SYMBOL || LA636_3838 == IS_SYMBOL || ((LA636_3838 >= JOIN_SYMBOL) && (LA636_3838 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_3838 >= LEFT_SYMBOL) && (LA636_3838 <= LIMIT_SYMBOL)) || LA636_3838 == LOCK_SYMBOL || ((LA636_3838 >= MINUTE_MICROSECOND_SYMBOL) && (LA636_3838 <= MINUTE_SECOND_SYMBOL)) || ((LA636_3838 >= MOD_SYMBOL) && (LA636_3838 <= NATURAL_SYMBOL)) || LA636_3838 == NOT_SYMBOL || LA636_3838 == ON_SYMBOL || ((LA636_3838 >= ORDER_SYMBOL) && (LA636_3838 <= OR_SYMBOL)) || LA636_3838 == PROCEDURE_SYMBOL || LA636_3838 == REGEXP_SYMBOL || LA636_3838 == RENAME_SYMBOL || LA636_3838 == RIGHT_SYMBOL || LA636_3838 == SECOND_MICROSECOND_SYMBOL || LA636_3838 == SEMICOLON_SYMBOL || LA636_3838 == SEPARATOR_SYMBOL || LA636_3838 == SET_SYMBOL || LA636_3838 == SINGLE_QUOTED_TEXT || LA636_3838 == STRAIGHT_JOIN_SYMBOL || LA636_3838 == THEN_SYMBOL || LA636_3838 == UNION_SYMBOL || LA636_3838 == USING_SYMBOL || ((LA636_3838 >= WHEN_SYMBOL) && (LA636_3838 <= WHERE_SYMBOL)) || LA636_3838 == WITH_SYMBOL || ((LA636_3838 >= XOR_SYMBOL) && (LA636_3838 <= YEAR_MONTH_SYMBOL)) || ((LA636_3838 >= AS_SYMBOL) && (LA636_3838 <= AT_TEXT_SUFFIX)) || ((LA636_3838 >= BACK_TICK_QUOTED_ID) && (LA636_3838 <= BITWISE_AND_OPERATOR)) || ((LA636_3838 >= BITWISE_OR_OPERATOR) && (LA636_3838 <= BITWISE_XOR_OPERATOR)) || ((LA636_3838 >= CLOSE_CURLY_SYMBOL) && (LA636_3838 <= CLOSE_PAR_SYMBOL)) || ((LA636_3838 >= COMMA_SYMBOL) && (LA636_3838 <= CONCAT_PIPES_SYMBOL)) || ((LA636_3838 >= DIV_OPERATOR) && (LA636_3838 <= DIV_SYMBOL)) || LA636_3838 == DOT_SYMBOL || LA636_3838 == DOUBLE_QUOTED_TEXT || LA636_3838 == EQUAL_OPERATOR || ((LA636_3838 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_3838 <= GREATER_THAN_OPERATOR)) || ((LA636_3838 >= HEX_NUMBER) && (LA636_3838 <= IDENTIFIER)) || LA636_3838 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA636_3838 >= LESS_OR_EQUAL_OPERATOR) && (LA636_3838 <= LESS_THAN_OPERATOR)) || LA636_3838 == LOGICAL_AND_OPERATOR || LA636_3838 == LOGICAL_OR_OPERATOR || ((LA636_3838 >= MINUS_OPERATOR) && (LA636_3838 <= MOD_OPERATOR)) || ((LA636_3838 >= MULT_OPERATOR) && (LA636_3838 <= NULL_SAFE_EQUAL_OPERATOR)) || LA636_3838 == PLUS_OPERATOR || ((LA636_3838 >= SHIFT_LEFT_OPERATOR) && (LA636_3838 <= SHIFT_RIGHT_OPERATOR))))
                                            {
                                                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        = 3838;


                                                goto ruleprimaryEx;

                                            }
                                        }
                                    }
                                    else if ( (LA636_539 == DOUBLE_QUOTED_TEXT))
                                    {
                                        {
                                            int LA636_3839 = LA(4);
                                            if ( (LA636_3839 == OPEN_PAR_SYMBOL))
                                            {
                                                alt636=2;
                                            }
                                            else if ( (LA636_3839 == EOF || ((LA636_3839 >= ACCOUNT_SYMBOL) && (LA636_3839 <= YEAR_SYMBOL)) || ((LA636_3839 >= AND_SYMBOL) && (LA636_3839 <= ASC_SYMBOL)) || LA636_3839 == BETWEEN_SYMBOL || LA636_3839 == COLLATE_SYMBOL || LA636_3839 == CROSS_SYMBOL || ((LA636_3839 >= DAY_HOUR_SYMBOL) && (LA636_3839 <= DAY_SECOND_SYMBOL)) || LA636_3839 == DESC_SYMBOL || LA636_3839 == ELSE_SYMBOL || ((LA636_3839 >= FOR_SYMBOL) && (LA636_3839 <= FROM_SYMBOL)) || ((LA636_3839 >= GROUP_SYMBOL) && (LA636_3839 <= HAVING_SYMBOL)) || ((LA636_3839 >= HOUR_MICROSECOND_SYMBOL) && (LA636_3839 <= HOUR_SECOND_SYMBOL)) || LA636_3839 == INNER_SYMBOL || LA636_3839 == INTO_SYMBOL || LA636_3839 == IN_SYMBOL || LA636_3839 == IS_SYMBOL || ((LA636_3839 >= JOIN_SYMBOL) && (LA636_3839 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_3839 >= LEFT_SYMBOL) && (LA636_3839 <= LIMIT_SYMBOL)) || LA636_3839 == LOCK_SYMBOL || ((LA636_3839 >= MINUTE_MICROSECOND_SYMBOL) && (LA636_3839 <= MINUTE_SECOND_SYMBOL)) || ((LA636_3839 >= MOD_SYMBOL) && (LA636_3839 <= NATURAL_SYMBOL)) || LA636_3839 == NOT_SYMBOL || LA636_3839 == ON_SYMBOL || ((LA636_3839 >= ORDER_SYMBOL) && (LA636_3839 <= OR_SYMBOL)) || LA636_3839 == PROCEDURE_SYMBOL || LA636_3839 == REGEXP_SYMBOL || LA636_3839 == RENAME_SYMBOL || LA636_3839 == RIGHT_SYMBOL || LA636_3839 == SECOND_MICROSECOND_SYMBOL || LA636_3839 == SEMICOLON_SYMBOL || LA636_3839 == SEPARATOR_SYMBOL || LA636_3839 == SET_SYMBOL || LA636_3839 == SINGLE_QUOTED_TEXT || LA636_3839 == STRAIGHT_JOIN_SYMBOL || LA636_3839 == THEN_SYMBOL || LA636_3839 == UNION_SYMBOL || LA636_3839 == USING_SYMBOL || ((LA636_3839 >= WHEN_SYMBOL) && (LA636_3839 <= WHERE_SYMBOL)) || LA636_3839 == WITH_SYMBOL || ((LA636_3839 >= XOR_SYMBOL) && (LA636_3839 <= YEAR_MONTH_SYMBOL)) || ((LA636_3839 >= AS_SYMBOL) && (LA636_3839 <= AT_TEXT_SUFFIX)) || ((LA636_3839 >= BACK_TICK_QUOTED_ID) && (LA636_3839 <= BITWISE_AND_OPERATOR)) || ((LA636_3839 >= BITWISE_OR_OPERATOR) && (LA636_3839 <= BITWISE_XOR_OPERATOR)) || ((LA636_3839 >= CLOSE_CURLY_SYMBOL) && (LA636_3839 <= CLOSE_PAR_SYMBOL)) || ((LA636_3839 >= COMMA_SYMBOL) && (LA636_3839 <= CONCAT_PIPES_SYMBOL)) || ((LA636_3839 >= DIV_OPERATOR) && (LA636_3839 <= DIV_SYMBOL)) || LA636_3839 == DOT_SYMBOL || LA636_3839 == DOUBLE_QUOTED_TEXT || LA636_3839 == EQUAL_OPERATOR || ((LA636_3839 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_3839 <= GREATER_THAN_OPERATOR)) || ((LA636_3839 >= HEX_NUMBER) && (LA636_3839 <= IDENTIFIER)) || LA636_3839 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA636_3839 >= LESS_OR_EQUAL_OPERATOR) && (LA636_3839 <= LESS_THAN_OPERATOR)) || LA636_3839 == LOGICAL_AND_OPERATOR || LA636_3839 == LOGICAL_OR_OPERATOR || ((LA636_3839 >= MINUS_OPERATOR) && (LA636_3839 <= MOD_OPERATOR)) || ((LA636_3839 >= MULT_OPERATOR) && (LA636_3839 <= NULL_SAFE_EQUAL_OPERATOR)) || LA636_3839 == PLUS_OPERATOR || ((LA636_3839 >= SHIFT_LEFT_OPERATOR) && (LA636_3839 <= SHIFT_RIGHT_OPERATOR))))
                                            {
                                                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        = 3839;


                                                goto ruleprimaryEx;

                                            }
                                        }
                                    }
                                    else if ( (((LA636_539 >= ACTION_SYMBOL) && (LA636_539 <= SHARE_SYMBOL)) || ((LA636_539 >= SLOW_SYMBOL) && (LA636_539 <= YEAR_SYMBOL))))
                                    {
                                        {
                                            int LA636_3840 = LA(4);
                                            if ( (LA636_3840 == OPEN_PAR_SYMBOL))
                                            {
                                                alt636=2;
                                            }
                                            else if ( (LA636_3840 == EOF || ((LA636_3840 >= ACCOUNT_SYMBOL) && (LA636_3840 <= YEAR_SYMBOL)) || ((LA636_3840 >= AND_SYMBOL) && (LA636_3840 <= ASC_SYMBOL)) || LA636_3840 == BETWEEN_SYMBOL || LA636_3840 == COLLATE_SYMBOL || LA636_3840 == CROSS_SYMBOL || ((LA636_3840 >= DAY_HOUR_SYMBOL) && (LA636_3840 <= DAY_SECOND_SYMBOL)) || LA636_3840 == DESC_SYMBOL || LA636_3840 == ELSE_SYMBOL || ((LA636_3840 >= FOR_SYMBOL) && (LA636_3840 <= FROM_SYMBOL)) || ((LA636_3840 >= GROUP_SYMBOL) && (LA636_3840 <= HAVING_SYMBOL)) || ((LA636_3840 >= HOUR_MICROSECOND_SYMBOL) && (LA636_3840 <= HOUR_SECOND_SYMBOL)) || LA636_3840 == INNER_SYMBOL || LA636_3840 == INTO_SYMBOL || LA636_3840 == IN_SYMBOL || LA636_3840 == IS_SYMBOL || ((LA636_3840 >= JOIN_SYMBOL) && (LA636_3840 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_3840 >= LEFT_SYMBOL) && (LA636_3840 <= LIMIT_SYMBOL)) || LA636_3840 == LOCK_SYMBOL || ((LA636_3840 >= MINUTE_MICROSECOND_SYMBOL) && (LA636_3840 <= MINUTE_SECOND_SYMBOL)) || ((LA636_3840 >= MOD_SYMBOL) && (LA636_3840 <= NATURAL_SYMBOL)) || LA636_3840 == NOT_SYMBOL || LA636_3840 == ON_SYMBOL || ((LA636_3840 >= ORDER_SYMBOL) && (LA636_3840 <= OR_SYMBOL)) || LA636_3840 == PROCEDURE_SYMBOL || LA636_3840 == REGEXP_SYMBOL || LA636_3840 == RENAME_SYMBOL || LA636_3840 == RIGHT_SYMBOL || LA636_3840 == SECOND_MICROSECOND_SYMBOL || LA636_3840 == SEMICOLON_SYMBOL || LA636_3840 == SEPARATOR_SYMBOL || LA636_3840 == SET_SYMBOL || LA636_3840 == SINGLE_QUOTED_TEXT || LA636_3840 == STRAIGHT_JOIN_SYMBOL || LA636_3840 == THEN_SYMBOL || LA636_3840 == UNION_SYMBOL || LA636_3840 == USING_SYMBOL || ((LA636_3840 >= WHEN_SYMBOL) && (LA636_3840 <= WHERE_SYMBOL)) || LA636_3840 == WITH_SYMBOL || ((LA636_3840 >= XOR_SYMBOL) && (LA636_3840 <= YEAR_MONTH_SYMBOL)) || ((LA636_3840 >= AS_SYMBOL) && (LA636_3840 <= AT_TEXT_SUFFIX)) || ((LA636_3840 >= BACK_TICK_QUOTED_ID) && (LA636_3840 <= BITWISE_AND_OPERATOR)) || ((LA636_3840 >= BITWISE_OR_OPERATOR) && (LA636_3840 <= BITWISE_XOR_OPERATOR)) || ((LA636_3840 >= CLOSE_CURLY_SYMBOL) && (LA636_3840 <= CLOSE_PAR_SYMBOL)) || ((LA636_3840 >= COMMA_SYMBOL) && (LA636_3840 <= CONCAT_PIPES_SYMBOL)) || ((LA636_3840 >= DIV_OPERATOR) && (LA636_3840 <= DIV_SYMBOL)) || LA636_3840 == DOT_SYMBOL || LA636_3840 == DOUBLE_QUOTED_TEXT || LA636_3840 == EQUAL_OPERATOR || ((LA636_3840 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_3840 <= GREATER_THAN_OPERATOR)) || ((LA636_3840 >= HEX_NUMBER) && (LA636_3840 <= IDENTIFIER)) || LA636_3840 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA636_3840 >= LESS_OR_EQUAL_OPERATOR) && (LA636_3840 <= LESS_THAN_OPERATOR)) || LA636_3840 == LOGICAL_AND_OPERATOR || LA636_3840 == LOGICAL_OR_OPERATOR || ((LA636_3840 >= MINUS_OPERATOR) && (LA636_3840 <= MOD_OPERATOR)) || ((LA636_3840 >= MULT_OPERATOR) && (LA636_3840 <= NULL_SAFE_EQUAL_OPERATOR)) || LA636_3840 == PLUS_OPERATOR || ((LA636_3840 >= SHIFT_LEFT_OPERATOR) && (LA636_3840 <= SHIFT_RIGHT_OPERATOR))))
                                            {
                                                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        = 3840;


                                                goto ruleprimaryEx;

                                            }
                                        }
                                    }
                                    else if ( (((LA636_539 >= ACCOUNT_SYMBOL) && (LA636_539 <= XA_SYMBOL)) || LA636_539 == SHUTDOWN_SYMBOL))
                                    {
                                        {
                                            int LA636_3841 = LA(4);
                                            if ( (LA636_3841 == OPEN_PAR_SYMBOL))
                                            {
                                                alt636=2;
                                            }
                                            else if ( (LA636_3841 == EOF || ((LA636_3841 >= ACCOUNT_SYMBOL) && (LA636_3841 <= YEAR_SYMBOL)) || ((LA636_3841 >= AND_SYMBOL) && (LA636_3841 <= ASC_SYMBOL)) || LA636_3841 == BETWEEN_SYMBOL || LA636_3841 == COLLATE_SYMBOL || LA636_3841 == CROSS_SYMBOL || ((LA636_3841 >= DAY_HOUR_SYMBOL) && (LA636_3841 <= DAY_SECOND_SYMBOL)) || LA636_3841 == DESC_SYMBOL || LA636_3841 == ELSE_SYMBOL || ((LA636_3841 >= FOR_SYMBOL) && (LA636_3841 <= FROM_SYMBOL)) || ((LA636_3841 >= GROUP_SYMBOL) && (LA636_3841 <= HAVING_SYMBOL)) || ((LA636_3841 >= HOUR_MICROSECOND_SYMBOL) && (LA636_3841 <= HOUR_SECOND_SYMBOL)) || LA636_3841 == INNER_SYMBOL || LA636_3841 == INTO_SYMBOL || LA636_3841 == IN_SYMBOL || LA636_3841 == IS_SYMBOL || ((LA636_3841 >= JOIN_SYMBOL) && (LA636_3841 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_3841 >= LEFT_SYMBOL) && (LA636_3841 <= LIMIT_SYMBOL)) || LA636_3841 == LOCK_SYMBOL || ((LA636_3841 >= MINUTE_MICROSECOND_SYMBOL) && (LA636_3841 <= MINUTE_SECOND_SYMBOL)) || ((LA636_3841 >= MOD_SYMBOL) && (LA636_3841 <= NATURAL_SYMBOL)) || LA636_3841 == NOT_SYMBOL || LA636_3841 == ON_SYMBOL || ((LA636_3841 >= ORDER_SYMBOL) && (LA636_3841 <= OR_SYMBOL)) || LA636_3841 == PROCEDURE_SYMBOL || LA636_3841 == REGEXP_SYMBOL || LA636_3841 == RENAME_SYMBOL || LA636_3841 == RIGHT_SYMBOL || LA636_3841 == SECOND_MICROSECOND_SYMBOL || LA636_3841 == SEMICOLON_SYMBOL || LA636_3841 == SEPARATOR_SYMBOL || LA636_3841 == SET_SYMBOL || LA636_3841 == SINGLE_QUOTED_TEXT || LA636_3841 == STRAIGHT_JOIN_SYMBOL || LA636_3841 == THEN_SYMBOL || LA636_3841 == UNION_SYMBOL || LA636_3841 == USING_SYMBOL || ((LA636_3841 >= WHEN_SYMBOL) && (LA636_3841 <= WHERE_SYMBOL)) || LA636_3841 == WITH_SYMBOL || ((LA636_3841 >= XOR_SYMBOL) && (LA636_3841 <= YEAR_MONTH_SYMBOL)) || ((LA636_3841 >= AS_SYMBOL) && (LA636_3841 <= AT_TEXT_SUFFIX)) || ((LA636_3841 >= BACK_TICK_QUOTED_ID) && (LA636_3841 <= BITWISE_AND_OPERATOR)) || ((LA636_3841 >= BITWISE_OR_OPERATOR) && (LA636_3841 <= BITWISE_XOR_OPERATOR)) || ((LA636_3841 >= CLOSE_CURLY_SYMBOL) && (LA636_3841 <= CLOSE_PAR_SYMBOL)) || ((LA636_3841 >= COMMA_SYMBOL) && (LA636_3841 <= CONCAT_PIPES_SYMBOL)) || ((LA636_3841 >= DIV_OPERATOR) && (LA636_3841 <= DIV_SYMBOL)) || LA636_3841 == DOT_SYMBOL || LA636_3841 == DOUBLE_QUOTED_TEXT || LA636_3841 == EQUAL_OPERATOR || ((LA636_3841 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_3841 <= GREATER_THAN_OPERATOR)) || ((LA636_3841 >= HEX_NUMBER) && (LA636_3841 <= IDENTIFIER)) || LA636_3841 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA636_3841 >= LESS_OR_EQUAL_OPERATOR) && (LA636_3841 <= LESS_THAN_OPERATOR)) || LA636_3841 == LOGICAL_AND_OPERATOR || LA636_3841 == LOGICAL_OR_OPERATOR || ((LA636_3841 >= MINUS_OPERATOR) && (LA636_3841 <= MOD_OPERATOR)) || ((LA636_3841 >= MULT_OPERATOR) && (LA636_3841 <= NULL_SAFE_EQUAL_OPERATOR)) || LA636_3841 == PLUS_OPERATOR || ((LA636_3841 >= SHIFT_LEFT_OPERATOR) && (LA636_3841 <= SHIFT_RIGHT_OPERATOR))))
                                            {
                                                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        = 3841;


                                                goto ruleprimaryEx;

                                            }
                                        }
                                    }
                                    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        = 539;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_14 == EOF || ((LA636_14 >= ACCOUNT_SYMBOL) && (LA636_14 <= YEAR_SYMBOL)) || ((LA636_14 >= AND_SYMBOL) && (LA636_14 <= ASC_SYMBOL)) || LA636_14 == BETWEEN_SYMBOL || LA636_14 == COLLATE_SYMBOL || LA636_14 == CROSS_SYMBOL || ((LA636_14 >= DAY_HOUR_SYMBOL) && (LA636_14 <= DAY_SECOND_SYMBOL)) || LA636_14 == DESC_SYMBOL || LA636_14 == ELSE_SYMBOL || ((LA636_14 >= FOR_SYMBOL) && (LA636_14 <= FROM_SYMBOL)) || ((LA636_14 >= GROUP_SYMBOL) && (LA636_14 <= HAVING_SYMBOL)) || ((LA636_14 >= HOUR_MICROSECOND_SYMBOL) && (LA636_14 <= HOUR_SECOND_SYMBOL)) || LA636_14 == INNER_SYMBOL || LA636_14 == INTO_SYMBOL || LA636_14 == IN_SYMBOL || LA636_14 == IS_SYMBOL || ((LA636_14 >= JOIN_SYMBOL) && (LA636_14 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_14 >= LEFT_SYMBOL) && (LA636_14 <= LIMIT_SYMBOL)) || LA636_14 == LOCK_SYMBOL || ((LA636_14 >= MINUTE_MICROSECOND_SYMBOL) && (LA636_14 <= MINUTE_SECOND_SYMBOL)) || ((LA636_14 >= MOD_SYMBOL) && (LA636_14 <= NATURAL_SYMBOL)) || LA636_14 == NOT_SYMBOL || LA636_14 == ON_SYMBOL || ((LA636_14 >= ORDER_SYMBOL) && (LA636_14 <= OR_SYMBOL)) || LA636_14 == PROCEDURE_SYMBOL || LA636_14 == REGEXP_SYMBOL || LA636_14 == RENAME_SYMBOL || LA636_14 == RIGHT_SYMBOL || LA636_14 == SECOND_MICROSECOND_SYMBOL || LA636_14 == SEMICOLON_SYMBOL || LA636_14 == SEPARATOR_SYMBOL || LA636_14 == SET_SYMBOL || LA636_14 == SINGLE_QUOTED_TEXT || LA636_14 == STRAIGHT_JOIN_SYMBOL || LA636_14 == THEN_SYMBOL || LA636_14 == UNION_SYMBOL || LA636_14 == USING_SYMBOL || ((LA636_14 >= WHEN_SYMBOL) && (LA636_14 <= WHERE_SYMBOL)) || LA636_14 == WITH_SYMBOL || ((LA636_14 >= XOR_SYMBOL) && (LA636_14 <= YEAR_MONTH_SYMBOL)) || ((LA636_14 >= AS_SYMBOL) && (LA636_14 <= AT_TEXT_SUFFIX)) || ((LA636_14 >= BACK_TICK_QUOTED_ID) && (LA636_14 <= BITWISE_AND_OPERATOR)) || ((LA636_14 >= BITWISE_OR_OPERATOR) && (LA636_14 <= BITWISE_XOR_OPERATOR)) || ((LA636_14 >= CLOSE_CURLY_SYMBOL) && (LA636_14 <= CLOSE_PAR_SYMBOL)) || ((LA636_14 >= COMMA_SYMBOL) && (LA636_14 <= CONCAT_PIPES_SYMBOL)) || ((LA636_14 >= DIV_OPERATOR) && (LA636_14 <= DIV_SYMBOL)) || LA636_14 == DOUBLE_QUOTED_TEXT || LA636_14 == EQUAL_OPERATOR || ((LA636_14 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_14 <= GREATER_THAN_OPERATOR)) || ((LA636_14 >= HEX_NUMBER) && (LA636_14 <= IDENTIFIER)) || LA636_14 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA636_14 >= LESS_OR_EQUAL_OPERATOR) && (LA636_14 <= LESS_THAN_OPERATOR)) || LA636_14 == LOGICAL_AND_OPERATOR || LA636_14 == LOGICAL_OR_OPERATOR || ((LA636_14 >= MINUS_OPERATOR) && (LA636_14 <= MOD_OPERATOR)) || ((LA636_14 >= MULT_OPERATOR) && (LA636_14 <= NULL_SAFE_EQUAL_OPERATOR)) || LA636_14 == PLUS_OPERATOR || ((LA636_14 >= SHIFT_LEFT_OPERATOR) && (LA636_14 <= SHIFT_RIGHT_OPERATOR))))
                            {
                                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        = 14;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (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 || ((LA636_0 >= BIT_AND_SYMBOL) && (LA636_0 <= BIT_XOR_SYMBOL))))
                    {
                        alt636=3;
                    }
                    else if ( (LA636_0 == DAY_SYMBOL))
                    {
                        {
                            int LA636_17 = LA(2);
                            if ( (LA636_17 == OPEN_PAR_SYMBOL))
                            {
                                alt636=3;
                            }
                            else if ( (LA636_17 == EOF || ((LA636_17 >= ACCOUNT_SYMBOL) && (LA636_17 <= YEAR_SYMBOL)) || ((LA636_17 >= AND_SYMBOL) && (LA636_17 <= ASC_SYMBOL)) || LA636_17 == BETWEEN_SYMBOL || LA636_17 == COLLATE_SYMBOL || LA636_17 == CROSS_SYMBOL || ((LA636_17 >= DAY_HOUR_SYMBOL) && (LA636_17 <= DAY_SECOND_SYMBOL)) || LA636_17 == DESC_SYMBOL || LA636_17 == ELSE_SYMBOL || ((LA636_17 >= FOR_SYMBOL) && (LA636_17 <= FROM_SYMBOL)) || ((LA636_17 >= GROUP_SYMBOL) && (LA636_17 <= HAVING_SYMBOL)) || ((LA636_17 >= HOUR_MICROSECOND_SYMBOL) && (LA636_17 <= HOUR_SECOND_SYMBOL)) || LA636_17 == INNER_SYMBOL || LA636_17 == INTO_SYMBOL || LA636_17 == IN_SYMBOL || LA636_17 == IS_SYMBOL || ((LA636_17 >= JOIN_SYMBOL) && (LA636_17 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_17 >= LEFT_SYMBOL) && (LA636_17 <= LIMIT_SYMBOL)) || LA636_17 == LOCK_SYMBOL || ((LA636_17 >= MINUTE_MICROSECOND_SYMBOL) && (LA636_17 <= MINUTE_SECOND_SYMBOL)) || ((LA636_17 >= MOD_SYMBOL) && (LA636_17 <= NATURAL_SYMBOL)) || LA636_17 == NOT_SYMBOL || LA636_17 == ON_SYMBOL || ((LA636_17 >= ORDER_SYMBOL) && (LA636_17 <= OR_SYMBOL)) || LA636_17 == PROCEDURE_SYMBOL || LA636_17 == REGEXP_SYMBOL || LA636_17 == RENAME_SYMBOL || LA636_17 == RIGHT_SYMBOL || LA636_17 == SECOND_MICROSECOND_SYMBOL || LA636_17 == SEMICOLON_SYMBOL || LA636_17 == SEPARATOR_SYMBOL || LA636_17 == SET_SYMBOL || LA636_17 == SINGLE_QUOTED_TEXT || LA636_17 == STRAIGHT_JOIN_SYMBOL || LA636_17 == THEN_SYMBOL || LA636_17 == UNION_SYMBOL || LA636_17 == USING_SYMBOL || ((LA636_17 >= WHEN_SYMBOL) && (LA636_17 <= WHERE_SYMBOL)) || LA636_17 == WITH_SYMBOL || ((LA636_17 >= XOR_SYMBOL) && (LA636_17 <= YEAR_MONTH_SYMBOL)) || ((LA636_17 >= AS_SYMBOL) && (LA636_17 <= AT_TEXT_SUFFIX)) || ((LA636_17 >= BACK_TICK_QUOTED_ID) && (LA636_17 <= BITWISE_AND_OPERATOR)) || ((LA636_17 >= BITWISE_OR_OPERATOR) && (LA636_17 <= BITWISE_XOR_OPERATOR)) || ((LA636_17 >= CLOSE_CURLY_SYMBOL) && (LA636_17 <= CLOSE_PAR_SYMBOL)) || ((LA636_17 >= COMMA_SYMBOL) && (LA636_17 <= CONCAT_PIPES_SYMBOL)) || ((LA636_17 >= DIV_OPERATOR) && (LA636_17 <= DIV_SYMBOL)) || LA636_17 == DOT_SYMBOL || LA636_17 == DOUBLE_QUOTED_TEXT || LA636_17 == EQUAL_OPERATOR || ((LA636_17 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_17 <= GREATER_THAN_OPERATOR)) || ((LA636_17 >= HEX_NUMBER) && (LA636_17 <= IDENTIFIER)) || LA636_17 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA636_17 >= LESS_OR_EQUAL_OPERATOR) && (LA636_17 <= LESS_THAN_OPERATOR)) || LA636_17 == LOGICAL_AND_OPERATOR || LA636_17 == LOGICAL_OR_OPERATOR || ((LA636_17 >= MINUS_OPERATOR) && (LA636_17 <= MOD_OPERATOR)) || ((LA636_17 >= MULT_OPERATOR) && (LA636_17 <= NULL_SAFE_EQUAL_OPERATOR)) || LA636_17 == PLUS_OPERATOR || ((LA636_17 >= SHIFT_LEFT_OPERATOR) && (LA636_17 <= SHIFT_RIGHT_OPERATOR))))
                            {
                                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        = 17;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == HOUR_SYMBOL))
                    {
                        {
                            int LA636_18 = LA(2);
                            if ( (LA636_18 == OPEN_PAR_SYMBOL))
                            {
                                alt636=3;
                            }
                            else if ( (LA636_18 == EOF || ((LA636_18 >= ACCOUNT_SYMBOL) && (LA636_18 <= YEAR_SYMBOL)) || ((LA636_18 >= AND_SYMBOL) && (LA636_18 <= ASC_SYMBOL)) || LA636_18 == BETWEEN_SYMBOL || LA636_18 == COLLATE_SYMBOL || LA636_18 == CROSS_SYMBOL || ((LA636_18 >= DAY_HOUR_SYMBOL) && (LA636_18 <= DAY_SECOND_SYMBOL)) || LA636_18 == DESC_SYMBOL || LA636_18 == ELSE_SYMBOL || ((LA636_18 >= FOR_SYMBOL) && (LA636_18 <= FROM_SYMBOL)) || ((LA636_18 >= GROUP_SYMBOL) && (LA636_18 <= HAVING_SYMBOL)) || ((LA636_18 >= HOUR_MICROSECOND_SYMBOL) && (LA636_18 <= HOUR_SECOND_SYMBOL)) || LA636_18 == INNER_SYMBOL || LA636_18 == INTO_SYMBOL || LA636_18 == IN_SYMBOL || LA636_18 == IS_SYMBOL || ((LA636_18 >= JOIN_SYMBOL) && (LA636_18 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_18 >= LEFT_SYMBOL) && (LA636_18 <= LIMIT_SYMBOL)) || LA636_18 == LOCK_SYMBOL || ((LA636_18 >= MINUTE_MICROSECOND_SYMBOL) && (LA636_18 <= MINUTE_SECOND_SYMBOL)) || ((LA636_18 >= MOD_SYMBOL) && (LA636_18 <= NATURAL_SYMBOL)) || LA636_18 == NOT_SYMBOL || LA636_18 == ON_SYMBOL || ((LA636_18 >= ORDER_SYMBOL) && (LA636_18 <= OR_SYMBOL)) || LA636_18 == PROCEDURE_SYMBOL || LA636_18 == REGEXP_SYMBOL || LA636_18 == RENAME_SYMBOL || LA636_18 == RIGHT_SYMBOL || LA636_18 == SECOND_MICROSECOND_SYMBOL || LA636_18 == SEMICOLON_SYMBOL || LA636_18 == SEPARATOR_SYMBOL || LA636_18 == SET_SYMBOL || LA636_18 == SINGLE_QUOTED_TEXT || LA636_18 == STRAIGHT_JOIN_SYMBOL || LA636_18 == THEN_SYMBOL || LA636_18 == UNION_SYMBOL || LA636_18 == USING_SYMBOL || ((LA636_18 >= WHEN_SYMBOL) && (LA636_18 <= WHERE_SYMBOL)) || LA636_18 == WITH_SYMBOL || ((LA636_18 >= XOR_SYMBOL) && (LA636_18 <= YEAR_MONTH_SYMBOL)) || ((LA636_18 >= AS_SYMBOL) && (LA636_18 <= AT_TEXT_SUFFIX)) || ((LA636_18 >= BACK_TICK_QUOTED_ID) && (LA636_18 <= BITWISE_AND_OPERATOR)) || ((LA636_18 >= BITWISE_OR_OPERATOR) && (LA636_18 <= BITWISE_XOR_OPERATOR)) || ((LA636_18 >= CLOSE_CURLY_SYMBOL) && (LA636_18 <= CLOSE_PAR_SYMBOL)) || ((LA636_18 >= COMMA_SYMBOL) && (LA636_18 <= CONCAT_PIPES_SYMBOL)) || ((LA636_18 >= DIV_OPERATOR) && (LA636_18 <= DIV_SYMBOL)) || LA636_18 == DOT_SYMBOL || LA636_18 == DOUBLE_QUOTED_TEXT || LA636_18 == EQUAL_OPERATOR || ((LA636_18 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_18 <= GREATER_THAN_OPERATOR)) || ((LA636_18 >= HEX_NUMBER) && (LA636_18 <= IDENTIFIER)) || LA636_18 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA636_18 >= LESS_OR_EQUAL_OPERATOR) && (LA636_18 <= LESS_THAN_OPERATOR)) || LA636_18 == LOGICAL_AND_OPERATOR || LA636_18 == LOGICAL_OR_OPERATOR || ((LA636_18 >= MINUS_OPERATOR) && (LA636_18 <= MOD_OPERATOR)) || ((LA636_18 >= MULT_OPERATOR) && (LA636_18 <= NULL_SAFE_EQUAL_OPERATOR)) || LA636_18 == PLUS_OPERATOR || ((LA636_18 >= SHIFT_LEFT_OPERATOR) && (LA636_18 <= SHIFT_RIGHT_OPERATOR))))
                            {
                                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        = 18;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == MINUTE_SYMBOL))
                    {
                        {
                            int LA636_21 = LA(2);
                            if ( (LA636_21 == OPEN_PAR_SYMBOL))
                            {
                                alt636=3;
                            }
                            else if ( (LA636_21 == EOF || ((LA636_21 >= ACCOUNT_SYMBOL) && (LA636_21 <= YEAR_SYMBOL)) || ((LA636_21 >= AND_SYMBOL) && (LA636_21 <= ASC_SYMBOL)) || LA636_21 == BETWEEN_SYMBOL || LA636_21 == COLLATE_SYMBOL || LA636_21 == CROSS_SYMBOL || ((LA636_21 >= DAY_HOUR_SYMBOL) && (LA636_21 <= DAY_SECOND_SYMBOL)) || LA636_21 == DESC_SYMBOL || LA636_21 == ELSE_SYMBOL || ((LA636_21 >= FOR_SYMBOL) && (LA636_21 <= FROM_SYMBOL)) || ((LA636_21 >= GROUP_SYMBOL) && (LA636_21 <= HAVING_SYMBOL)) || ((LA636_21 >= HOUR_MICROSECOND_SYMBOL) && (LA636_21 <= HOUR_SECOND_SYMBOL)) || LA636_21 == INNER_SYMBOL || LA636_21 == INTO_SYMBOL || LA636_21 == IN_SYMBOL || LA636_21 == IS_SYMBOL || ((LA636_21 >= JOIN_SYMBOL) && (LA636_21 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_21 >= LEFT_SYMBOL) && (LA636_21 <= LIMIT_SYMBOL)) || LA636_21 == LOCK_SYMBOL || ((LA636_21 >= MINUTE_MICROSECOND_SYMBOL) && (LA636_21 <= MINUTE_SECOND_SYMBOL)) || ((LA636_21 >= MOD_SYMBOL) && (LA636_21 <= NATURAL_SYMBOL)) || LA636_21 == NOT_SYMBOL || LA636_21 == ON_SYMBOL || ((LA636_21 >= ORDER_SYMBOL) && (LA636_21 <= OR_SYMBOL)) || LA636_21 == PROCEDURE_SYMBOL || LA636_21 == REGEXP_SYMBOL || LA636_21 == RENAME_SYMBOL || LA636_21 == RIGHT_SYMBOL || LA636_21 == SECOND_MICROSECOND_SYMBOL || LA636_21 == SEMICOLON_SYMBOL || LA636_21 == SEPARATOR_SYMBOL || LA636_21 == SET_SYMBOL || LA636_21 == SINGLE_QUOTED_TEXT || LA636_21 == STRAIGHT_JOIN_SYMBOL || LA636_21 == THEN_SYMBOL || LA636_21 == UNION_SYMBOL || LA636_21 == USING_SYMBOL || ((LA636_21 >= WHEN_SYMBOL) && (LA636_21 <= WHERE_SYMBOL)) || LA636_21 == WITH_SYMBOL || ((LA636_21 >= XOR_SYMBOL) && (LA636_21 <= YEAR_MONTH_SYMBOL)) || ((LA636_21 >= AS_SYMBOL) && (LA636_21 <= AT_TEXT_SUFFIX)) || ((LA636_21 >= BACK_TICK_QUOTED_ID) && (LA636_21 <= BITWISE_AND_OPERATOR)) || ((LA636_21 >= BITWISE_OR_OPERATOR) && (LA636_21 <= BITWISE_XOR_OPERATOR)) || ((LA636_21 >= CLOSE_CURLY_SYMBOL) && (LA636_21 <= CLOSE_PAR_SYMBOL)) || ((LA636_21 >= COMMA_SYMBOL) && (LA636_21 <= CONCAT_PIPES_SYMBOL)) || ((LA636_21 >= DIV_OPERATOR) && (LA636_21 <= DIV_SYMBOL)) || LA636_21 == DOT_SYMBOL || LA636_21 == DOUBLE_QUOTED_TEXT || LA636_21 == EQUAL_OPERATOR || ((LA636_21 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_21 <= GREATER_THAN_OPERATOR)) || ((LA636_21 >= HEX_NUMBER) && (LA636_21 <= IDENTIFIER)) || LA636_21 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA636_21 >= LESS_OR_EQUAL_OPERATOR) && (LA636_21 <= LESS_THAN_OPERATOR)) || LA636_21 == LOGICAL_AND_OPERATOR || LA636_21 == LOGICAL_OR_OPERATOR || ((LA636_21 >= MINUS_OPERATOR) && (LA636_21 <= MOD_OPERATOR)) || ((LA636_21 >= MULT_OPERATOR) && (LA636_21 <= NULL_SAFE_EQUAL_OPERATOR)) || LA636_21 == PLUS_OPERATOR || ((LA636_21 >= SHIFT_LEFT_OPERATOR) && (LA636_21 <= SHIFT_RIGHT_OPERATOR))))
                            {
                                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        = 21;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == MONTH_SYMBOL))
                    {
                        {
                            int LA636_22 = LA(2);
                            if ( (LA636_22 == OPEN_PAR_SYMBOL))
                            {
                                alt636=3;
                            }
                            else if ( (LA636_22 == EOF || ((LA636_22 >= ACCOUNT_SYMBOL) && (LA636_22 <= YEAR_SYMBOL)) || ((LA636_22 >= AND_SYMBOL) && (LA636_22 <= ASC_SYMBOL)) || LA636_22 == BETWEEN_SYMBOL || LA636_22 == COLLATE_SYMBOL || LA636_22 == CROSS_SYMBOL || ((LA636_22 >= DAY_HOUR_SYMBOL) && (LA636_22 <= DAY_SECOND_SYMBOL)) || LA636_22 == DESC_SYMBOL || LA636_22 == ELSE_SYMBOL || ((LA636_22 >= FOR_SYMBOL) && (LA636_22 <= FROM_SYMBOL)) || ((LA636_22 >= GROUP_SYMBOL) && (LA636_22 <= HAVING_SYMBOL)) || ((LA636_22 >= HOUR_MICROSECOND_SYMBOL) && (LA636_22 <= HOUR_SECOND_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA636_22 == LOCK_SYMBOL || ((LA636_22 >= MINUTE_MICROSECOND_SYMBOL) && (LA636_22 <= MINUTE_SECOND_SYMBOL)) || ((LA636_22 >= MOD_SYMBOL) && (LA636_22 <= NATURAL_SYMBOL)) || LA636_22 == NOT_SYMBOL || LA636_22 == ON_SYMBOL || ((LA636_22 >= ORDER_SYMBOL) && (LA636_22 <= OR_SYMBOL)) || 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 == 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)) || ((LA636_22 >= AS_SYMBOL) && (LA636_22 <= AT_TEXT_SUFFIX)) || ((LA636_22 >= BACK_TICK_QUOTED_ID) && (LA636_22 <= BITWISE_AND_OPERATOR)) || ((LA636_22 >= BITWISE_OR_OPERATOR) && (LA636_22 <= BITWISE_XOR_OPERATOR)) || ((LA636_22 >= CLOSE_CURLY_SYMBOL) && (LA636_22 <= CLOSE_PAR_SYMBOL)) || ((LA636_22 >= COMMA_SYMBOL) && (LA636_22 <= CONCAT_PIPES_SYMBOL)) || ((LA636_22 >= DIV_OPERATOR) && (LA636_22 <= DIV_SYMBOL)) || LA636_22 == DOT_SYMBOL || LA636_22 == DOUBLE_QUOTED_TEXT || LA636_22 == EQUAL_OPERATOR || ((LA636_22 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_22 <= GREATER_THAN_OPERATOR)) || ((LA636_22 >= HEX_NUMBER) && (LA636_22 <= IDENTIFIER)) || LA636_22 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA636_22 >= LESS_OR_EQUAL_OPERATOR) && (LA636_22 <= LESS_THAN_OPERATOR)) || LA636_22 == LOGICAL_AND_OPERATOR || LA636_22 == LOGICAL_OR_OPERATOR || ((LA636_22 >= MINUS_OPERATOR) && (LA636_22 <= MOD_OPERATOR)) || ((LA636_22 >= MULT_OPERATOR) && (LA636_22 <= NULL_SAFE_EQUAL_OPERATOR)) || LA636_22 == PLUS_OPERATOR || ((LA636_22 >= SHIFT_LEFT_OPERATOR) && (LA636_22 <= SHIFT_RIGHT_OPERATOR))))
                            {
                                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        = 22;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == SECOND_SYMBOL))
                    {
                        {
                            int LA636_24 = LA(2);
                            if ( (LA636_24 == OPEN_PAR_SYMBOL))
                            {
                                alt636=3;
                            }
                            else if ( (LA636_24 == EOF || ((LA636_24 >= ACCOUNT_SYMBOL) && (LA636_24 <= YEAR_SYMBOL)) || ((LA636_24 >= AND_SYMBOL) && (LA636_24 <= ASC_SYMBOL)) || LA636_24 == BETWEEN_SYMBOL || LA636_24 == COLLATE_SYMBOL || LA636_24 == CROSS_SYMBOL || ((LA636_24 >= DAY_HOUR_SYMBOL) && (LA636_24 <= DAY_SECOND_SYMBOL)) || LA636_24 == DESC_SYMBOL || LA636_24 == ELSE_SYMBOL || ((LA636_24 >= FOR_SYMBOL) && (LA636_24 <= FROM_SYMBOL)) || ((LA636_24 >= GROUP_SYMBOL) && (LA636_24 <= HAVING_SYMBOL)) || ((LA636_24 >= HOUR_MICROSECOND_SYMBOL) && (LA636_24 <= HOUR_SECOND_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA636_24 == LOCK_SYMBOL || ((LA636_24 >= MINUTE_MICROSECOND_SYMBOL) && (LA636_24 <= MINUTE_SECOND_SYMBOL)) || ((LA636_24 >= MOD_SYMBOL) && (LA636_24 <= NATURAL_SYMBOL)) || LA636_24 == NOT_SYMBOL || LA636_24 == ON_SYMBOL || ((LA636_24 >= ORDER_SYMBOL) && (LA636_24 <= OR_SYMBOL)) || 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 == 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)) || ((LA636_24 >= AS_SYMBOL) && (LA636_24 <= AT_TEXT_SUFFIX)) || ((LA636_24 >= BACK_TICK_QUOTED_ID) && (LA636_24 <= BITWISE_AND_OPERATOR)) || ((LA636_24 >= BITWISE_OR_OPERATOR) && (LA636_24 <= BITWISE_XOR_OPERATOR)) || ((LA636_24 >= CLOSE_CURLY_SYMBOL) && (LA636_24 <= CLOSE_PAR_SYMBOL)) || ((LA636_24 >= COMMA_SYMBOL) && (LA636_24 <= CONCAT_PIPES_SYMBOL)) || ((LA636_24 >= DIV_OPERATOR) && (LA636_24 <= DIV_SYMBOL)) || LA636_24 == DOT_SYMBOL || LA636_24 == DOUBLE_QUOTED_TEXT || LA636_24 == EQUAL_OPERATOR || ((LA636_24 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_24 <= GREATER_THAN_OPERATOR)) || ((LA636_24 >= HEX_NUMBER) && (LA636_24 <= IDENTIFIER)) || LA636_24 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA636_24 >= LESS_OR_EQUAL_OPERATOR) && (LA636_24 <= LESS_THAN_OPERATOR)) || LA636_24 == LOGICAL_AND_OPERATOR || LA636_24 == LOGICAL_OR_OPERATOR || ((LA636_24 >= MINUS_OPERATOR) && (LA636_24 <= MOD_OPERATOR)) || ((LA636_24 >= MULT_OPERATOR) && (LA636_24 <= NULL_SAFE_EQUAL_OPERATOR)) || LA636_24 == PLUS_OPERATOR || ((LA636_24 >= SHIFT_LEFT_OPERATOR) && (LA636_24 <= SHIFT_RIGHT_OPERATOR))))
                            {
                                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        = 24;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == USER_SYMBOL))
                    {
                        {
                            int LA636_26 = LA(2);
                            if ( (LA636_26 == OPEN_PAR_SYMBOL))
                            {
                                alt636=3;
                            }
                            else if ( (LA636_26 == EOF || ((LA636_26 >= ACCOUNT_SYMBOL) && (LA636_26 <= YEAR_SYMBOL)) || ((LA636_26 >= AND_SYMBOL) && (LA636_26 <= ASC_SYMBOL)) || LA636_26 == BETWEEN_SYMBOL || LA636_26 == COLLATE_SYMBOL || LA636_26 == CROSS_SYMBOL || ((LA636_26 >= DAY_HOUR_SYMBOL) && (LA636_26 <= DAY_SECOND_SYMBOL)) || LA636_26 == DESC_SYMBOL || LA636_26 == ELSE_SYMBOL || ((LA636_26 >= FOR_SYMBOL) && (LA636_26 <= FROM_SYMBOL)) || ((LA636_26 >= GROUP_SYMBOL) && (LA636_26 <= HAVING_SYMBOL)) || ((LA636_26 >= HOUR_MICROSECOND_SYMBOL) && (LA636_26 <= HOUR_SECOND_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA636_26 == LOCK_SYMBOL || ((LA636_26 >= MINUTE_MICROSECOND_SYMBOL) && (LA636_26 <= MINUTE_SECOND_SYMBOL)) || ((LA636_26 >= MOD_SYMBOL) && (LA636_26 <= NATURAL_SYMBOL)) || LA636_26 == NOT_SYMBOL || LA636_26 == ON_SYMBOL || ((LA636_26 >= ORDER_SYMBOL) && (LA636_26 <= OR_SYMBOL)) || 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 == 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)) || ((LA636_26 >= AS_SYMBOL) && (LA636_26 <= AT_TEXT_SUFFIX)) || ((LA636_26 >= BACK_TICK_QUOTED_ID) && (LA636_26 <= BITWISE_AND_OPERATOR)) || ((LA636_26 >= BITWISE_OR_OPERATOR) && (LA636_26 <= BITWISE_XOR_OPERATOR)) || ((LA636_26 >= CLOSE_CURLY_SYMBOL) && (LA636_26 <= CLOSE_PAR_SYMBOL)) || ((LA636_26 >= COMMA_SYMBOL) && (LA636_26 <= CONCAT_PIPES_SYMBOL)) || ((LA636_26 >= DIV_OPERATOR) && (LA636_26 <= DIV_SYMBOL)) || LA636_26 == DOT_SYMBOL || LA636_26 == DOUBLE_QUOTED_TEXT || LA636_26 == EQUAL_OPERATOR || ((LA636_26 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_26 <= GREATER_THAN_OPERATOR)) || ((LA636_26 >= HEX_NUMBER) && (LA636_26 <= IDENTIFIER)) || LA636_26 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA636_26 >= LESS_OR_EQUAL_OPERATOR) && (LA636_26 <= LESS_THAN_OPERATOR)) || LA636_26 == LOGICAL_AND_OPERATOR || LA636_26 == LOGICAL_OR_OPERATOR || ((LA636_26 >= MINUS_OPERATOR) && (LA636_26 <= MOD_OPERATOR)) || ((LA636_26 >= MULT_OPERATOR) && (LA636_26 <= NULL_SAFE_EQUAL_OPERATOR)) || LA636_26 == PLUS_OPERATOR || ((LA636_26 >= SHIFT_LEFT_OPERATOR) && (LA636_26 <= SHIFT_RIGHT_OPERATOR))))
                            {
                                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        = 26;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == YEAR_SYMBOL))
                    {
                        {
                            int LA636_28 = LA(2);
                            if ( (LA636_28 == OPEN_PAR_SYMBOL))
                            {
                                alt636=3;
                            }
                            else if ( (LA636_28 == EOF || ((LA636_28 >= ACCOUNT_SYMBOL) && (LA636_28 <= YEAR_SYMBOL)) || ((LA636_28 >= AND_SYMBOL) && (LA636_28 <= ASC_SYMBOL)) || LA636_28 == BETWEEN_SYMBOL || LA636_28 == COLLATE_SYMBOL || LA636_28 == CROSS_SYMBOL || ((LA636_28 >= DAY_HOUR_SYMBOL) && (LA636_28 <= DAY_SECOND_SYMBOL)) || LA636_28 == DESC_SYMBOL || LA636_28 == ELSE_SYMBOL || ((LA636_28 >= FOR_SYMBOL) && (LA636_28 <= FROM_SYMBOL)) || ((LA636_28 >= GROUP_SYMBOL) && (LA636_28 <= HAVING_SYMBOL)) || ((LA636_28 >= HOUR_MICROSECOND_SYMBOL) && (LA636_28 <= HOUR_SECOND_SYMBOL)) || LA636_28 == INNER_SYMBOL || LA636_28 == INTO_SYMBOL || LA636_28 == IN_SYMBOL || LA636_28 == IS_SYMBOL || ((LA636_28 >= JOIN_SYMBOL) && (LA636_28 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_28 >= LEFT_SYMBOL) && (LA636_28 <= LIMIT_SYMBOL)) || LA636_28 == LOCK_SYMBOL || ((LA636_28 >= MINUTE_MICROSECOND_SYMBOL) && (LA636_28 <= MINUTE_SECOND_SYMBOL)) || ((LA636_28 >= MOD_SYMBOL) && (LA636_28 <= NATURAL_SYMBOL)) || LA636_28 == NOT_SYMBOL || LA636_28 == ON_SYMBOL || ((LA636_28 >= ORDER_SYMBOL) && (LA636_28 <= OR_SYMBOL)) || LA636_28 == PROCEDURE_SYMBOL || LA636_28 == REGEXP_SYMBOL || LA636_28 == RENAME_SYMBOL || LA636_28 == RIGHT_SYMBOL || LA636_28 == SECOND_MICROSECOND_SYMBOL || LA636_28 == SEMICOLON_SYMBOL || LA636_28 == SEPARATOR_SYMBOL || LA636_28 == SET_SYMBOL || LA636_28 == SINGLE_QUOTED_TEXT || LA636_28 == STRAIGHT_JOIN_SYMBOL || LA636_28 == THEN_SYMBOL || LA636_28 == UNION_SYMBOL || LA636_28 == USING_SYMBOL || ((LA636_28 >= WHEN_SYMBOL) && (LA636_28 <= WHERE_SYMBOL)) || LA636_28 == WITH_SYMBOL || ((LA636_28 >= XOR_SYMBOL) && (LA636_28 <= YEAR_MONTH_SYMBOL)) || ((LA636_28 >= AS_SYMBOL) && (LA636_28 <= AT_TEXT_SUFFIX)) || ((LA636_28 >= BACK_TICK_QUOTED_ID) && (LA636_28 <= BITWISE_AND_OPERATOR)) || ((LA636_28 >= BITWISE_OR_OPERATOR) && (LA636_28 <= BITWISE_XOR_OPERATOR)) || ((LA636_28 >= CLOSE_CURLY_SYMBOL) && (LA636_28 <= CLOSE_PAR_SYMBOL)) || ((LA636_28 >= COMMA_SYMBOL) && (LA636_28 <= CONCAT_PIPES_SYMBOL)) || ((LA636_28 >= DIV_OPERATOR) && (LA636_28 <= DIV_SYMBOL)) || LA636_28 == DOT_SYMBOL || LA636_28 == DOUBLE_QUOTED_TEXT || LA636_28 == EQUAL_OPERATOR || ((LA636_28 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_28 <= GREATER_THAN_OPERATOR)) || ((LA636_28 >= HEX_NUMBER) && (LA636_28 <= IDENTIFIER)) || LA636_28 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA636_28 >= LESS_OR_EQUAL_OPERATOR) && (LA636_28 <= LESS_THAN_OPERATOR)) || LA636_28 == LOGICAL_AND_OPERATOR || LA636_28 == LOGICAL_OR_OPERATOR || ((LA636_28 >= MINUS_OPERATOR) && (LA636_28 <= MOD_OPERATOR)) || ((LA636_28 >= MULT_OPERATOR) && (LA636_28 <= NULL_SAFE_EQUAL_OPERATOR)) || LA636_28 == PLUS_OPERATOR || ((LA636_28 >= SHIFT_LEFT_OPERATOR) && (LA636_28 <= SHIFT_RIGHT_OPERATOR))))
                            {
                                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        = 28;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == ADDDATE_SYMBOL || LA636_0 == SUBDATE_SYMBOL))
                    {
                        {
                            int LA636_29 = LA(2);
                            if ( (LA636_29 == OPEN_PAR_SYMBOL))
                            {
                                alt636=3;
                            }
                            else if ( (LA636_29 == EOF || ((LA636_29 >= ACCOUNT_SYMBOL) && (LA636_29 <= YEAR_SYMBOL)) || ((LA636_29 >= AND_SYMBOL) && (LA636_29 <= ASC_SYMBOL)) || LA636_29 == BETWEEN_SYMBOL || LA636_29 == COLLATE_SYMBOL || LA636_29 == CROSS_SYMBOL || ((LA636_29 >= DAY_HOUR_SYMBOL) && (LA636_29 <= DAY_SECOND_SYMBOL)) || LA636_29 == DESC_SYMBOL || LA636_29 == ELSE_SYMBOL || ((LA636_29 >= FOR_SYMBOL) && (LA636_29 <= FROM_SYMBOL)) || ((LA636_29 >= GROUP_SYMBOL) && (LA636_29 <= HAVING_SYMBOL)) || ((LA636_29 >= HOUR_MICROSECOND_SYMBOL) && (LA636_29 <= HOUR_SECOND_SYMBOL)) || LA636_29 == INNER_SYMBOL || LA636_29 == INTO_SYMBOL || LA636_29 == IN_SYMBOL || LA636_29 == IS_SYMBOL || ((LA636_29 >= JOIN_SYMBOL) && (LA636_29 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_29 >= LEFT_SYMBOL) && (LA636_29 <= LIMIT_SYMBOL)) || LA636_29 == LOCK_SYMBOL || ((LA636_29 >= MINUTE_MICROSECOND_SYMBOL) && (LA636_29 <= MINUTE_SECOND_SYMBOL)) || ((LA636_29 >= MOD_SYMBOL) && (LA636_29 <= NATURAL_SYMBOL)) || LA636_29 == NOT_SYMBOL || LA636_29 == ON_SYMBOL || ((LA636_29 >= ORDER_SYMBOL) && (LA636_29 <= OR_SYMBOL)) || LA636_29 == PROCEDURE_SYMBOL || LA636_29 == REGEXP_SYMBOL || LA636_29 == RENAME_SYMBOL || LA636_29 == RIGHT_SYMBOL || LA636_29 == SECOND_MICROSECOND_SYMBOL || LA636_29 == SEMICOLON_SYMBOL || LA636_29 == SEPARATOR_SYMBOL || LA636_29 == SET_SYMBOL || LA636_29 == SINGLE_QUOTED_TEXT || LA636_29 == STRAIGHT_JOIN_SYMBOL || LA636_29 == THEN_SYMBOL || LA636_29 == UNION_SYMBOL || LA636_29 == USING_SYMBOL || ((LA636_29 >= WHEN_SYMBOL) && (LA636_29 <= WHERE_SYMBOL)) || LA636_29 == WITH_SYMBOL || ((LA636_29 >= XOR_SYMBOL) && (LA636_29 <= YEAR_MONTH_SYMBOL)) || ((LA636_29 >= AS_SYMBOL) && (LA636_29 <= AT_TEXT_SUFFIX)) || ((LA636_29 >= BACK_TICK_QUOTED_ID) && (LA636_29 <= BITWISE_AND_OPERATOR)) || ((LA636_29 >= BITWISE_OR_OPERATOR) && (LA636_29 <= BITWISE_XOR_OPERATOR)) || ((LA636_29 >= CLOSE_CURLY_SYMBOL) && (LA636_29 <= CLOSE_PAR_SYMBOL)) || ((LA636_29 >= COMMA_SYMBOL) && (LA636_29 <= CONCAT_PIPES_SYMBOL)) || ((LA636_29 >= DIV_OPERATOR) && (LA636_29 <= DIV_SYMBOL)) || LA636_29 == DOT_SYMBOL || LA636_29 == DOUBLE_QUOTED_TEXT || LA636_29 == EQUAL_OPERATOR || ((LA636_29 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_29 <= GREATER_THAN_OPERATOR)) || ((LA636_29 >= HEX_NUMBER) && (LA636_29 <= IDENTIFIER)) || LA636_29 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA636_29 >= LESS_OR_EQUAL_OPERATOR) && (LA636_29 <= LESS_THAN_OPERATOR)) || LA636_29 == LOGICAL_AND_OPERATOR || LA636_29 == LOGICAL_OR_OPERATOR || ((LA636_29 >= MINUS_OPERATOR) && (LA636_29 <= MOD_OPERATOR)) || ((LA636_29 >= MULT_OPERATOR) && (LA636_29 <= NULL_SAFE_EQUAL_OPERATOR)) || LA636_29 == PLUS_OPERATOR || ((LA636_29 >= SHIFT_LEFT_OPERATOR) && (LA636_29 <= SHIFT_RIGHT_OPERATOR))))
                            {
                                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        = 29;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == GET_FORMAT_SYMBOL))
                    {
                        {
                            int LA636_34 = LA(2);
                            if ( (LA636_34 == OPEN_PAR_SYMBOL))
                            {
                                alt636=3;
                            }
                            else if ( (LA636_34 == EOF || ((LA636_34 >= ACCOUNT_SYMBOL) && (LA636_34 <= YEAR_SYMBOL)) || ((LA636_34 >= AND_SYMBOL) && (LA636_34 <= ASC_SYMBOL)) || LA636_34 == BETWEEN_SYMBOL || LA636_34 == COLLATE_SYMBOL || LA636_34 == CROSS_SYMBOL || ((LA636_34 >= DAY_HOUR_SYMBOL) && (LA636_34 <= DAY_SECOND_SYMBOL)) || LA636_34 == DESC_SYMBOL || LA636_34 == ELSE_SYMBOL || ((LA636_34 >= FOR_SYMBOL) && (LA636_34 <= FROM_SYMBOL)) || ((LA636_34 >= GROUP_SYMBOL) && (LA636_34 <= HAVING_SYMBOL)) || ((LA636_34 >= HOUR_MICROSECOND_SYMBOL) && (LA636_34 <= HOUR_SECOND_SYMBOL)) || LA636_34 == INNER_SYMBOL || LA636_34 == INTO_SYMBOL || LA636_34 == IN_SYMBOL || LA636_34 == IS_SYMBOL || ((LA636_34 >= JOIN_SYMBOL) && (LA636_34 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_34 >= LEFT_SYMBOL) && (LA636_34 <= LIMIT_SYMBOL)) || LA636_34 == LOCK_SYMBOL || ((LA636_34 >= MINUTE_MICROSECOND_SYMBOL) && (LA636_34 <= MINUTE_SECOND_SYMBOL)) || ((LA636_34 >= MOD_SYMBOL) && (LA636_34 <= NATURAL_SYMBOL)) || LA636_34 == NOT_SYMBOL || LA636_34 == ON_SYMBOL || ((LA636_34 >= ORDER_SYMBOL) && (LA636_34 <= OR_SYMBOL)) || LA636_34 == PROCEDURE_SYMBOL || LA636_34 == REGEXP_SYMBOL || LA636_34 == RENAME_SYMBOL || LA636_34 == RIGHT_SYMBOL || LA636_34 == SECOND_MICROSECOND_SYMBOL || LA636_34 == SEMICOLON_SYMBOL || LA636_34 == SEPARATOR_SYMBOL || LA636_34 == SET_SYMBOL || LA636_34 == SINGLE_QUOTED_TEXT || LA636_34 == STRAIGHT_JOIN_SYMBOL || LA636_34 == THEN_SYMBOL || LA636_34 == UNION_SYMBOL || LA636_34 == USING_SYMBOL || ((LA636_34 >= WHEN_SYMBOL) && (LA636_34 <= WHERE_SYMBOL)) || LA636_34 == WITH_SYMBOL || ((LA636_34 >= XOR_SYMBOL) && (LA636_34 <= YEAR_MONTH_SYMBOL)) || ((LA636_34 >= AS_SYMBOL) && (LA636_34 <= AT_TEXT_SUFFIX)) || ((LA636_34 >= BACK_TICK_QUOTED_ID) && (LA636_34 <= BITWISE_AND_OPERATOR)) || ((LA636_34 >= BITWISE_OR_OPERATOR) && (LA636_34 <= BITWISE_XOR_OPERATOR)) || ((LA636_34 >= CLOSE_CURLY_SYMBOL) && (LA636_34 <= CLOSE_PAR_SYMBOL)) || ((LA636_34 >= COMMA_SYMBOL) && (LA636_34 <= CONCAT_PIPES_SYMBOL)) || ((LA636_34 >= DIV_OPERATOR) && (LA636_34 <= DIV_SYMBOL)) || LA636_34 == DOT_SYMBOL || LA636_34 == DOUBLE_QUOTED_TEXT || LA636_34 == EQUAL_OPERATOR || ((LA636_34 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_34 <= GREATER_THAN_OPERATOR)) || ((LA636_34 >= HEX_NUMBER) && (LA636_34 <= IDENTIFIER)) || LA636_34 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA636_34 >= LESS_OR_EQUAL_OPERATOR) && (LA636_34 <= LESS_THAN_OPERATOR)) || LA636_34 == LOGICAL_AND_OPERATOR || LA636_34 == LOGICAL_OR_OPERATOR || ((LA636_34 >= MINUS_OPERATOR) && (LA636_34 <= MOD_OPERATOR)) || ((LA636_34 >= MULT_OPERATOR) && (LA636_34 <= NULL_SAFE_EQUAL_OPERATOR)) || LA636_34 == PLUS_OPERATOR || ((LA636_34 >= SHIFT_LEFT_OPERATOR) && (LA636_34 <= SHIFT_RIGHT_OPERATOR))))
                            {
                                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        = 34;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (((LA636_0 >= TIMESTAMP_ADD_SYMBOL) && (LA636_0 <= TIMESTAMP_DIFF_SYMBOL))))
                    {
                        {
                            int LA636_39 = LA(2);
                            if ( (LA636_39 == OPEN_PAR_SYMBOL))
                            {
                                alt636=3;
                            }
                            else if ( (LA636_39 == EOF || ((LA636_39 >= ACCOUNT_SYMBOL) && (LA636_39 <= YEAR_SYMBOL)) || ((LA636_39 >= AND_SYMBOL) && (LA636_39 <= ASC_SYMBOL)) || LA636_39 == BETWEEN_SYMBOL || LA636_39 == COLLATE_SYMBOL || LA636_39 == CROSS_SYMBOL || ((LA636_39 >= DAY_HOUR_SYMBOL) && (LA636_39 <= DAY_SECOND_SYMBOL)) || LA636_39 == DESC_SYMBOL || LA636_39 == ELSE_SYMBOL || ((LA636_39 >= FOR_SYMBOL) && (LA636_39 <= FROM_SYMBOL)) || ((LA636_39 >= GROUP_SYMBOL) && (LA636_39 <= HAVING_SYMBOL)) || ((LA636_39 >= HOUR_MICROSECOND_SYMBOL) && (LA636_39 <= HOUR_SECOND_SYMBOL)) || LA636_39 == INNER_SYMBOL || LA636_39 == INTO_SYMBOL || LA636_39 == IN_SYMBOL || LA636_39 == IS_SYMBOL || ((LA636_39 >= JOIN_SYMBOL) && (LA636_39 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_39 >= LEFT_SYMBOL) && (LA636_39 <= LIMIT_SYMBOL)) || LA636_39 == LOCK_SYMBOL || ((LA636_39 >= MINUTE_MICROSECOND_SYMBOL) && (LA636_39 <= MINUTE_SECOND_SYMBOL)) || ((LA636_39 >= MOD_SYMBOL) && (LA636_39 <= NATURAL_SYMBOL)) || LA636_39 == NOT_SYMBOL || LA636_39 == ON_SYMBOL || ((LA636_39 >= ORDER_SYMBOL) && (LA636_39 <= OR_SYMBOL)) || LA636_39 == PROCEDURE_SYMBOL || LA636_39 == REGEXP_SYMBOL || LA636_39 == RENAME_SYMBOL || LA636_39 == RIGHT_SYMBOL || LA636_39 == SECOND_MICROSECOND_SYMBOL || LA636_39 == SEMICOLON_SYMBOL || LA636_39 == SEPARATOR_SYMBOL || LA636_39 == SET_SYMBOL || LA636_39 == SINGLE_QUOTED_TEXT || LA636_39 == STRAIGHT_JOIN_SYMBOL || LA636_39 == THEN_SYMBOL || LA636_39 == UNION_SYMBOL || LA636_39 == USING_SYMBOL || ((LA636_39 >= WHEN_SYMBOL) && (LA636_39 <= WHERE_SYMBOL)) || LA636_39 == WITH_SYMBOL || ((LA636_39 >= XOR_SYMBOL) && (LA636_39 <= YEAR_MONTH_SYMBOL)) || ((LA636_39 >= AS_SYMBOL) && (LA636_39 <= AT_TEXT_SUFFIX)) || ((LA636_39 >= BACK_TICK_QUOTED_ID) && (LA636_39 <= BITWISE_AND_OPERATOR)) || ((LA636_39 >= BITWISE_OR_OPERATOR) && (LA636_39 <= BITWISE_XOR_OPERATOR)) || ((LA636_39 >= CLOSE_CURLY_SYMBOL) && (LA636_39 <= CLOSE_PAR_SYMBOL)) || ((LA636_39 >= COMMA_SYMBOL) && (LA636_39 <= CONCAT_PIPES_SYMBOL)) || ((LA636_39 >= DIV_OPERATOR) && (LA636_39 <= DIV_SYMBOL)) || LA636_39 == DOT_SYMBOL || LA636_39 == DOUBLE_QUOTED_TEXT || LA636_39 == EQUAL_OPERATOR || ((LA636_39 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_39 <= GREATER_THAN_OPERATOR)) || ((LA636_39 >= HEX_NUMBER) && (LA636_39 <= IDENTIFIER)) || LA636_39 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA636_39 >= LESS_OR_EQUAL_OPERATOR) && (LA636_39 <= LESS_THAN_OPERATOR)) || LA636_39 == LOGICAL_AND_OPERATOR || LA636_39 == LOGICAL_OR_OPERATOR || ((LA636_39 >= MINUS_OPERATOR) && (LA636_39 <= MOD_OPERATOR)) || ((LA636_39 >= MULT_OPERATOR) && (LA636_39 <= NULL_SAFE_EQUAL_OPERATOR)) || LA636_39 == PLUS_OPERATOR || ((LA636_39 >= SHIFT_LEFT_OPERATOR) && (LA636_39 <= SHIFT_RIGHT_OPERATOR))))
                            {
                                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        = 39;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == ASCII_SYMBOL))
                    {
                        {
                            int LA636_43 = LA(2);
                            if ( (LA636_43 == OPEN_PAR_SYMBOL))
                            {
                                alt636=3;
                            }
                            else if ( (LA636_43 == EOF || ((LA636_43 >= ACCOUNT_SYMBOL) && (LA636_43 <= YEAR_SYMBOL)) || ((LA636_43 >= AND_SYMBOL) && (LA636_43 <= ASC_SYMBOL)) || LA636_43 == BETWEEN_SYMBOL || LA636_43 == COLLATE_SYMBOL || LA636_43 == CROSS_SYMBOL || ((LA636_43 >= DAY_HOUR_SYMBOL) && (LA636_43 <= DAY_SECOND_SYMBOL)) || LA636_43 == DESC_SYMBOL || LA636_43 == ELSE_SYMBOL || ((LA636_43 >= FOR_SYMBOL) && (LA636_43 <= FROM_SYMBOL)) || ((LA636_43 >= GROUP_SYMBOL) && (LA636_43 <= HAVING_SYMBOL)) || ((LA636_43 >= HOUR_MICROSECOND_SYMBOL) && (LA636_43 <= HOUR_SECOND_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA636_43 == LOCK_SYMBOL || ((LA636_43 >= MINUTE_MICROSECOND_SYMBOL) && (LA636_43 <= MINUTE_SECOND_SYMBOL)) || ((LA636_43 >= MOD_SYMBOL) && (LA636_43 <= NATURAL_SYMBOL)) || LA636_43 == NOT_SYMBOL || LA636_43 == ON_SYMBOL || ((LA636_43 >= ORDER_SYMBOL) && (LA636_43 <= OR_SYMBOL)) || 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 == 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)) || ((LA636_43 >= AS_SYMBOL) && (LA636_43 <= AT_TEXT_SUFFIX)) || ((LA636_43 >= BACK_TICK_QUOTED_ID) && (LA636_43 <= BITWISE_AND_OPERATOR)) || ((LA636_43 >= BITWISE_OR_OPERATOR) && (LA636_43 <= BITWISE_XOR_OPERATOR)) || ((LA636_43 >= CLOSE_CURLY_SYMBOL) && (LA636_43 <= CLOSE_PAR_SYMBOL)) || ((LA636_43 >= COMMA_SYMBOL) && (LA636_43 <= CONCAT_PIPES_SYMBOL)) || ((LA636_43 >= DIV_OPERATOR) && (LA636_43 <= DIV_SYMBOL)) || LA636_43 == DOT_SYMBOL || LA636_43 == DOUBLE_QUOTED_TEXT || LA636_43 == EQUAL_OPERATOR || ((LA636_43 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_43 <= GREATER_THAN_OPERATOR)) || ((LA636_43 >= HEX_NUMBER) && (LA636_43 <= IDENTIFIER)) || LA636_43 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA636_43 >= LESS_OR_EQUAL_OPERATOR) && (LA636_43 <= LESS_THAN_OPERATOR)) || LA636_43 == LOGICAL_AND_OPERATOR || LA636_43 == LOGICAL_OR_OPERATOR || ((LA636_43 >= MINUS_OPERATOR) && (LA636_43 <= MOD_OPERATOR)) || ((LA636_43 >= MULT_OPERATOR) && (LA636_43 <= NULL_SAFE_EQUAL_OPERATOR)) || LA636_43 == PLUS_OPERATOR || ((LA636_43 >= SHIFT_LEFT_OPERATOR) && (LA636_43 <= SHIFT_RIGHT_OPERATOR))))
                            {
                                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        = 43;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == CHARSET_SYMBOL))
                    {
                        {
                            int LA636_44 = LA(2);
                            if ( (LA636_44 == OPEN_PAR_SYMBOL))
                            {
                                alt636=3;
                            }
                            else if ( (LA636_44 == EOF || ((LA636_44 >= ACCOUNT_SYMBOL) && (LA636_44 <= YEAR_SYMBOL)) || ((LA636_44 >= AND_SYMBOL) && (LA636_44 <= ASC_SYMBOL)) || LA636_44 == BETWEEN_SYMBOL || LA636_44 == COLLATE_SYMBOL || LA636_44 == CROSS_SYMBOL || ((LA636_44 >= DAY_HOUR_SYMBOL) && (LA636_44 <= DAY_SECOND_SYMBOL)) || LA636_44 == DESC_SYMBOL || LA636_44 == ELSE_SYMBOL || ((LA636_44 >= FOR_SYMBOL) && (LA636_44 <= FROM_SYMBOL)) || ((LA636_44 >= GROUP_SYMBOL) && (LA636_44 <= HAVING_SYMBOL)) || ((LA636_44 >= HOUR_MICROSECOND_SYMBOL) && (LA636_44 <= HOUR_SECOND_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA636_44 == LOCK_SYMBOL || ((LA636_44 >= MINUTE_MICROSECOND_SYMBOL) && (LA636_44 <= MINUTE_SECOND_SYMBOL)) || ((LA636_44 >= MOD_SYMBOL) && (LA636_44 <= NATURAL_SYMBOL)) || LA636_44 == NOT_SYMBOL || LA636_44 == ON_SYMBOL || ((LA636_44 >= ORDER_SYMBOL) && (LA636_44 <= OR_SYMBOL)) || 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 == 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)) || ((LA636_44 >= AS_SYMBOL) && (LA636_44 <= AT_TEXT_SUFFIX)) || ((LA636_44 >= BACK_TICK_QUOTED_ID) && (LA636_44 <= BITWISE_AND_OPERATOR)) || ((LA636_44 >= BITWISE_OR_OPERATOR) && (LA636_44 <= BITWISE_XOR_OPERATOR)) || ((LA636_44 >= CLOSE_CURLY_SYMBOL) && (LA636_44 <= CLOSE_PAR_SYMBOL)) || ((LA636_44 >= COMMA_SYMBOL) && (LA636_44 <= CONCAT_PIPES_SYMBOL)) || ((LA636_44 >= DIV_OPERATOR) && (LA636_44 <= DIV_SYMBOL)) || LA636_44 == DOT_SYMBOL || LA636_44 == DOUBLE_QUOTED_TEXT || LA636_44 == EQUAL_OPERATOR || ((LA636_44 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_44 <= GREATER_THAN_OPERATOR)) || ((LA636_44 >= HEX_NUMBER) && (LA636_44 <= IDENTIFIER)) || LA636_44 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA636_44 >= LESS_OR_EQUAL_OPERATOR) && (LA636_44 <= LESS_THAN_OPERATOR)) || LA636_44 == LOGICAL_AND_OPERATOR || LA636_44 == LOGICAL_OR_OPERATOR || ((LA636_44 >= MINUS_OPERATOR) && (LA636_44 <= MOD_OPERATOR)) || ((LA636_44 >= MULT_OPERATOR) && (LA636_44 <= NULL_SAFE_EQUAL_OPERATOR)) || LA636_44 == PLUS_OPERATOR || ((LA636_44 >= SHIFT_LEFT_OPERATOR) && (LA636_44 <= SHIFT_RIGHT_OPERATOR))))
                            {
                                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        = 44;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == COALESCE_SYMBOL))
                    {
                        {
                            int LA636_45 = LA(2);
                            if ( (LA636_45 == OPEN_PAR_SYMBOL))
                            {
                                alt636=3;
                            }
                            else if ( (LA636_45 == EOF || ((LA636_45 >= ACCOUNT_SYMBOL) && (LA636_45 <= YEAR_SYMBOL)) || ((LA636_45 >= AND_SYMBOL) && (LA636_45 <= ASC_SYMBOL)) || LA636_45 == BETWEEN_SYMBOL || LA636_45 == COLLATE_SYMBOL || LA636_45 == CROSS_SYMBOL || ((LA636_45 >= DAY_HOUR_SYMBOL) && (LA636_45 <= DAY_SECOND_SYMBOL)) || LA636_45 == DESC_SYMBOL || LA636_45 == ELSE_SYMBOL || ((LA636_45 >= FOR_SYMBOL) && (LA636_45 <= FROM_SYMBOL)) || ((LA636_45 >= GROUP_SYMBOL) && (LA636_45 <= HAVING_SYMBOL)) || ((LA636_45 >= HOUR_MICROSECOND_SYMBOL) && (LA636_45 <= HOUR_SECOND_SYMBOL)) || LA636_45 == INNER_SYMBOL || LA636_45 == INTO_SYMBOL || LA636_45 == IN_SYMBOL || LA636_45 == IS_SYMBOL || ((LA636_45 >= JOIN_SYMBOL) && (LA636_45 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_45 >= LEFT_SYMBOL) && (LA636_45 <= LIMIT_SYMBOL)) || LA636_45 == LOCK_SYMBOL || ((LA636_45 >= MINUTE_MICROSECOND_SYMBOL) && (LA636_45 <= MINUTE_SECOND_SYMBOL)) || ((LA636_45 >= MOD_SYMBOL) && (LA636_45 <= NATURAL_SYMBOL)) || LA636_45 == NOT_SYMBOL || LA636_45 == ON_SYMBOL || ((LA636_45 >= ORDER_SYMBOL) && (LA636_45 <= OR_SYMBOL)) || LA636_45 == PROCEDURE_SYMBOL || LA636_45 == REGEXP_SYMBOL || LA636_45 == RENAME_SYMBOL || LA636_45 == RIGHT_SYMBOL || LA636_45 == SECOND_MICROSECOND_SYMBOL || LA636_45 == SEMICOLON_SYMBOL || LA636_45 == SEPARATOR_SYMBOL || LA636_45 == SET_SYMBOL || LA636_45 == SINGLE_QUOTED_TEXT || LA636_45 == STRAIGHT_JOIN_SYMBOL || LA636_45 == THEN_SYMBOL || LA636_45 == UNION_SYMBOL || LA636_45 == USING_SYMBOL || ((LA636_45 >= WHEN_SYMBOL) && (LA636_45 <= WHERE_SYMBOL)) || LA636_45 == WITH_SYMBOL || ((LA636_45 >= XOR_SYMBOL) && (LA636_45 <= YEAR_MONTH_SYMBOL)) || ((LA636_45 >= AS_SYMBOL) && (LA636_45 <= AT_TEXT_SUFFIX)) || ((LA636_45 >= BACK_TICK_QUOTED_ID) && (LA636_45 <= BITWISE_AND_OPERATOR)) || ((LA636_45 >= BITWISE_OR_OPERATOR) && (LA636_45 <= BITWISE_XOR_OPERATOR)) || ((LA636_45 >= CLOSE_CURLY_SYMBOL) && (LA636_45 <= CLOSE_PAR_SYMBOL)) || ((LA636_45 >= COMMA_SYMBOL) && (LA636_45 <= CONCAT_PIPES_SYMBOL)) || ((LA636_45 >= DIV_OPERATOR) && (LA636_45 <= DIV_SYMBOL)) || LA636_45 == DOT_SYMBOL || LA636_45 == DOUBLE_QUOTED_TEXT || LA636_45 == EQUAL_OPERATOR || ((LA636_45 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_45 <= GREATER_THAN_OPERATOR)) || ((LA636_45 >= HEX_NUMBER) && (LA636_45 <= IDENTIFIER)) || LA636_45 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA636_45 >= LESS_OR_EQUAL_OPERATOR) && (LA636_45 <= LESS_THAN_OPERATOR)) || LA636_45 == LOGICAL_AND_OPERATOR || LA636_45 == LOGICAL_OR_OPERATOR || ((LA636_45 >= MINUS_OPERATOR) && (LA636_45 <= MOD_OPERATOR)) || ((LA636_45 >= MULT_OPERATOR) && (LA636_45 <= NULL_SAFE_EQUAL_OPERATOR)) || LA636_45 == PLUS_OPERATOR || ((LA636_45 >= SHIFT_LEFT_OPERATOR) && (LA636_45 <= SHIFT_RIGHT_OPERATOR))))
                            {
                                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        = 45;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == COLLATION_SYMBOL))
                    {
                        {
                            int LA636_46 = LA(2);
                            if ( (LA636_46 == OPEN_PAR_SYMBOL))
                            {
                                alt636=3;
                            }
                            else if ( (LA636_46 == EOF || ((LA636_46 >= ACCOUNT_SYMBOL) && (LA636_46 <= YEAR_SYMBOL)) || ((LA636_46 >= AND_SYMBOL) && (LA636_46 <= ASC_SYMBOL)) || LA636_46 == BETWEEN_SYMBOL || LA636_46 == COLLATE_SYMBOL || LA636_46 == CROSS_SYMBOL || ((LA636_46 >= DAY_HOUR_SYMBOL) && (LA636_46 <= DAY_SECOND_SYMBOL)) || LA636_46 == DESC_SYMBOL || LA636_46 == ELSE_SYMBOL || ((LA636_46 >= FOR_SYMBOL) && (LA636_46 <= FROM_SYMBOL)) || ((LA636_46 >= GROUP_SYMBOL) && (LA636_46 <= HAVING_SYMBOL)) || ((LA636_46 >= HOUR_MICROSECOND_SYMBOL) && (LA636_46 <= HOUR_SECOND_SYMBOL)) || LA636_46 == INNER_SYMBOL || LA636_46 == INTO_SYMBOL || LA636_46 == IN_SYMBOL || LA636_46 == IS_SYMBOL || ((LA636_46 >= JOIN_SYMBOL) && (LA636_46 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_46 >= LEFT_SYMBOL) && (LA636_46 <= LIMIT_SYMBOL)) || LA636_46 == LOCK_SYMBOL || ((LA636_46 >= MINUTE_MICROSECOND_SYMBOL) && (LA636_46 <= MINUTE_SECOND_SYMBOL)) || ((LA636_46 >= MOD_SYMBOL) && (LA636_46 <= NATURAL_SYMBOL)) || LA636_46 == NOT_SYMBOL || LA636_46 == ON_SYMBOL || ((LA636_46 >= ORDER_SYMBOL) && (LA636_46 <= OR_SYMBOL)) || LA636_46 == PROCEDURE_SYMBOL || LA636_46 == REGEXP_SYMBOL || LA636_46 == RENAME_SYMBOL || LA636_46 == RIGHT_SYMBOL || LA636_46 == SECOND_MICROSECOND_SYMBOL || LA636_46 == SEMICOLON_SYMBOL || LA636_46 == SEPARATOR_SYMBOL || LA636_46 == SET_SYMBOL || LA636_46 == SINGLE_QUOTED_TEXT || LA636_46 == STRAIGHT_JOIN_SYMBOL || LA636_46 == THEN_SYMBOL || LA636_46 == UNION_SYMBOL || LA636_46 == USING_SYMBOL || ((LA636_46 >= WHEN_SYMBOL) && (LA636_46 <= WHERE_SYMBOL)) || LA636_46 == WITH_SYMBOL || ((LA636_46 >= XOR_SYMBOL) && (LA636_46 <= YEAR_MONTH_SYMBOL)) || ((LA636_46 >= AS_SYMBOL) && (LA636_46 <= AT_TEXT_SUFFIX)) || ((LA636_46 >= BACK_TICK_QUOTED_ID) && (LA636_46 <= BITWISE_AND_OPERATOR)) || ((LA636_46 >= BITWISE_OR_OPERATOR) && (LA636_46 <= BITWISE_XOR_OPERATOR)) || ((LA636_46 >= CLOSE_CURLY_SYMBOL) && (LA636_46 <= CLOSE_PAR_SYMBOL)) || ((LA636_46 >= COMMA_SYMBOL) && (LA636_46 <= CONCAT_PIPES_SYMBOL)) || ((LA636_46 >= DIV_OPERATOR) && (LA636_46 <= DIV_SYMBOL)) || LA636_46 == DOT_SYMBOL || LA636_46 == DOUBLE_QUOTED_TEXT || LA636_46 == EQUAL_OPERATOR || ((LA636_46 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_46 <= GREATER_THAN_OPERATOR)) || ((LA636_46 >= HEX_NUMBER) && (LA636_46 <= IDENTIFIER)) || LA636_46 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA636_46 >= LESS_OR_EQUAL_OPERATOR) && (LA636_46 <= LESS_THAN_OPERATOR)) || LA636_46 == LOGICAL_AND_OPERATOR || LA636_46 == LOGICAL_OR_OPERATOR || ((LA636_46 >= MINUS_OPERATOR) && (LA636_46 <= MOD_OPERATOR)) || ((LA636_46 >= MULT_OPERATOR) && (LA636_46 <= NULL_SAFE_EQUAL_OPERATOR)) || LA636_46 == PLUS_OPERATOR || ((LA636_46 >= SHIFT_LEFT_OPERATOR) && (LA636_46 <= SHIFT_RIGHT_OPERATOR))))
                            {
                                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        = 46;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == FORMAT_SYMBOL))
                    {
                        {
                            int LA636_49 = LA(2);
                            if ( (LA636_49 == OPEN_PAR_SYMBOL))
                            {
                                alt636=3;
                            }
                            else if ( (LA636_49 == EOF || ((LA636_49 >= ACCOUNT_SYMBOL) && (LA636_49 <= YEAR_SYMBOL)) || ((LA636_49 >= AND_SYMBOL) && (LA636_49 <= ASC_SYMBOL)) || LA636_49 == BETWEEN_SYMBOL || LA636_49 == COLLATE_SYMBOL || LA636_49 == CROSS_SYMBOL || ((LA636_49 >= DAY_HOUR_SYMBOL) && (LA636_49 <= DAY_SECOND_SYMBOL)) || LA636_49 == DESC_SYMBOL || LA636_49 == ELSE_SYMBOL || ((LA636_49 >= FOR_SYMBOL) && (LA636_49 <= FROM_SYMBOL)) || ((LA636_49 >= GROUP_SYMBOL) && (LA636_49 <= HAVING_SYMBOL)) || ((LA636_49 >= HOUR_MICROSECOND_SYMBOL) && (LA636_49 <= HOUR_SECOND_SYMBOL)) || LA636_49 == INNER_SYMBOL || LA636_49 == INTO_SYMBOL || LA636_49 == IN_SYMBOL || LA636_49 == IS_SYMBOL || ((LA636_49 >= JOIN_SYMBOL) && (LA636_49 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_49 >= LEFT_SYMBOL) && (LA636_49 <= LIMIT_SYMBOL)) || LA636_49 == LOCK_SYMBOL || ((LA636_49 >= MINUTE_MICROSECOND_SYMBOL) && (LA636_49 <= MINUTE_SECOND_SYMBOL)) || ((LA636_49 >= MOD_SYMBOL) && (LA636_49 <= NATURAL_SYMBOL)) || LA636_49 == NOT_SYMBOL || LA636_49 == ON_SYMBOL || ((LA636_49 >= ORDER_SYMBOL) && (LA636_49 <= OR_SYMBOL)) || LA636_49 == PROCEDURE_SYMBOL || LA636_49 == REGEXP_SYMBOL || LA636_49 == RENAME_SYMBOL || LA636_49 == RIGHT_SYMBOL || LA636_49 == SECOND_MICROSECOND_SYMBOL || LA636_49 == SEMICOLON_SYMBOL || LA636_49 == SEPARATOR_SYMBOL || LA636_49 == SET_SYMBOL || LA636_49 == SINGLE_QUOTED_TEXT || LA636_49 == STRAIGHT_JOIN_SYMBOL || LA636_49 == THEN_SYMBOL || LA636_49 == UNION_SYMBOL || LA636_49 == USING_SYMBOL || ((LA636_49 >= WHEN_SYMBOL) && (LA636_49 <= WHERE_SYMBOL)) || LA636_49 == WITH_SYMBOL || ((LA636_49 >= XOR_SYMBOL) && (LA636_49 <= YEAR_MONTH_SYMBOL)) || ((LA636_49 >= AS_SYMBOL) && (LA636_49 <= AT_TEXT_SUFFIX)) || ((LA636_49 >= BACK_TICK_QUOTED_ID) && (LA636_49 <= BITWISE_AND_OPERATOR)) || ((LA636_49 >= BITWISE_OR_OPERATOR) && (LA636_49 <= BITWISE_XOR_OPERATOR)) || ((LA636_49 >= CLOSE_CURLY_SYMBOL) && (LA636_49 <= CLOSE_PAR_SYMBOL)) || ((LA636_49 >= COMMA_SYMBOL) && (LA636_49 <= CONCAT_PIPES_SYMBOL)) || ((LA636_49 >= DIV_OPERATOR) && (LA636_49 <= DIV_SYMBOL)) || LA636_49 == DOT_SYMBOL || LA636_49 == DOUBLE_QUOTED_TEXT || LA636_49 == EQUAL_OPERATOR || ((LA636_49 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_49 <= GREATER_THAN_OPERATOR)) || ((LA636_49 >= HEX_NUMBER) && (LA636_49 <= IDENTIFIER)) || LA636_49 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA636_49 >= LESS_OR_EQUAL_OPERATOR) && (LA636_49 <= LESS_THAN_OPERATOR)) || LA636_49 == LOGICAL_AND_OPERATOR || LA636_49 == LOGICAL_OR_OPERATOR || ((LA636_49 >= MINUS_OPERATOR) && (LA636_49 <= MOD_OPERATOR)) || ((LA636_49 >= MULT_OPERATOR) && (LA636_49 <= NULL_SAFE_EQUAL_OPERATOR)) || LA636_49 == PLUS_OPERATOR || ((LA636_49 >= SHIFT_LEFT_OPERATOR) && (LA636_49 <= SHIFT_RIGHT_OPERATOR))))
                            {
                                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        = 49;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == MICROSECOND_SYMBOL))
                    {
                        {
                            int LA636_50 = LA(2);
                            if ( (LA636_50 == OPEN_PAR_SYMBOL))
                            {
                                alt636=3;
                            }
                            else if ( (LA636_50 == EOF || ((LA636_50 >= ACCOUNT_SYMBOL) && (LA636_50 <= YEAR_SYMBOL)) || ((LA636_50 >= AND_SYMBOL) && (LA636_50 <= ASC_SYMBOL)) || LA636_50 == BETWEEN_SYMBOL || LA636_50 == COLLATE_SYMBOL || LA636_50 == CROSS_SYMBOL || ((LA636_50 >= DAY_HOUR_SYMBOL) && (LA636_50 <= DAY_SECOND_SYMBOL)) || LA636_50 == DESC_SYMBOL || LA636_50 == ELSE_SYMBOL || ((LA636_50 >= FOR_SYMBOL) && (LA636_50 <= FROM_SYMBOL)) || ((LA636_50 >= GROUP_SYMBOL) && (LA636_50 <= HAVING_SYMBOL)) || ((LA636_50 >= HOUR_MICROSECOND_SYMBOL) && (LA636_50 <= HOUR_SECOND_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA636_50 == LOCK_SYMBOL || ((LA636_50 >= MINUTE_MICROSECOND_SYMBOL) && (LA636_50 <= MINUTE_SECOND_SYMBOL)) || ((LA636_50 >= MOD_SYMBOL) && (LA636_50 <= NATURAL_SYMBOL)) || LA636_50 == NOT_SYMBOL || LA636_50 == ON_SYMBOL || ((LA636_50 >= ORDER_SYMBOL) && (LA636_50 <= OR_SYMBOL)) || 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 == 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)) || ((LA636_50 >= AS_SYMBOL) && (LA636_50 <= AT_TEXT_SUFFIX)) || ((LA636_50 >= BACK_TICK_QUOTED_ID) && (LA636_50 <= BITWISE_AND_OPERATOR)) || ((LA636_50 >= BITWISE_OR_OPERATOR) && (LA636_50 <= BITWISE_XOR_OPERATOR)) || ((LA636_50 >= CLOSE_CURLY_SYMBOL) && (LA636_50 <= CLOSE_PAR_SYMBOL)) || ((LA636_50 >= COMMA_SYMBOL) && (LA636_50 <= CONCAT_PIPES_SYMBOL)) || ((LA636_50 >= DIV_OPERATOR) && (LA636_50 <= DIV_SYMBOL)) || LA636_50 == DOT_SYMBOL || LA636_50 == DOUBLE_QUOTED_TEXT || LA636_50 == EQUAL_OPERATOR || ((LA636_50 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_50 <= GREATER_THAN_OPERATOR)) || ((LA636_50 >= HEX_NUMBER) && (LA636_50 <= IDENTIFIER)) || LA636_50 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA636_50 >= LESS_OR_EQUAL_OPERATOR) && (LA636_50 <= LESS_THAN_OPERATOR)) || LA636_50 == LOGICAL_AND_OPERATOR || LA636_50 == LOGICAL_OR_OPERATOR || ((LA636_50 >= MINUS_OPERATOR) && (LA636_50 <= MOD_OPERATOR)) || ((LA636_50 >= MULT_OPERATOR) && (LA636_50 <= NULL_SAFE_EQUAL_OPERATOR)) || LA636_50 == PLUS_OPERATOR || ((LA636_50 >= SHIFT_LEFT_OPERATOR) && (LA636_50 <= SHIFT_RIGHT_OPERATOR))))
                            {
                                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        = 50;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == OLD_PASSWORD_SYMBOL))
                    {
                        {
                            int LA636_52 = LA(2);
                            if ( (LA636_52 == OPEN_PAR_SYMBOL))
                            {
                                alt636=3;
                            }
                            else if ( (LA636_52 == EOF || ((LA636_52 >= ACCOUNT_SYMBOL) && (LA636_52 <= YEAR_SYMBOL)) || ((LA636_52 >= AND_SYMBOL) && (LA636_52 <= ASC_SYMBOL)) || LA636_52 == BETWEEN_SYMBOL || LA636_52 == COLLATE_SYMBOL || LA636_52 == CROSS_SYMBOL || ((LA636_52 >= DAY_HOUR_SYMBOL) && (LA636_52 <= DAY_SECOND_SYMBOL)) || LA636_52 == DESC_SYMBOL || LA636_52 == ELSE_SYMBOL || ((LA636_52 >= FOR_SYMBOL) && (LA636_52 <= FROM_SYMBOL)) || ((LA636_52 >= GROUP_SYMBOL) && (LA636_52 <= HAVING_SYMBOL)) || ((LA636_52 >= HOUR_MICROSECOND_SYMBOL) && (LA636_52 <= HOUR_SECOND_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA636_52 == LOCK_SYMBOL || ((LA636_52 >= MINUTE_MICROSECOND_SYMBOL) && (LA636_52 <= MINUTE_SECOND_SYMBOL)) || ((LA636_52 >= MOD_SYMBOL) && (LA636_52 <= NATURAL_SYMBOL)) || LA636_52 == NOT_SYMBOL || LA636_52 == ON_SYMBOL || ((LA636_52 >= ORDER_SYMBOL) && (LA636_52 <= OR_SYMBOL)) || 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 == 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)) || ((LA636_52 >= AS_SYMBOL) && (LA636_52 <= AT_TEXT_SUFFIX)) || ((LA636_52 >= BACK_TICK_QUOTED_ID) && (LA636_52 <= BITWISE_AND_OPERATOR)) || ((LA636_52 >= BITWISE_OR_OPERATOR) && (LA636_52 <= BITWISE_XOR_OPERATOR)) || ((LA636_52 >= CLOSE_CURLY_SYMBOL) && (LA636_52 <= CLOSE_PAR_SYMBOL)) || ((LA636_52 >= COMMA_SYMBOL) && (LA636_52 <= CONCAT_PIPES_SYMBOL)) || ((LA636_52 >= DIV_OPERATOR) && (LA636_52 <= DIV_SYMBOL)) || LA636_52 == DOT_SYMBOL || LA636_52 == DOUBLE_QUOTED_TEXT || LA636_52 == EQUAL_OPERATOR || ((LA636_52 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_52 <= GREATER_THAN_OPERATOR)) || ((LA636_52 >= HEX_NUMBER) && (LA636_52 <= IDENTIFIER)) || LA636_52 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA636_52 >= LESS_OR_EQUAL_OPERATOR) && (LA636_52 <= LESS_THAN_OPERATOR)) || LA636_52 == LOGICAL_AND_OPERATOR || LA636_52 == LOGICAL_OR_OPERATOR || ((LA636_52 >= MINUS_OPERATOR) && (LA636_52 <= MOD_OPERATOR)) || ((LA636_52 >= MULT_OPERATOR) && (LA636_52 <= NULL_SAFE_EQUAL_OPERATOR)) || LA636_52 == PLUS_OPERATOR || ((LA636_52 >= SHIFT_LEFT_OPERATOR) && (LA636_52 <= SHIFT_RIGHT_OPERATOR))))
                            {
                                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        = 52;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == PASSWORD_SYMBOL))
                    {
                        {
                            int LA636_53 = LA(2);
                            if ( (LA636_53 == OPEN_PAR_SYMBOL))
                            {
                                alt636=3;
                            }
                            else if ( (LA636_53 == EOF || ((LA636_53 >= ACCOUNT_SYMBOL) && (LA636_53 <= YEAR_SYMBOL)) || ((LA636_53 >= AND_SYMBOL) && (LA636_53 <= ASC_SYMBOL)) || LA636_53 == BETWEEN_SYMBOL || LA636_53 == COLLATE_SYMBOL || LA636_53 == CROSS_SYMBOL || ((LA636_53 >= DAY_HOUR_SYMBOL) && (LA636_53 <= DAY_SECOND_SYMBOL)) || LA636_53 == DESC_SYMBOL || LA636_53 == ELSE_SYMBOL || ((LA636_53 >= FOR_SYMBOL) && (LA636_53 <= FROM_SYMBOL)) || ((LA636_53 >= GROUP_SYMBOL) && (LA636_53 <= HAVING_SYMBOL)) || ((LA636_53 >= HOUR_MICROSECOND_SYMBOL) && (LA636_53 <= HOUR_SECOND_SYMBOL)) || LA636_53 == INNER_SYMBOL || LA636_53 == INTO_SYMBOL || LA636_53 == IN_SYMBOL || LA636_53 == IS_SYMBOL || ((LA636_53 >= JOIN_SYMBOL) && (LA636_53 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_53 >= LEFT_SYMBOL) && (LA636_53 <= LIMIT_SYMBOL)) || LA636_53 == LOCK_SYMBOL || ((LA636_53 >= MINUTE_MICROSECOND_SYMBOL) && (LA636_53 <= MINUTE_SECOND_SYMBOL)) || ((LA636_53 >= MOD_SYMBOL) && (LA636_53 <= NATURAL_SYMBOL)) || LA636_53 == NOT_SYMBOL || LA636_53 == ON_SYMBOL || ((LA636_53 >= ORDER_SYMBOL) && (LA636_53 <= OR_SYMBOL)) || LA636_53 == PROCEDURE_SYMBOL || LA636_53 == REGEXP_SYMBOL || LA636_53 == RENAME_SYMBOL || LA636_53 == RIGHT_SYMBOL || LA636_53 == SECOND_MICROSECOND_SYMBOL || LA636_53 == SEMICOLON_SYMBOL || LA636_53 == SEPARATOR_SYMBOL || LA636_53 == SET_SYMBOL || LA636_53 == SINGLE_QUOTED_TEXT || LA636_53 == STRAIGHT_JOIN_SYMBOL || LA636_53 == THEN_SYMBOL || LA636_53 == UNION_SYMBOL || LA636_53 == USING_SYMBOL || ((LA636_53 >= WHEN_SYMBOL) && (LA636_53 <= WHERE_SYMBOL)) || LA636_53 == WITH_SYMBOL || ((LA636_53 >= XOR_SYMBOL) && (LA636_53 <= YEAR_MONTH_SYMBOL)) || ((LA636_53 >= AS_SYMBOL) && (LA636_53 <= AT_TEXT_SUFFIX)) || ((LA636_53 >= BACK_TICK_QUOTED_ID) && (LA636_53 <= BITWISE_AND_OPERATOR)) || ((LA636_53 >= BITWISE_OR_OPERATOR) && (LA636_53 <= BITWISE_XOR_OPERATOR)) || ((LA636_53 >= CLOSE_CURLY_SYMBOL) && (LA636_53 <= CLOSE_PAR_SYMBOL)) || ((LA636_53 >= COMMA_SYMBOL) && (LA636_53 <= CONCAT_PIPES_SYMBOL)) || ((LA636_53 >= DIV_OPERATOR) && (LA636_53 <= DIV_SYMBOL)) || LA636_53 == DOT_SYMBOL || LA636_53 == DOUBLE_QUOTED_TEXT || LA636_53 == EQUAL_OPERATOR || ((LA636_53 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_53 <= GREATER_THAN_OPERATOR)) || ((LA636_53 >= HEX_NUMBER) && (LA636_53 <= IDENTIFIER)) || LA636_53 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA636_53 >= LESS_OR_EQUAL_OPERATOR) && (LA636_53 <= LESS_THAN_OPERATOR)) || LA636_53 == LOGICAL_AND_OPERATOR || LA636_53 == LOGICAL_OR_OPERATOR || ((LA636_53 >= MINUS_OPERATOR) && (LA636_53 <= MOD_OPERATOR)) || ((LA636_53 >= MULT_OPERATOR) && (LA636_53 <= NULL_SAFE_EQUAL_OPERATOR)) || LA636_53 == PLUS_OPERATOR || ((LA636_53 >= SHIFT_LEFT_OPERATOR) && (LA636_53 <= SHIFT_RIGHT_OPERATOR))))
                            {
                                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        = 53;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == QUARTER_SYMBOL))
                    {
                        {
                            int LA636_54 = LA(2);
                            if ( (LA636_54 == OPEN_PAR_SYMBOL))
                            {
                                alt636=3;
                            }
                            else if ( (LA636_54 == EOF || ((LA636_54 >= ACCOUNT_SYMBOL) && (LA636_54 <= YEAR_SYMBOL)) || ((LA636_54 >= AND_SYMBOL) && (LA636_54 <= ASC_SYMBOL)) || LA636_54 == BETWEEN_SYMBOL || LA636_54 == COLLATE_SYMBOL || LA636_54 == CROSS_SYMBOL || ((LA636_54 >= DAY_HOUR_SYMBOL) && (LA636_54 <= DAY_SECOND_SYMBOL)) || LA636_54 == DESC_SYMBOL || LA636_54 == ELSE_SYMBOL || ((LA636_54 >= FOR_SYMBOL) && (LA636_54 <= FROM_SYMBOL)) || ((LA636_54 >= GROUP_SYMBOL) && (LA636_54 <= HAVING_SYMBOL)) || ((LA636_54 >= HOUR_MICROSECOND_SYMBOL) && (LA636_54 <= HOUR_SECOND_SYMBOL)) || LA636_54 == INNER_SYMBOL || LA636_54 == INTO_SYMBOL || LA636_54 == IN_SYMBOL || LA636_54 == IS_SYMBOL || ((LA636_54 >= JOIN_SYMBOL) && (LA636_54 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_54 >= LEFT_SYMBOL) && (LA636_54 <= LIMIT_SYMBOL)) || LA636_54 == LOCK_SYMBOL || ((LA636_54 >= MINUTE_MICROSECOND_SYMBOL) && (LA636_54 <= MINUTE_SECOND_SYMBOL)) || ((LA636_54 >= MOD_SYMBOL) && (LA636_54 <= NATURAL_SYMBOL)) || LA636_54 == NOT_SYMBOL || LA636_54 == ON_SYMBOL || ((LA636_54 >= ORDER_SYMBOL) && (LA636_54 <= OR_SYMBOL)) || LA636_54 == PROCEDURE_SYMBOL || LA636_54 == REGEXP_SYMBOL || LA636_54 == RENAME_SYMBOL || LA636_54 == RIGHT_SYMBOL || LA636_54 == SECOND_MICROSECOND_SYMBOL || LA636_54 == SEMICOLON_SYMBOL || LA636_54 == SEPARATOR_SYMBOL || LA636_54 == SET_SYMBOL || LA636_54 == SINGLE_QUOTED_TEXT || LA636_54 == STRAIGHT_JOIN_SYMBOL || LA636_54 == THEN_SYMBOL || LA636_54 == UNION_SYMBOL || LA636_54 == USING_SYMBOL || ((LA636_54 >= WHEN_SYMBOL) && (LA636_54 <= WHERE_SYMBOL)) || LA636_54 == WITH_SYMBOL || ((LA636_54 >= XOR_SYMBOL) && (LA636_54 <= YEAR_MONTH_SYMBOL)) || ((LA636_54 >= AS_SYMBOL) && (LA636_54 <= AT_TEXT_SUFFIX)) || ((LA636_54 >= BACK_TICK_QUOTED_ID) && (LA636_54 <= BITWISE_AND_OPERATOR)) || ((LA636_54 >= BITWISE_OR_OPERATOR) && (LA636_54 <= BITWISE_XOR_OPERATOR)) || ((LA636_54 >= CLOSE_CURLY_SYMBOL) && (LA636_54 <= CLOSE_PAR_SYMBOL)) || ((LA636_54 >= COMMA_SYMBOL) && (LA636_54 <= CONCAT_PIPES_SYMBOL)) || ((LA636_54 >= DIV_OPERATOR) && (LA636_54 <= DIV_SYMBOL)) || LA636_54 == DOT_SYMBOL || LA636_54 == DOUBLE_QUOTED_TEXT || LA636_54 == EQUAL_OPERATOR || ((LA636_54 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_54 <= GREATER_THAN_OPERATOR)) || ((LA636_54 >= HEX_NUMBER) && (LA636_54 <= IDENTIFIER)) || LA636_54 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA636_54 >= LESS_OR_EQUAL_OPERATOR) && (LA636_54 <= LESS_THAN_OPERATOR)) || LA636_54 == LOGICAL_AND_OPERATOR || LA636_54 == LOGICAL_OR_OPERATOR || ((LA636_54 >= MINUS_OPERATOR) && (LA636_54 <= MOD_OPERATOR)) || ((LA636_54 >= MULT_OPERATOR) && (LA636_54 <= NULL_SAFE_EQUAL_OPERATOR)) || LA636_54 == PLUS_OPERATOR || ((LA636_54 >= SHIFT_LEFT_OPERATOR) && (LA636_54 <= SHIFT_RIGHT_OPERATOR))))
                            {
                                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        = 54;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == REVERSE_SYMBOL))
                    {
                        {
                            int LA636_57 = LA(2);
                            if ( (LA636_57 == OPEN_PAR_SYMBOL))
                            {
                                alt636=3;
                            }
                            else if ( (LA636_57 == EOF || ((LA636_57 >= ACCOUNT_SYMBOL) && (LA636_57 <= YEAR_SYMBOL)) || ((LA636_57 >= AND_SYMBOL) && (LA636_57 <= ASC_SYMBOL)) || LA636_57 == BETWEEN_SYMBOL || LA636_57 == COLLATE_SYMBOL || LA636_57 == CROSS_SYMBOL || ((LA636_57 >= DAY_HOUR_SYMBOL) && (LA636_57 <= DAY_SECOND_SYMBOL)) || LA636_57 == DESC_SYMBOL || LA636_57 == ELSE_SYMBOL || ((LA636_57 >= FOR_SYMBOL) && (LA636_57 <= FROM_SYMBOL)) || ((LA636_57 >= GROUP_SYMBOL) && (LA636_57 <= HAVING_SYMBOL)) || ((LA636_57 >= HOUR_MICROSECOND_SYMBOL) && (LA636_57 <= HOUR_SECOND_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA636_57 == LOCK_SYMBOL || ((LA636_57 >= MINUTE_MICROSECOND_SYMBOL) && (LA636_57 <= MINUTE_SECOND_SYMBOL)) || ((LA636_57 >= MOD_SYMBOL) && (LA636_57 <= NATURAL_SYMBOL)) || LA636_57 == NOT_SYMBOL || LA636_57 == ON_SYMBOL || ((LA636_57 >= ORDER_SYMBOL) && (LA636_57 <= OR_SYMBOL)) || 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 == 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)) || ((LA636_57 >= AS_SYMBOL) && (LA636_57 <= AT_TEXT_SUFFIX)) || ((LA636_57 >= BACK_TICK_QUOTED_ID) && (LA636_57 <= BITWISE_AND_OPERATOR)) || ((LA636_57 >= BITWISE_OR_OPERATOR) && (LA636_57 <= BITWISE_XOR_OPERATOR)) || ((LA636_57 >= CLOSE_CURLY_SYMBOL) && (LA636_57 <= CLOSE_PAR_SYMBOL)) || ((LA636_57 >= COMMA_SYMBOL) && (LA636_57 <= CONCAT_PIPES_SYMBOL)) || ((LA636_57 >= DIV_OPERATOR) && (LA636_57 <= DIV_SYMBOL)) || LA636_57 == DOT_SYMBOL || LA636_57 == DOUBLE_QUOTED_TEXT || LA636_57 == EQUAL_OPERATOR || ((LA636_57 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_57 <= GREATER_THAN_OPERATOR)) || ((LA636_57 >= HEX_NUMBER) && (LA636_57 <= IDENTIFIER)) || LA636_57 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA636_57 >= LESS_OR_EQUAL_OPERATOR) && (LA636_57 <= LESS_THAN_OPERATOR)) || LA636_57 == LOGICAL_AND_OPERATOR || LA636_57 == LOGICAL_OR_OPERATOR || ((LA636_57 >= MINUS_OPERATOR) && (LA636_57 <= MOD_OPERATOR)) || ((LA636_57 >= MULT_OPERATOR) && (LA636_57 <= NULL_SAFE_EQUAL_OPERATOR)) || LA636_57 == PLUS_OPERATOR || ((LA636_57 >= SHIFT_LEFT_OPERATOR) && (LA636_57 <= SHIFT_RIGHT_OPERATOR))))
                            {
                                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        = 57;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == ROW_COUNT_SYMBOL))
                    {
                        {
                            int LA636_58 = LA(2);
                            if ( (LA636_58 == OPEN_PAR_SYMBOL))
                            {
                                alt636=3;
                            }
                            else if ( (LA636_58 == EOF || ((LA636_58 >= ACCOUNT_SYMBOL) && (LA636_58 <= YEAR_SYMBOL)) || ((LA636_58 >= AND_SYMBOL) && (LA636_58 <= ASC_SYMBOL)) || LA636_58 == BETWEEN_SYMBOL || LA636_58 == COLLATE_SYMBOL || LA636_58 == CROSS_SYMBOL || ((LA636_58 >= DAY_HOUR_SYMBOL) && (LA636_58 <= DAY_SECOND_SYMBOL)) || LA636_58 == DESC_SYMBOL || LA636_58 == ELSE_SYMBOL || ((LA636_58 >= FOR_SYMBOL) && (LA636_58 <= FROM_SYMBOL)) || ((LA636_58 >= GROUP_SYMBOL) && (LA636_58 <= HAVING_SYMBOL)) || ((LA636_58 >= HOUR_MICROSECOND_SYMBOL) && (LA636_58 <= HOUR_SECOND_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA636_58 == LOCK_SYMBOL || ((LA636_58 >= MINUTE_MICROSECOND_SYMBOL) && (LA636_58 <= MINUTE_SECOND_SYMBOL)) || ((LA636_58 >= MOD_SYMBOL) && (LA636_58 <= NATURAL_SYMBOL)) || LA636_58 == NOT_SYMBOL || LA636_58 == ON_SYMBOL || ((LA636_58 >= ORDER_SYMBOL) && (LA636_58 <= OR_SYMBOL)) || 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 == 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)) || ((LA636_58 >= AS_SYMBOL) && (LA636_58 <= AT_TEXT_SUFFIX)) || ((LA636_58 >= BACK_TICK_QUOTED_ID) && (LA636_58 <= BITWISE_AND_OPERATOR)) || ((LA636_58 >= BITWISE_OR_OPERATOR) && (LA636_58 <= BITWISE_XOR_OPERATOR)) || ((LA636_58 >= CLOSE_CURLY_SYMBOL) && (LA636_58 <= CLOSE_PAR_SYMBOL)) || ((LA636_58 >= COMMA_SYMBOL) && (LA636_58 <= CONCAT_PIPES_SYMBOL)) || ((LA636_58 >= DIV_OPERATOR) && (LA636_58 <= DIV_SYMBOL)) || LA636_58 == DOT_SYMBOL || LA636_58 == DOUBLE_QUOTED_TEXT || LA636_58 == EQUAL_OPERATOR || ((LA636_58 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_58 <= GREATER_THAN_OPERATOR)) || ((LA636_58 >= HEX_NUMBER) && (LA636_58 <= IDENTIFIER)) || LA636_58 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA636_58 >= LESS_OR_EQUAL_OPERATOR) && (LA636_58 <= LESS_THAN_OPERATOR)) || LA636_58 == LOGICAL_AND_OPERATOR || LA636_58 == LOGICAL_OR_OPERATOR || ((LA636_58 >= MINUS_OPERATOR) && (LA636_58 <= MOD_OPERATOR)) || ((LA636_58 >= MULT_OPERATOR) && (LA636_58 <= NULL_SAFE_EQUAL_OPERATOR)) || LA636_58 == PLUS_OPERATOR || ((LA636_58 >= SHIFT_LEFT_OPERATOR) && (LA636_58 <= SHIFT_RIGHT_OPERATOR))))
                            {
                                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        = 58;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == TRUNCATE_SYMBOL))
                    {
                        {
                            int LA636_59 = LA(2);
                            if ( (LA636_59 == OPEN_PAR_SYMBOL))
                            {
                                alt636=3;
                            }
                            else if ( (LA636_59 == EOF || ((LA636_59 >= ACCOUNT_SYMBOL) && (LA636_59 <= YEAR_SYMBOL)) || ((LA636_59 >= AND_SYMBOL) && (LA636_59 <= ASC_SYMBOL)) || LA636_59 == BETWEEN_SYMBOL || LA636_59 == COLLATE_SYMBOL || LA636_59 == CROSS_SYMBOL || ((LA636_59 >= DAY_HOUR_SYMBOL) && (LA636_59 <= DAY_SECOND_SYMBOL)) || LA636_59 == DESC_SYMBOL || LA636_59 == ELSE_SYMBOL || ((LA636_59 >= FOR_SYMBOL) && (LA636_59 <= FROM_SYMBOL)) || ((LA636_59 >= GROUP_SYMBOL) && (LA636_59 <= HAVING_SYMBOL)) || ((LA636_59 >= HOUR_MICROSECOND_SYMBOL) && (LA636_59 <= HOUR_SECOND_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA636_59 == LOCK_SYMBOL || ((LA636_59 >= MINUTE_MICROSECOND_SYMBOL) && (LA636_59 <= MINUTE_SECOND_SYMBOL)) || ((LA636_59 >= MOD_SYMBOL) && (LA636_59 <= NATURAL_SYMBOL)) || LA636_59 == NOT_SYMBOL || LA636_59 == ON_SYMBOL || ((LA636_59 >= ORDER_SYMBOL) && (LA636_59 <= OR_SYMBOL)) || 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 == 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)) || ((LA636_59 >= AS_SYMBOL) && (LA636_59 <= AT_TEXT_SUFFIX)) || ((LA636_59 >= BACK_TICK_QUOTED_ID) && (LA636_59 <= BITWISE_AND_OPERATOR)) || ((LA636_59 >= BITWISE_OR_OPERATOR) && (LA636_59 <= BITWISE_XOR_OPERATOR)) || ((LA636_59 >= CLOSE_CURLY_SYMBOL) && (LA636_59 <= CLOSE_PAR_SYMBOL)) || ((LA636_59 >= COMMA_SYMBOL) && (LA636_59 <= CONCAT_PIPES_SYMBOL)) || ((LA636_59 >= DIV_OPERATOR) && (LA636_59 <= DIV_SYMBOL)) || LA636_59 == DOT_SYMBOL || LA636_59 == DOUBLE_QUOTED_TEXT || LA636_59 == EQUAL_OPERATOR || ((LA636_59 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_59 <= GREATER_THAN_OPERATOR)) || ((LA636_59 >= HEX_NUMBER) && (LA636_59 <= IDENTIFIER)) || LA636_59 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA636_59 >= LESS_OR_EQUAL_OPERATOR) && (LA636_59 <= LESS_THAN_OPERATOR)) || LA636_59 == LOGICAL_AND_OPERATOR || LA636_59 == LOGICAL_OR_OPERATOR || ((LA636_59 >= MINUS_OPERATOR) && (LA636_59 <= MOD_OPERATOR)) || ((LA636_59 >= MULT_OPERATOR) && (LA636_59 <= NULL_SAFE_EQUAL_OPERATOR)) || LA636_59 == PLUS_OPERATOR || ((LA636_59 >= SHIFT_LEFT_OPERATOR) && (LA636_59 <= SHIFT_RIGHT_OPERATOR))))
                            {
                                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        = 59;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == WEEK_SYMBOL))
                    {
                        {
                            int LA636_60 = LA(2);
                            if ( (LA636_60 == OPEN_PAR_SYMBOL))
                            {
                                alt636=3;
                            }
                            else if ( (LA636_60 == EOF || ((LA636_60 >= ACCOUNT_SYMBOL) && (LA636_60 <= YEAR_SYMBOL)) || ((LA636_60 >= AND_SYMBOL) && (LA636_60 <= ASC_SYMBOL)) || LA636_60 == BETWEEN_SYMBOL || LA636_60 == COLLATE_SYMBOL || LA636_60 == CROSS_SYMBOL || ((LA636_60 >= DAY_HOUR_SYMBOL) && (LA636_60 <= DAY_SECOND_SYMBOL)) || LA636_60 == DESC_SYMBOL || LA636_60 == ELSE_SYMBOL || ((LA636_60 >= FOR_SYMBOL) && (LA636_60 <= FROM_SYMBOL)) || ((LA636_60 >= GROUP_SYMBOL) && (LA636_60 <= HAVING_SYMBOL)) || ((LA636_60 >= HOUR_MICROSECOND_SYMBOL) && (LA636_60 <= HOUR_SECOND_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA636_60 == LOCK_SYMBOL || ((LA636_60 >= MINUTE_MICROSECOND_SYMBOL) && (LA636_60 <= MINUTE_SECOND_SYMBOL)) || ((LA636_60 >= MOD_SYMBOL) && (LA636_60 <= NATURAL_SYMBOL)) || LA636_60 == NOT_SYMBOL || LA636_60 == ON_SYMBOL || ((LA636_60 >= ORDER_SYMBOL) && (LA636_60 <= OR_SYMBOL)) || 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 == 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)) || ((LA636_60 >= AS_SYMBOL) && (LA636_60 <= AT_TEXT_SUFFIX)) || ((LA636_60 >= BACK_TICK_QUOTED_ID) && (LA636_60 <= BITWISE_AND_OPERATOR)) || ((LA636_60 >= BITWISE_OR_OPERATOR) && (LA636_60 <= BITWISE_XOR_OPERATOR)) || ((LA636_60 >= CLOSE_CURLY_SYMBOL) && (LA636_60 <= CLOSE_PAR_SYMBOL)) || ((LA636_60 >= COMMA_SYMBOL) && (LA636_60 <= CONCAT_PIPES_SYMBOL)) || ((LA636_60 >= DIV_OPERATOR) && (LA636_60 <= DIV_SYMBOL)) || LA636_60 == DOT_SYMBOL || LA636_60 == DOUBLE_QUOTED_TEXT || LA636_60 == EQUAL_OPERATOR || ((LA636_60 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_60 <= GREATER_THAN_OPERATOR)) || ((LA636_60 >= HEX_NUMBER) && (LA636_60 <= IDENTIFIER)) || LA636_60 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA636_60 >= LESS_OR_EQUAL_OPERATOR) && (LA636_60 <= LESS_THAN_OPERATOR)) || LA636_60 == LOGICAL_AND_OPERATOR || LA636_60 == LOGICAL_OR_OPERATOR || ((LA636_60 >= MINUS_OPERATOR) && (LA636_60 <= MOD_OPERATOR)) || ((LA636_60 >= MULT_OPERATOR) && (LA636_60 <= NULL_SAFE_EQUAL_OPERATOR)) || LA636_60 == PLUS_OPERATOR || ((LA636_60 >= SHIFT_LEFT_OPERATOR) && (LA636_60 <= SHIFT_RIGHT_OPERATOR))))
                            {
                                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        = 60;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == WEIGHT_STRING_SYMBOL))
                    {
                        {
                            int LA636_61 = LA(2);
                            if ( (LA636_61 == OPEN_PAR_SYMBOL))
                            {
                                alt636=3;
                            }
                            else if ( (LA636_61 == EOF || ((LA636_61 >= ACCOUNT_SYMBOL) && (LA636_61 <= YEAR_SYMBOL)) || ((LA636_61 >= AND_SYMBOL) && (LA636_61 <= ASC_SYMBOL)) || LA636_61 == BETWEEN_SYMBOL || LA636_61 == COLLATE_SYMBOL || LA636_61 == CROSS_SYMBOL || ((LA636_61 >= DAY_HOUR_SYMBOL) && (LA636_61 <= DAY_SECOND_SYMBOL)) || LA636_61 == DESC_SYMBOL || LA636_61 == ELSE_SYMBOL || ((LA636_61 >= FOR_SYMBOL) && (LA636_61 <= FROM_SYMBOL)) || ((LA636_61 >= GROUP_SYMBOL) && (LA636_61 <= HAVING_SYMBOL)) || ((LA636_61 >= HOUR_MICROSECOND_SYMBOL) && (LA636_61 <= HOUR_SECOND_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA636_61 == LOCK_SYMBOL || ((LA636_61 >= MINUTE_MICROSECOND_SYMBOL) && (LA636_61 <= MINUTE_SECOND_SYMBOL)) || ((LA636_61 >= MOD_SYMBOL) && (LA636_61 <= NATURAL_SYMBOL)) || LA636_61 == NOT_SYMBOL || LA636_61 == ON_SYMBOL || ((LA636_61 >= ORDER_SYMBOL) && (LA636_61 <= OR_SYMBOL)) || 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 == 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)) || ((LA636_61 >= AS_SYMBOL) && (LA636_61 <= AT_TEXT_SUFFIX)) || ((LA636_61 >= BACK_TICK_QUOTED_ID) && (LA636_61 <= BITWISE_AND_OPERATOR)) || ((LA636_61 >= BITWISE_OR_OPERATOR) && (LA636_61 <= BITWISE_XOR_OPERATOR)) || ((LA636_61 >= CLOSE_CURLY_SYMBOL) && (LA636_61 <= CLOSE_PAR_SYMBOL)) || ((LA636_61 >= COMMA_SYMBOL) && (LA636_61 <= CONCAT_PIPES_SYMBOL)) || ((LA636_61 >= DIV_OPERATOR) && (LA636_61 <= DIV_SYMBOL)) || LA636_61 == DOT_SYMBOL || LA636_61 == DOUBLE_QUOTED_TEXT || LA636_61 == EQUAL_OPERATOR || ((LA636_61 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_61 <= GREATER_THAN_OPERATOR)) || ((LA636_61 >= HEX_NUMBER) && (LA636_61 <= IDENTIFIER)) || LA636_61 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA636_61 >= LESS_OR_EQUAL_OPERATOR) && (LA636_61 <= LESS_THAN_OPERATOR)) || LA636_61 == LOGICAL_AND_OPERATOR || LA636_61 == LOGICAL_OR_OPERATOR || ((LA636_61 >= MINUS_OPERATOR) && (LA636_61 <= MOD_OPERATOR)) || ((LA636_61 >= MULT_OPERATOR) && (LA636_61 <= NULL_SAFE_EQUAL_OPERATOR)) || LA636_61 == PLUS_OPERATOR || ((LA636_61 >= SHIFT_LEFT_OPERATOR) && (LA636_61 <= SHIFT_RIGHT_OPERATOR))))
                            {
                                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        = 61;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == GEOMETRYCOLLECTION_SYMBOL))
                    {
                        {
                            int LA636_62 = LA(2);
                            if ( (LA636_62 == OPEN_PAR_SYMBOL))
                            {
                                alt636=3;
                            }
                            else if ( (LA636_62 == EOF || ((LA636_62 >= ACCOUNT_SYMBOL) && (LA636_62 <= YEAR_SYMBOL)) || ((LA636_62 >= AND_SYMBOL) && (LA636_62 <= ASC_SYMBOL)) || LA636_62 == BETWEEN_SYMBOL || LA636_62 == COLLATE_SYMBOL || LA636_62 == CROSS_SYMBOL || ((LA636_62 >= DAY_HOUR_SYMBOL) && (LA636_62 <= DAY_SECOND_SYMBOL)) || LA636_62 == DESC_SYMBOL || LA636_62 == ELSE_SYMBOL || ((LA636_62 >= FOR_SYMBOL) && (LA636_62 <= FROM_SYMBOL)) || ((LA636_62 >= GROUP_SYMBOL) && (LA636_62 <= HAVING_SYMBOL)) || ((LA636_62 >= HOUR_MICROSECOND_SYMBOL) && (LA636_62 <= HOUR_SECOND_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA636_62 == LOCK_SYMBOL || ((LA636_62 >= MINUTE_MICROSECOND_SYMBOL) && (LA636_62 <= MINUTE_SECOND_SYMBOL)) || ((LA636_62 >= MOD_SYMBOL) && (LA636_62 <= NATURAL_SYMBOL)) || LA636_62 == NOT_SYMBOL || LA636_62 == ON_SYMBOL || ((LA636_62 >= ORDER_SYMBOL) && (LA636_62 <= OR_SYMBOL)) || 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 == 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)) || ((LA636_62 >= AS_SYMBOL) && (LA636_62 <= AT_TEXT_SUFFIX)) || ((LA636_62 >= BACK_TICK_QUOTED_ID) && (LA636_62 <= BITWISE_AND_OPERATOR)) || ((LA636_62 >= BITWISE_OR_OPERATOR) && (LA636_62 <= BITWISE_XOR_OPERATOR)) || ((LA636_62 >= CLOSE_CURLY_SYMBOL) && (LA636_62 <= CLOSE_PAR_SYMBOL)) || ((LA636_62 >= COMMA_SYMBOL) && (LA636_62 <= CONCAT_PIPES_SYMBOL)) || ((LA636_62 >= DIV_OPERATOR) && (LA636_62 <= DIV_SYMBOL)) || LA636_62 == DOT_SYMBOL || LA636_62 == DOUBLE_QUOTED_TEXT || LA636_62 == EQUAL_OPERATOR || ((LA636_62 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_62 <= GREATER_THAN_OPERATOR)) || ((LA636_62 >= HEX_NUMBER) && (LA636_62 <= IDENTIFIER)) || LA636_62 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA636_62 >= LESS_OR_EQUAL_OPERATOR) && (LA636_62 <= LESS_THAN_OPERATOR)) || LA636_62 == LOGICAL_AND_OPERATOR || LA636_62 == LOGICAL_OR_OPERATOR || ((LA636_62 >= MINUS_OPERATOR) && (LA636_62 <= MOD_OPERATOR)) || ((LA636_62 >= MULT_OPERATOR) && (LA636_62 <= NULL_SAFE_EQUAL_OPERATOR)) || LA636_62 == PLUS_OPERATOR || ((LA636_62 >= SHIFT_LEFT_OPERATOR) && (LA636_62 <= SHIFT_RIGHT_OPERATOR))))
                            {
                                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        = 62;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == LINESTRING_SYMBOL))
                    {
                        {
                            int LA636_63 = LA(2);
                            if ( (LA636_63 == OPEN_PAR_SYMBOL))
                            {
                                alt636=3;
                            }
                            else if ( (LA636_63 == EOF || ((LA636_63 >= ACCOUNT_SYMBOL) && (LA636_63 <= YEAR_SYMBOL)) || ((LA636_63 >= AND_SYMBOL) && (LA636_63 <= ASC_SYMBOL)) || LA636_63 == BETWEEN_SYMBOL || LA636_63 == COLLATE_SYMBOL || LA636_63 == CROSS_SYMBOL || ((LA636_63 >= DAY_HOUR_SYMBOL) && (LA636_63 <= DAY_SECOND_SYMBOL)) || LA636_63 == DESC_SYMBOL || LA636_63 == ELSE_SYMBOL || ((LA636_63 >= FOR_SYMBOL) && (LA636_63 <= FROM_SYMBOL)) || ((LA636_63 >= GROUP_SYMBOL) && (LA636_63 <= HAVING_SYMBOL)) || ((LA636_63 >= HOUR_MICROSECOND_SYMBOL) && (LA636_63 <= HOUR_SECOND_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA636_63 == LOCK_SYMBOL || ((LA636_63 >= MINUTE_MICROSECOND_SYMBOL) && (LA636_63 <= MINUTE_SECOND_SYMBOL)) || ((LA636_63 >= MOD_SYMBOL) && (LA636_63 <= NATURAL_SYMBOL)) || LA636_63 == NOT_SYMBOL || LA636_63 == ON_SYMBOL || ((LA636_63 >= ORDER_SYMBOL) && (LA636_63 <= OR_SYMBOL)) || 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 == 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)) || ((LA636_63 >= AS_SYMBOL) && (LA636_63 <= AT_TEXT_SUFFIX)) || ((LA636_63 >= BACK_TICK_QUOTED_ID) && (LA636_63 <= BITWISE_AND_OPERATOR)) || ((LA636_63 >= BITWISE_OR_OPERATOR) && (LA636_63 <= BITWISE_XOR_OPERATOR)) || ((LA636_63 >= CLOSE_CURLY_SYMBOL) && (LA636_63 <= CLOSE_PAR_SYMBOL)) || ((LA636_63 >= COMMA_SYMBOL) && (LA636_63 <= CONCAT_PIPES_SYMBOL)) || ((LA636_63 >= DIV_OPERATOR) && (LA636_63 <= DIV_SYMBOL)) || LA636_63 == DOT_SYMBOL || LA636_63 == DOUBLE_QUOTED_TEXT || LA636_63 == EQUAL_OPERATOR || ((LA636_63 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_63 <= GREATER_THAN_OPERATOR)) || ((LA636_63 >= HEX_NUMBER) && (LA636_63 <= IDENTIFIER)) || LA636_63 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA636_63 >= LESS_OR_EQUAL_OPERATOR) && (LA636_63 <= LESS_THAN_OPERATOR)) || LA636_63 == LOGICAL_AND_OPERATOR || LA636_63 == LOGICAL_OR_OPERATOR || ((LA636_63 >= MINUS_OPERATOR) && (LA636_63 <= MOD_OPERATOR)) || ((LA636_63 >= MULT_OPERATOR) && (LA636_63 <= NULL_SAFE_EQUAL_OPERATOR)) || LA636_63 == PLUS_OPERATOR || ((LA636_63 >= SHIFT_LEFT_OPERATOR) && (LA636_63 <= SHIFT_RIGHT_OPERATOR))))
                            {
                                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        = 63;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == MULTILINESTRING_SYMBOL))
                    {
                        {
                            int LA636_64 = LA(2);
                            if ( (LA636_64 == OPEN_PAR_SYMBOL))
                            {
                                alt636=3;
                            }
                            else if ( (LA636_64 == EOF || ((LA636_64 >= ACCOUNT_SYMBOL) && (LA636_64 <= YEAR_SYMBOL)) || ((LA636_64 >= AND_SYMBOL) && (LA636_64 <= ASC_SYMBOL)) || LA636_64 == BETWEEN_SYMBOL || LA636_64 == COLLATE_SYMBOL || LA636_64 == CROSS_SYMBOL || ((LA636_64 >= DAY_HOUR_SYMBOL) && (LA636_64 <= DAY_SECOND_SYMBOL)) || LA636_64 == DESC_SYMBOL || LA636_64 == ELSE_SYMBOL || ((LA636_64 >= FOR_SYMBOL) && (LA636_64 <= FROM_SYMBOL)) || ((LA636_64 >= GROUP_SYMBOL) && (LA636_64 <= HAVING_SYMBOL)) || ((LA636_64 >= HOUR_MICROSECOND_SYMBOL) && (LA636_64 <= HOUR_SECOND_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA636_64 == LOCK_SYMBOL || ((LA636_64 >= MINUTE_MICROSECOND_SYMBOL) && (LA636_64 <= MINUTE_SECOND_SYMBOL)) || ((LA636_64 >= MOD_SYMBOL) && (LA636_64 <= NATURAL_SYMBOL)) || LA636_64 == NOT_SYMBOL || LA636_64 == ON_SYMBOL || ((LA636_64 >= ORDER_SYMBOL) && (LA636_64 <= OR_SYMBOL)) || 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 == 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)) || ((LA636_64 >= AS_SYMBOL) && (LA636_64 <= AT_TEXT_SUFFIX)) || ((LA636_64 >= BACK_TICK_QUOTED_ID) && (LA636_64 <= BITWISE_AND_OPERATOR)) || ((LA636_64 >= BITWISE_OR_OPERATOR) && (LA636_64 <= BITWISE_XOR_OPERATOR)) || ((LA636_64 >= CLOSE_CURLY_SYMBOL) && (LA636_64 <= CLOSE_PAR_SYMBOL)) || ((LA636_64 >= COMMA_SYMBOL) && (LA636_64 <= CONCAT_PIPES_SYMBOL)) || ((LA636_64 >= DIV_OPERATOR) && (LA636_64 <= DIV_SYMBOL)) || LA636_64 == DOT_SYMBOL || LA636_64 == DOUBLE_QUOTED_TEXT || LA636_64 == EQUAL_OPERATOR || ((LA636_64 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_64 <= GREATER_THAN_OPERATOR)) || ((LA636_64 >= HEX_NUMBER) && (LA636_64 <= IDENTIFIER)) || LA636_64 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA636_64 >= LESS_OR_EQUAL_OPERATOR) && (LA636_64 <= LESS_THAN_OPERATOR)) || LA636_64 == LOGICAL_AND_OPERATOR || LA636_64 == LOGICAL_OR_OPERATOR || ((LA636_64 >= MINUS_OPERATOR) && (LA636_64 <= MOD_OPERATOR)) || ((LA636_64 >= MULT_OPERATOR) && (LA636_64 <= NULL_SAFE_EQUAL_OPERATOR)) || LA636_64 == PLUS_OPERATOR || ((LA636_64 >= SHIFT_LEFT_OPERATOR) && (LA636_64 <= SHIFT_RIGHT_OPERATOR))))
                            {
                                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        = 64;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == MULTIPOINT_SYMBOL))
                    {
                        {
                            int LA636_65 = LA(2);
                            if ( (LA636_65 == OPEN_PAR_SYMBOL))
                            {
                                alt636=3;
                            }
                            else if ( (LA636_65 == EOF || ((LA636_65 >= ACCOUNT_SYMBOL) && (LA636_65 <= YEAR_SYMBOL)) || ((LA636_65 >= AND_SYMBOL) && (LA636_65 <= ASC_SYMBOL)) || LA636_65 == BETWEEN_SYMBOL || LA636_65 == COLLATE_SYMBOL || LA636_65 == CROSS_SYMBOL || ((LA636_65 >= DAY_HOUR_SYMBOL) && (LA636_65 <= DAY_SECOND_SYMBOL)) || LA636_65 == DESC_SYMBOL || LA636_65 == ELSE_SYMBOL || ((LA636_65 >= FOR_SYMBOL) && (LA636_65 <= FROM_SYMBOL)) || ((LA636_65 >= GROUP_SYMBOL) && (LA636_65 <= HAVING_SYMBOL)) || ((LA636_65 >= HOUR_MICROSECOND_SYMBOL) && (LA636_65 <= HOUR_SECOND_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA636_65 == LOCK_SYMBOL || ((LA636_65 >= MINUTE_MICROSECOND_SYMBOL) && (LA636_65 <= MINUTE_SECOND_SYMBOL)) || ((LA636_65 >= MOD_SYMBOL) && (LA636_65 <= NATURAL_SYMBOL)) || LA636_65 == NOT_SYMBOL || LA636_65 == ON_SYMBOL || ((LA636_65 >= ORDER_SYMBOL) && (LA636_65 <= OR_SYMBOL)) || 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 == 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)) || ((LA636_65 >= AS_SYMBOL) && (LA636_65 <= AT_TEXT_SUFFIX)) || ((LA636_65 >= BACK_TICK_QUOTED_ID) && (LA636_65 <= BITWISE_AND_OPERATOR)) || ((LA636_65 >= BITWISE_OR_OPERATOR) && (LA636_65 <= BITWISE_XOR_OPERATOR)) || ((LA636_65 >= CLOSE_CURLY_SYMBOL) && (LA636_65 <= CLOSE_PAR_SYMBOL)) || ((LA636_65 >= COMMA_SYMBOL) && (LA636_65 <= CONCAT_PIPES_SYMBOL)) || ((LA636_65 >= DIV_OPERATOR) && (LA636_65 <= DIV_SYMBOL)) || LA636_65 == DOT_SYMBOL || LA636_65 == DOUBLE_QUOTED_TEXT || LA636_65 == EQUAL_OPERATOR || ((LA636_65 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_65 <= GREATER_THAN_OPERATOR)) || ((LA636_65 >= HEX_NUMBER) && (LA636_65 <= IDENTIFIER)) || LA636_65 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA636_65 >= LESS_OR_EQUAL_OPERATOR) && (LA636_65 <= LESS_THAN_OPERATOR)) || LA636_65 == LOGICAL_AND_OPERATOR || LA636_65 == LOGICAL_OR_OPERATOR || ((LA636_65 >= MINUS_OPERATOR) && (LA636_65 <= MOD_OPERATOR)) || ((LA636_65 >= MULT_OPERATOR) && (LA636_65 <= NULL_SAFE_EQUAL_OPERATOR)) || LA636_65 == PLUS_OPERATOR || ((LA636_65 >= SHIFT_LEFT_OPERATOR) && (LA636_65 <= SHIFT_RIGHT_OPERATOR))))
                            {
                                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        = 65;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == MULTIPOLYGON_SYMBOL))
                    {
                        {
                            int LA636_66 = LA(2);
                            if ( (LA636_66 == OPEN_PAR_SYMBOL))
                            {
                                alt636=3;
                            }
                            else if ( (LA636_66 == EOF || ((LA636_66 >= ACCOUNT_SYMBOL) && (LA636_66 <= YEAR_SYMBOL)) || ((LA636_66 >= AND_SYMBOL) && (LA636_66 <= ASC_SYMBOL)) || LA636_66 == BETWEEN_SYMBOL || LA636_66 == COLLATE_SYMBOL || LA636_66 == CROSS_SYMBOL || ((LA636_66 >= DAY_HOUR_SYMBOL) && (LA636_66 <= DAY_SECOND_SYMBOL)) || LA636_66 == DESC_SYMBOL || LA636_66 == ELSE_SYMBOL || ((LA636_66 >= FOR_SYMBOL) && (LA636_66 <= FROM_SYMBOL)) || ((LA636_66 >= GROUP_SYMBOL) && (LA636_66 <= HAVING_SYMBOL)) || ((LA636_66 >= HOUR_MICROSECOND_SYMBOL) && (LA636_66 <= HOUR_SECOND_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA636_66 == LOCK_SYMBOL || ((LA636_66 >= MINUTE_MICROSECOND_SYMBOL) && (LA636_66 <= MINUTE_SECOND_SYMBOL)) || ((LA636_66 >= MOD_SYMBOL) && (LA636_66 <= NATURAL_SYMBOL)) || LA636_66 == NOT_SYMBOL || LA636_66 == ON_SYMBOL || ((LA636_66 >= ORDER_SYMBOL) && (LA636_66 <= OR_SYMBOL)) || 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 == 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)) || ((LA636_66 >= AS_SYMBOL) && (LA636_66 <= AT_TEXT_SUFFIX)) || ((LA636_66 >= BACK_TICK_QUOTED_ID) && (LA636_66 <= BITWISE_AND_OPERATOR)) || ((LA636_66 >= BITWISE_OR_OPERATOR) && (LA636_66 <= BITWISE_XOR_OPERATOR)) || ((LA636_66 >= CLOSE_CURLY_SYMBOL) && (LA636_66 <= CLOSE_PAR_SYMBOL)) || ((LA636_66 >= COMMA_SYMBOL) && (LA636_66 <= CONCAT_PIPES_SYMBOL)) || ((LA636_66 >= DIV_OPERATOR) && (LA636_66 <= DIV_SYMBOL)) || LA636_66 == DOT_SYMBOL || LA636_66 == DOUBLE_QUOTED_TEXT || LA636_66 == EQUAL_OPERATOR || ((LA636_66 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_66 <= GREATER_THAN_OPERATOR)) || ((LA636_66 >= HEX_NUMBER) && (LA636_66 <= IDENTIFIER)) || LA636_66 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA636_66 >= LESS_OR_EQUAL_OPERATOR) && (LA636_66 <= LESS_THAN_OPERATOR)) || LA636_66 == LOGICAL_AND_OPERATOR || LA636_66 == LOGICAL_OR_OPERATOR || ((LA636_66 >= MINUS_OPERATOR) && (LA636_66 <= MOD_OPERATOR)) || ((LA636_66 >= MULT_OPERATOR) && (LA636_66 <= NULL_SAFE_EQUAL_OPERATOR)) || LA636_66 == PLUS_OPERATOR || ((LA636_66 >= SHIFT_LEFT_OPERATOR) && (LA636_66 <= SHIFT_RIGHT_OPERATOR))))
                            {
                                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        = 66;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == POINT_SYMBOL))
                    {
                        {
                            int LA636_67 = LA(2);
                            if ( (LA636_67 == OPEN_PAR_SYMBOL))
                            {
                                alt636=3;
                            }
                            else if ( (LA636_67 == EOF || ((LA636_67 >= ACCOUNT_SYMBOL) && (LA636_67 <= YEAR_SYMBOL)) || ((LA636_67 >= AND_SYMBOL) && (LA636_67 <= ASC_SYMBOL)) || LA636_67 == BETWEEN_SYMBOL || LA636_67 == COLLATE_SYMBOL || LA636_67 == CROSS_SYMBOL || ((LA636_67 >= DAY_HOUR_SYMBOL) && (LA636_67 <= DAY_SECOND_SYMBOL)) || LA636_67 == DESC_SYMBOL || LA636_67 == ELSE_SYMBOL || ((LA636_67 >= FOR_SYMBOL) && (LA636_67 <= FROM_SYMBOL)) || ((LA636_67 >= GROUP_SYMBOL) && (LA636_67 <= HAVING_SYMBOL)) || ((LA636_67 >= HOUR_MICROSECOND_SYMBOL) && (LA636_67 <= HOUR_SECOND_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA636_67 == LOCK_SYMBOL || ((LA636_67 >= MINUTE_MICROSECOND_SYMBOL) && (LA636_67 <= MINUTE_SECOND_SYMBOL)) || ((LA636_67 >= MOD_SYMBOL) && (LA636_67 <= NATURAL_SYMBOL)) || LA636_67 == NOT_SYMBOL || LA636_67 == ON_SYMBOL || ((LA636_67 >= ORDER_SYMBOL) && (LA636_67 <= OR_SYMBOL)) || 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 == 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)) || ((LA636_67 >= AS_SYMBOL) && (LA636_67 <= AT_TEXT_SUFFIX)) || ((LA636_67 >= BACK_TICK_QUOTED_ID) && (LA636_67 <= BITWISE_AND_OPERATOR)) || ((LA636_67 >= BITWISE_OR_OPERATOR) && (LA636_67 <= BITWISE_XOR_OPERATOR)) || ((LA636_67 >= CLOSE_CURLY_SYMBOL) && (LA636_67 <= CLOSE_PAR_SYMBOL)) || ((LA636_67 >= COMMA_SYMBOL) && (LA636_67 <= CONCAT_PIPES_SYMBOL)) || ((LA636_67 >= DIV_OPERATOR) && (LA636_67 <= DIV_SYMBOL)) || LA636_67 == DOT_SYMBOL || LA636_67 == DOUBLE_QUOTED_TEXT || LA636_67 == EQUAL_OPERATOR || ((LA636_67 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_67 <= GREATER_THAN_OPERATOR)) || ((LA636_67 >= HEX_NUMBER) && (LA636_67 <= IDENTIFIER)) || LA636_67 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA636_67 >= LESS_OR_EQUAL_OPERATOR) && (LA636_67 <= LESS_THAN_OPERATOR)) || LA636_67 == LOGICAL_AND_OPERATOR || LA636_67 == LOGICAL_OR_OPERATOR || ((LA636_67 >= MINUS_OPERATOR) && (LA636_67 <= MOD_OPERATOR)) || ((LA636_67 >= MULT_OPERATOR) && (LA636_67 <= NULL_SAFE_EQUAL_OPERATOR)) || LA636_67 == PLUS_OPERATOR || ((LA636_67 >= SHIFT_LEFT_OPERATOR) && (LA636_67 <= SHIFT_RIGHT_OPERATOR))))
                            {
                                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        = 67;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == POLYGON_SYMBOL))
                    {
                        {
                            int LA636_68 = LA(2);
                            if ( (LA636_68 == OPEN_PAR_SYMBOL))
                            {
                                alt636=3;
                            }
                            else if ( (LA636_68 == EOF || ((LA636_68 >= ACCOUNT_SYMBOL) && (LA636_68 <= YEAR_SYMBOL)) || ((LA636_68 >= AND_SYMBOL) && (LA636_68 <= ASC_SYMBOL)) || LA636_68 == BETWEEN_SYMBOL || LA636_68 == COLLATE_SYMBOL || LA636_68 == CROSS_SYMBOL || ((LA636_68 >= DAY_HOUR_SYMBOL) && (LA636_68 <= DAY_SECOND_SYMBOL)) || LA636_68 == DESC_SYMBOL || LA636_68 == ELSE_SYMBOL || ((LA636_68 >= FOR_SYMBOL) && (LA636_68 <= FROM_SYMBOL)) || ((LA636_68 >= GROUP_SYMBOL) && (LA636_68 <= HAVING_SYMBOL)) || ((LA636_68 >= HOUR_MICROSECOND_SYMBOL) && (LA636_68 <= HOUR_SECOND_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA636_68 == LOCK_SYMBOL || ((LA636_68 >= MINUTE_MICROSECOND_SYMBOL) && (LA636_68 <= MINUTE_SECOND_SYMBOL)) || ((LA636_68 >= MOD_SYMBOL) && (LA636_68 <= NATURAL_SYMBOL)) || LA636_68 == NOT_SYMBOL || LA636_68 == ON_SYMBOL || ((LA636_68 >= ORDER_SYMBOL) && (LA636_68 <= OR_SYMBOL)) || 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 == 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)) || ((LA636_68 >= AS_SYMBOL) && (LA636_68 <= AT_TEXT_SUFFIX)) || ((LA636_68 >= BACK_TICK_QUOTED_ID) && (LA636_68 <= BITWISE_AND_OPERATOR)) || ((LA636_68 >= BITWISE_OR_OPERATOR) && (LA636_68 <= BITWISE_XOR_OPERATOR)) || ((LA636_68 >= CLOSE_CURLY_SYMBOL) && (LA636_68 <= CLOSE_PAR_SYMBOL)) || ((LA636_68 >= COMMA_SYMBOL) && (LA636_68 <= CONCAT_PIPES_SYMBOL)) || ((LA636_68 >= DIV_OPERATOR) && (LA636_68 <= DIV_SYMBOL)) || LA636_68 == DOT_SYMBOL || LA636_68 == DOUBLE_QUOTED_TEXT || LA636_68 == EQUAL_OPERATOR || ((LA636_68 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_68 <= GREATER_THAN_OPERATOR)) || ((LA636_68 >= HEX_NUMBER) && (LA636_68 <= IDENTIFIER)) || LA636_68 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA636_68 >= LESS_OR_EQUAL_OPERATOR) && (LA636_68 <= LESS_THAN_OPERATOR)) || LA636_68 == LOGICAL_AND_OPERATOR || LA636_68 == LOGICAL_OR_OPERATOR || ((LA636_68 >= MINUS_OPERATOR) && (LA636_68 <= MOD_OPERATOR)) || ((LA636_68 >= MULT_OPERATOR) && (LA636_68 <= NULL_SAFE_EQUAL_OPERATOR)) || LA636_68 == PLUS_OPERATOR || ((LA636_68 >= SHIFT_LEFT_OPERATOR) && (LA636_68 <= SHIFT_RIGHT_OPERATOR))))
                            {
                                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        = 68;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == CONTAINS_SYMBOL))
                    {
                        {
                            int LA636_69 = LA(2);
                            if ( (LA636_69 == OPEN_PAR_SYMBOL))
                            {
                                alt636=3;
                            }
                            else if ( (LA636_69 == EOF || ((LA636_69 >= ACCOUNT_SYMBOL) && (LA636_69 <= YEAR_SYMBOL)) || ((LA636_69 >= AND_SYMBOL) && (LA636_69 <= ASC_SYMBOL)) || LA636_69 == BETWEEN_SYMBOL || LA636_69 == COLLATE_SYMBOL || LA636_69 == CROSS_SYMBOL || ((LA636_69 >= DAY_HOUR_SYMBOL) && (LA636_69 <= DAY_SECOND_SYMBOL)) || LA636_69 == DESC_SYMBOL || LA636_69 == ELSE_SYMBOL || ((LA636_69 >= FOR_SYMBOL) && (LA636_69 <= FROM_SYMBOL)) || ((LA636_69 >= GROUP_SYMBOL) && (LA636_69 <= HAVING_SYMBOL)) || ((LA636_69 >= HOUR_MICROSECOND_SYMBOL) && (LA636_69 <= HOUR_SECOND_SYMBOL)) || LA636_69 == INNER_SYMBOL || LA636_69 == INTO_SYMBOL || LA636_69 == IN_SYMBOL || LA636_69 == IS_SYMBOL || ((LA636_69 >= JOIN_SYMBOL) && (LA636_69 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_69 >= LEFT_SYMBOL) && (LA636_69 <= LIMIT_SYMBOL)) || LA636_69 == LOCK_SYMBOL || ((LA636_69 >= MINUTE_MICROSECOND_SYMBOL) && (LA636_69 <= MINUTE_SECOND_SYMBOL)) || ((LA636_69 >= MOD_SYMBOL) && (LA636_69 <= NATURAL_SYMBOL)) || LA636_69 == NOT_SYMBOL || LA636_69 == ON_SYMBOL || ((LA636_69 >= ORDER_SYMBOL) && (LA636_69 <= OR_SYMBOL)) || LA636_69 == PROCEDURE_SYMBOL || LA636_69 == REGEXP_SYMBOL || LA636_69 == RENAME_SYMBOL || LA636_69 == RIGHT_SYMBOL || LA636_69 == SECOND_MICROSECOND_SYMBOL || LA636_69 == SEMICOLON_SYMBOL || LA636_69 == SEPARATOR_SYMBOL || LA636_69 == SET_SYMBOL || LA636_69 == SINGLE_QUOTED_TEXT || LA636_69 == STRAIGHT_JOIN_SYMBOL || LA636_69 == THEN_SYMBOL || LA636_69 == UNION_SYMBOL || LA636_69 == USING_SYMBOL || ((LA636_69 >= WHEN_SYMBOL) && (LA636_69 <= WHERE_SYMBOL)) || LA636_69 == WITH_SYMBOL || ((LA636_69 >= XOR_SYMBOL) && (LA636_69 <= YEAR_MONTH_SYMBOL)) || ((LA636_69 >= AS_SYMBOL) && (LA636_69 <= AT_TEXT_SUFFIX)) || ((LA636_69 >= BACK_TICK_QUOTED_ID) && (LA636_69 <= BITWISE_AND_OPERATOR)) || ((LA636_69 >= BITWISE_OR_OPERATOR) && (LA636_69 <= BITWISE_XOR_OPERATOR)) || ((LA636_69 >= CLOSE_CURLY_SYMBOL) && (LA636_69 <= CLOSE_PAR_SYMBOL)) || ((LA636_69 >= COMMA_SYMBOL) && (LA636_69 <= CONCAT_PIPES_SYMBOL)) || ((LA636_69 >= DIV_OPERATOR) && (LA636_69 <= DIV_SYMBOL)) || LA636_69 == DOT_SYMBOL || LA636_69 == DOUBLE_QUOTED_TEXT || LA636_69 == EQUAL_OPERATOR || ((LA636_69 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_69 <= GREATER_THAN_OPERATOR)) || ((LA636_69 >= HEX_NUMBER) && (LA636_69 <= IDENTIFIER)) || LA636_69 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA636_69 >= LESS_OR_EQUAL_OPERATOR) && (LA636_69 <= LESS_THAN_OPERATOR)) || LA636_69 == LOGICAL_AND_OPERATOR || LA636_69 == LOGICAL_OR_OPERATOR || ((LA636_69 >= MINUS_OPERATOR) && (LA636_69 <= MOD_OPERATOR)) || ((LA636_69 >= MULT_OPERATOR) && (LA636_69 <= NULL_SAFE_EQUAL_OPERATOR)) || LA636_69 == PLUS_OPERATOR || ((LA636_69 >= SHIFT_LEFT_OPERATOR) && (LA636_69 <= SHIFT_RIGHT_OPERATOR))))
                            {
                                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        = 69;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == AVG_SYMBOL))
                    {
                        {
                            int LA636_70 = LA(2);
                            if ( (LA636_70 == OPEN_PAR_SYMBOL))
                            {
                                alt636=3;
                            }
                            else if ( (LA636_70 == EOF || ((LA636_70 >= ACCOUNT_SYMBOL) && (LA636_70 <= YEAR_SYMBOL)) || ((LA636_70 >= AND_SYMBOL) && (LA636_70 <= ASC_SYMBOL)) || LA636_70 == BETWEEN_SYMBOL || LA636_70 == COLLATE_SYMBOL || LA636_70 == CROSS_SYMBOL || ((LA636_70 >= DAY_HOUR_SYMBOL) && (LA636_70 <= DAY_SECOND_SYMBOL)) || LA636_70 == DESC_SYMBOL || LA636_70 == ELSE_SYMBOL || ((LA636_70 >= FOR_SYMBOL) && (LA636_70 <= FROM_SYMBOL)) || ((LA636_70 >= GROUP_SYMBOL) && (LA636_70 <= HAVING_SYMBOL)) || ((LA636_70 >= HOUR_MICROSECOND_SYMBOL) && (LA636_70 <= HOUR_SECOND_SYMBOL)) || LA636_70 == INNER_SYMBOL || LA636_70 == INTO_SYMBOL || LA636_70 == IN_SYMBOL || LA636_70 == IS_SYMBOL || ((LA636_70 >= JOIN_SYMBOL) && (LA636_70 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_70 >= LEFT_SYMBOL) && (LA636_70 <= LIMIT_SYMBOL)) || LA636_70 == LOCK_SYMBOL || ((LA636_70 >= MINUTE_MICROSECOND_SYMBOL) && (LA636_70 <= MINUTE_SECOND_SYMBOL)) || ((LA636_70 >= MOD_SYMBOL) && (LA636_70 <= NATURAL_SYMBOL)) || LA636_70 == NOT_SYMBOL || LA636_70 == ON_SYMBOL || ((LA636_70 >= ORDER_SYMBOL) && (LA636_70 <= OR_SYMBOL)) || LA636_70 == PROCEDURE_SYMBOL || LA636_70 == REGEXP_SYMBOL || LA636_70 == RENAME_SYMBOL || LA636_70 == RIGHT_SYMBOL || LA636_70 == SECOND_MICROSECOND_SYMBOL || LA636_70 == SEMICOLON_SYMBOL || LA636_70 == SEPARATOR_SYMBOL || LA636_70 == SET_SYMBOL || LA636_70 == SINGLE_QUOTED_TEXT || LA636_70 == STRAIGHT_JOIN_SYMBOL || LA636_70 == THEN_SYMBOL || LA636_70 == UNION_SYMBOL || LA636_70 == USING_SYMBOL || ((LA636_70 >= WHEN_SYMBOL) && (LA636_70 <= WHERE_SYMBOL)) || LA636_70 == WITH_SYMBOL || ((LA636_70 >= XOR_SYMBOL) && (LA636_70 <= YEAR_MONTH_SYMBOL)) || ((LA636_70 >= AS_SYMBOL) && (LA636_70 <= AT_TEXT_SUFFIX)) || ((LA636_70 >= BACK_TICK_QUOTED_ID) && (LA636_70 <= BITWISE_AND_OPERATOR)) || ((LA636_70 >= BITWISE_OR_OPERATOR) && (LA636_70 <= BITWISE_XOR_OPERATOR)) || ((LA636_70 >= CLOSE_CURLY_SYMBOL) && (LA636_70 <= CLOSE_PAR_SYMBOL)) || ((LA636_70 >= COMMA_SYMBOL) && (LA636_70 <= CONCAT_PIPES_SYMBOL)) || ((LA636_70 >= DIV_OPERATOR) && (LA636_70 <= DIV_SYMBOL)) || LA636_70 == DOT_SYMBOL || LA636_70 == DOUBLE_QUOTED_TEXT || LA636_70 == EQUAL_OPERATOR || ((LA636_70 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_70 <= GREATER_THAN_OPERATOR)) || ((LA636_70 >= HEX_NUMBER) && (LA636_70 <= IDENTIFIER)) || LA636_70 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA636_70 >= LESS_OR_EQUAL_OPERATOR) && (LA636_70 <= LESS_THAN_OPERATOR)) || LA636_70 == LOGICAL_AND_OPERATOR || LA636_70 == LOGICAL_OR_OPERATOR || ((LA636_70 >= MINUS_OPERATOR) && (LA636_70 <= MOD_OPERATOR)) || ((LA636_70 >= MULT_OPERATOR) && (LA636_70 <= NULL_SAFE_EQUAL_OPERATOR)) || LA636_70 == PLUS_OPERATOR || ((LA636_70 >= SHIFT_LEFT_OPERATOR) && (LA636_70 <= SHIFT_RIGHT_OPERATOR))))
                            {
                                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        = 70;


                                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 <= 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 <= 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)) || LA636_0 == DOT_SYMBOL))
                    {
                        alt636=4;
                    }
                    else if ( (LA636_0 == ROW_SYMBOL))
                    {
                        {
                            int LA636_84 = LA(2);
                            if ( (LA636_84 == OPEN_PAR_SYMBOL))
                            {
                                alt636=9;
                            }
                            else if ( (LA636_84 == EOF || ((LA636_84 >= ACCOUNT_SYMBOL) && (LA636_84 <= YEAR_SYMBOL)) || ((LA636_84 >= AND_SYMBOL) && (LA636_84 <= ASC_SYMBOL)) || LA636_84 == BETWEEN_SYMBOL || LA636_84 == COLLATE_SYMBOL || LA636_84 == CROSS_SYMBOL || ((LA636_84 >= DAY_HOUR_SYMBOL) && (LA636_84 <= DAY_SECOND_SYMBOL)) || LA636_84 == DESC_SYMBOL || LA636_84 == ELSE_SYMBOL || ((LA636_84 >= FOR_SYMBOL) && (LA636_84 <= FROM_SYMBOL)) || ((LA636_84 >= GROUP_SYMBOL) && (LA636_84 <= HAVING_SYMBOL)) || ((LA636_84 >= HOUR_MICROSECOND_SYMBOL) && (LA636_84 <= HOUR_SECOND_SYMBOL)) || 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 <= LIMIT_SYMBOL)) || LA636_84 == LOCK_SYMBOL || ((LA636_84 >= MINUTE_MICROSECOND_SYMBOL) && (LA636_84 <= MINUTE_SECOND_SYMBOL)) || ((LA636_84 >= MOD_SYMBOL) && (LA636_84 <= NATURAL_SYMBOL)) || LA636_84 == NOT_SYMBOL || LA636_84 == ON_SYMBOL || ((LA636_84 >= ORDER_SYMBOL) && (LA636_84 <= OR_SYMBOL)) || 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 == 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)) || ((LA636_84 >= AS_SYMBOL) && (LA636_84 <= AT_TEXT_SUFFIX)) || ((LA636_84 >= BACK_TICK_QUOTED_ID) && (LA636_84 <= BITWISE_AND_OPERATOR)) || ((LA636_84 >= BITWISE_OR_OPERATOR) && (LA636_84 <= BITWISE_XOR_OPERATOR)) || ((LA636_84 >= CLOSE_CURLY_SYMBOL) && (LA636_84 <= CLOSE_PAR_SYMBOL)) || ((LA636_84 >= COMMA_SYMBOL) && (LA636_84 <= CONCAT_PIPES_SYMBOL)) || ((LA636_84 >= DIV_OPERATOR) && (LA636_84 <= DIV_SYMBOL)) || LA636_84 == DOT_SYMBOL || LA636_84 == DOUBLE_QUOTED_TEXT || LA636_84 == EQUAL_OPERATOR || ((LA636_84 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_84 <= GREATER_THAN_OPERATOR)) || ((LA636_84 >= HEX_NUMBER) && (LA636_84 <= IDENTIFIER)) || LA636_84 == JSON_UNQUOTED_SEPARATOR_SYMBOL || ((LA636_84 >= LESS_OR_EQUAL_OPERATOR) && (LA636_84 <= LESS_THAN_OPERATOR)) || LA636_84 == LOGICAL_AND_OPERATOR || LA636_84 == LOGICAL_OR_OPERATOR || ((LA636_84 >= MINUS_OPERATOR) && (LA636_84 <= MOD_OPERATOR)) || ((LA636_84 >= MULT_OPERATOR) && (LA636_84 <= NULL_SAFE_EQUAL_OPERATOR)) || LA636_84 == PLUS_OPERATOR || ((LA636_84 >= SHIFT_LEFT_OPERATOR) && (LA636_84 <= SHIFT_RIGHT_OPERATOR))))
                            {
                                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        = 84;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == PARAM_MARKER))
                    {
                        alt636=5;
                    }
                    else if ( (((LA636_0 >= AT_AT_SIGN_SYMBOL) && (LA636_0 <= AT_TEXT_SUFFIX))))
                    {
                        alt636=6;
                    }
                    else if ( (LA636_0 == EXISTS_SYMBOL))
                    {
                        alt636=7;
                    }
                    else if ( (LA636_0 == OPEN_PAR_SYMBOL))
                    {
                        alt636=8;
                    }
                    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:2290:3: literal
            	    {
            	        FOLLOWPUSH(FOLLOW_literal_in_primary11260);
            	        literal2032=literal(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, literal2032.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2291:5: function_call
            	    {
            	        FOLLOWPUSH(FOLLOW_function_call_in_primary11266);
            	        function_call2033=function_call(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, function_call2033.tree);

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:2292:5: runtime_function_call
            	    {
            	        FOLLOWPUSH(FOLLOW_runtime_function_call_in_primary11272);
            	        runtime_function_call2034=runtime_function_call(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, runtime_function_call2034.tree);

            	    }
            	    break;
            	case 4:
            	    // MySQL.g:2293:5: column_ref ( jsonOperator )?
            	    {
            	        FOLLOWPUSH(FOLLOW_column_ref_in_primary11279);
            	        column_ref2035=column_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, column_ref2035.tree);

            	        // MySQL.g:2293:16: ( jsonOperator )?
            	        {
            	            int alt634=2;
            	            switch ( LA(1) )
            	            {
            	                case JSON_SEPARATOR_SYMBOL:
            	                case JSON_UNQUOTED_SEPARATOR_SYMBOL:
            	                	{
            	                		alt634=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt634)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2293:16: jsonOperator
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_jsonOperator_in_primary11281);
            	        	        jsonOperator2036=jsonOperator(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleprimaryEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, jsonOperator2036.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 5:
            	    // MySQL.g:2294:5: PARAM_MARKER
            	    {
            	        PARAM_MARKER2037 = (pANTLR3_COMMON_TOKEN) MATCHT(PARAM_MARKER, &FOLLOW_PARAM_MARKER_in_primary11288);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        PARAM_MARKER2037_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARAM_MARKER2037));
            	        ADAPTOR->addChild(ADAPTOR, root_0, PARAM_MARKER2037_tree);
            	        }

            	    }
            	    break;
            	case 6:
            	    // MySQL.g:2295:5: variable
            	    {
            	        FOLLOWPUSH(FOLLOW_variable_in_primary11294);
            	        variable2038=variable(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, variable2038.tree);

            	    }
            	    break;
            	case 7:
            	    // MySQL.g:2296:5: EXISTS_SYMBOL subquery
            	    {
            	        EXISTS_SYMBOL2039 = (pANTLR3_COMMON_TOKEN) MATCHT(EXISTS_SYMBOL, &FOLLOW_EXISTS_SYMBOL_in_primary11300);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        EXISTS_SYMBOL2039_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EXISTS_SYMBOL2039));
            	        ADAPTOR->addChild(ADAPTOR, root_0, EXISTS_SYMBOL2039_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_subquery_in_primary11302);
            	        subquery2040=subquery(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, subquery2040.tree);

            	    }
            	    break;
            	case 8:
            	    // MySQL.g:2297:5: expression_with_nested_parentheses
            	    {
            	        FOLLOWPUSH(FOLLOW_expression_with_nested_parentheses_in_primary11308);
            	        expression_with_nested_parentheses2041=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_parentheses2041.tree);

            	    }
            	    break;
            	case 9:
            	    // MySQL.g:2298:5: ROW_SYMBOL OPEN_PAR_SYMBOL expression ( COMMA_SYMBOL expression )+ CLOSE_PAR_SYMBOL
            	    {
            	        ROW_SYMBOL2042 = (pANTLR3_COMMON_TOKEN) MATCHT(ROW_SYMBOL, &FOLLOW_ROW_SYMBOL_in_primary11314);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ROW_SYMBOL2042_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ROW_SYMBOL2042));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ROW_SYMBOL2042_tree);
            	        }

            	        OPEN_PAR_SYMBOL2043 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_primary11316);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OPEN_PAR_SYMBOL2043_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2043));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2043_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_expression_in_primary11318);
            	        expression2044=expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2044.tree);

            	        // MySQL.g:2298:43: ( COMMA_SYMBOL expression )+
            	        {
            	            int cnt635=0;

            	            for (;;)
            	            {
            	                int alt635=2;
            	        	switch ( LA(1) )
            	        	{
            	        	case COMMA_SYMBOL:
            	        		{
            	        			alt635=1;
            	        		}
            	        	    break;

            	        	}

            	        	switch (alt635)
            	        	{
            	        	    case 1:
            	        	        // MySQL.g:2298:44: COMMA_SYMBOL expression
            	        	        {
            	        	            COMMA_SYMBOL2045 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_primary11321);
            	        	            if  (HASEXCEPTION())
            	        	            {
            	        	                goto ruleprimaryEx;
            	        	            }
            	        	            if (HASFAILED())
            	        	            {
            	        	                return retval;
            	        	            }

            	        	            if ( BACKTRACKING==0 ) {
            	        	            COMMA_SYMBOL2045_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2045));
            	        	            ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2045_tree);
            	        	            }

            	        	            FOLLOWPUSH(FOLLOW_expression_in_primary11323);
            	        	            expression2046=expression(ctx);

            	        	            FOLLOWPOP();
            	        	            if  (HASEXCEPTION())
            	        	            {
            	        	                goto ruleprimaryEx;
            	        	            }
            	        	            if (HASFAILED())
            	        	            {
            	        	                return retval;
            	        	            }

            	        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2046.tree);

            	        	        }
            	        	        break;

            	        	    default:

            	        		if ( cnt635 >= 1 )
            	        		{
            	        		    goto loop635;
            	        		}
            	        		if (BACKTRACKING>0)
            	        		{
            	        		    FAILEDFLAG = ANTLR3_TRUE;
            	        		    return retval;
            	        		}

            	        		/* mismatchedSetEx()
            	        		 */
            	        		CONSTRUCTEX();
            	        		EXCEPTION->type = ANTLR3_EARLY_EXIT_EXCEPTION;
            	        		EXCEPTION->name = (void *)ANTLR3_EARLY_EXIT_NAME;


            	        		goto ruleprimaryEx;
            	        	}
            	        	cnt635++;
            	            }
            	            loop635: ;	/* Jump to here if this rule does not match */
            	        }

            	        CLOSE_PAR_SYMBOL2047 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_primary11327);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CLOSE_PAR_SYMBOL2047_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2047));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2047_tree);
            	        }

            	    }
            	    break;
            	case 10:
            	    // MySQL.g:2299:5: OPEN_CURLY_SYMBOL identifier expression CLOSE_CURLY_SYMBOL
            	    {
            	        OPEN_CURLY_SYMBOL2048 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_CURLY_SYMBOL, &FOLLOW_OPEN_CURLY_SYMBOL_in_primary11333);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OPEN_CURLY_SYMBOL2048_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_CURLY_SYMBOL2048));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_CURLY_SYMBOL2048_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_identifier_in_primary11335);
            	        identifier2049=identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2049.tree);

            	        FOLLOWPUSH(FOLLOW_expression_in_primary11337);
            	        expression2050=expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2050.tree);

            	        CLOSE_CURLY_SYMBOL2051 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_CURLY_SYMBOL, &FOLLOW_CLOSE_CURLY_SYMBOL_in_primary11339);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CLOSE_CURLY_SYMBOL2051_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_CURLY_SYMBOL2051));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_CURLY_SYMBOL2051_tree);
            	        }

            	    }
            	    break;
            	case 11:
            	    // MySQL.g:2300:5: match_expression
            	    {
            	        FOLLOWPUSH(FOLLOW_match_expression_in_primary11345);
            	        match_expression2052=match_expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, match_expression2052.tree);

            	    }
            	    break;
            	case 12:
            	    // MySQL.g:2301:5: case_expression
            	    {
            	        FOLLOWPUSH(FOLLOW_case_expression_in_primary11351);
            	        case_expression2053=case_expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, case_expression2053.tree);

            	    }
            	    break;
            	case 13:
            	    // MySQL.g:2302:5: cast_expression
            	    {
            	        FOLLOWPUSH(FOLLOW_cast_expression_in_primary11357);
            	        cast_expression2054=cast_expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, cast_expression2054.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:2305: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:2305:32: COLLATE_SYMBOL collation_name
            	    {
            	        COLLATE_SYMBOL2055 = (pANTLR3_COMMON_TOKEN) MATCHT(COLLATE_SYMBOL, &FOLLOW_COLLATE_SYMBOL_in_primary11379);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COLLATE_SYMBOL2055_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COLLATE_SYMBOL2055));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COLLATE_SYMBOL2055_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_collation_name_in_primary11381);
            	        collation_name2056=collation_name(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, collation_name2056.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 jsonOperator
 * MySQL.g:2308:1: jsonOperator : ({...}? JSON_SEPARATOR_SYMBOL text_string |{...}? JSON_UNQUOTED_SEPARATOR_SYMBOL text_string );
 */
static MySQLParser_jsonOperator_return
jsonOperator(pMySQLParser ctx)
{
    MySQLParser_jsonOperator_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    JSON_SEPARATOR_SYMBOL2057;
    pANTLR3_COMMON_TOKEN    JSON_UNQUOTED_SEPARATOR_SYMBOL2059;
    MySQLParser_text_string_return text_string2058;
    #undef	RETURN_TYPE_text_string2058
    #define	RETURN_TYPE_text_string2058 MySQLParser_text_string_return

    MySQLParser_text_string_return text_string2060;
    #undef	RETURN_TYPE_text_string2060
    #define	RETURN_TYPE_text_string2060 MySQLParser_text_string_return

    pANTLR3_BASE_TREE JSON_SEPARATOR_SYMBOL2057_tree;
    pANTLR3_BASE_TREE JSON_UNQUOTED_SEPARATOR_SYMBOL2059_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    JSON_SEPARATOR_SYMBOL2057       = NULL;
    JSON_UNQUOTED_SEPARATOR_SYMBOL2059       = NULL;
    text_string2058.tree = NULL;

    text_string2060.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    JSON_SEPARATOR_SYMBOL2057_tree   = NULL;
    JSON_UNQUOTED_SEPARATOR_SYMBOL2059_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2308:13: ({...}? JSON_SEPARATOR_SYMBOL text_string |{...}? JSON_UNQUOTED_SEPARATOR_SYMBOL text_string )

            ANTLR3_UINT32 alt638;

            alt638=2;

            switch ( LA(1) )
            {
            case JSON_SEPARATOR_SYMBOL:
            	{
            		alt638=1;
            	}
                break;
            case JSON_UNQUOTED_SEPARATOR_SYMBOL:
            	{
            		alt638=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 638;
                EXCEPTION->state        = 0;


                goto rulejsonOperatorEx;

            }

            switch (alt638)
            {
        	case 1:
        	    // MySQL.g:2309:3: {...}? JSON_SEPARATOR_SYMBOL text_string
        	    {
        	        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 *)"jsonOperator";


        	        }

        	        JSON_SEPARATOR_SYMBOL2057 = (pANTLR3_COMMON_TOKEN) MATCHT(JSON_SEPARATOR_SYMBOL, &FOLLOW_JSON_SEPARATOR_SYMBOL_in_jsonOperator11395);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulejsonOperatorEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        JSON_SEPARATOR_SYMBOL2057_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, JSON_SEPARATOR_SYMBOL2057));
        	        ADAPTOR->addChild(ADAPTOR, root_0, JSON_SEPARATOR_SYMBOL2057_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_in_jsonOperator11397);
        	        text_string2058=text_string(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulejsonOperatorEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string2058.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2310:5: {...}? JSON_UNQUOTED_SEPARATOR_SYMBOL text_string
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        if ( !((SERVER_VERSION >= 50713)) )
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	                EXCEPTION->message      = (void *)"SERVER_VERSION >= 50713";
        	                EXCEPTION->ruleName	 = (void *)"jsonOperator";


        	        }

        	        JSON_UNQUOTED_SEPARATOR_SYMBOL2059 = (pANTLR3_COMMON_TOKEN) MATCHT(JSON_UNQUOTED_SEPARATOR_SYMBOL, &FOLLOW_JSON_UNQUOTED_SEPARATOR_SYMBOL_in_jsonOperator11405);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulejsonOperatorEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        JSON_UNQUOTED_SEPARATOR_SYMBOL2059_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, JSON_UNQUOTED_SEPARATOR_SYMBOL2059));
        	        ADAPTOR->addChild(ADAPTOR, root_0, JSON_UNQUOTED_SEPARATOR_SYMBOL2059_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_in_jsonOperator11407);
        	        text_string2060=text_string(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulejsonOperatorEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string2060.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulejsonOperatorEx; /* Prevent compiler warnings */
    rulejsonOperatorEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end jsonOperator */

/**
 * $ANTLR start expression_with_nested_parentheses
 * MySQL.g:2315:1: expression_with_nested_parentheses : ({...}? subquery | expression_list_with_parentheses );
 */
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;

    MySQLParser_subquery_return subquery2061;
    #undef	RETURN_TYPE_subquery2061
    #define	RETURN_TYPE_subquery2061 MySQLParser_subquery_return

    MySQLParser_expression_list_with_parentheses_return expression_list_with_parentheses2062;
    #undef	RETURN_TYPE_expression_list_with_parentheses2062
    #define	RETURN_TYPE_expression_list_with_parentheses2062 MySQLParser_expression_list_with_parentheses_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    subquery2061.tree = NULL;

    expression_list_with_parentheses2062.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2315:35: ({...}? subquery | expression_list_with_parentheses )

            ANTLR3_UINT32 alt639;

            alt639=2;

            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_3 = 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        = 3;


            		                goto ruleexpression_with_nested_parenthesesEx;

            		            }
            		        }
            		    }
            		    else if ( (((LA639_1 >= ACCOUNT_SYMBOL) && (LA639_1 <= YEAR_SYMBOL)) || LA639_1 == BINARY_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 == EXISTS_SYMBOL || ((LA639_1 >= EXTRACT_SYMBOL) && (LA639_1 <= FALSE_SYMBOL)) || LA639_1 == GROUP_CONCAT_SYMBOL || LA639_1 == IF_SYMBOL || LA639_1 == INSERT_SYMBOL || LA639_1 == INTERVAL_SYMBOL || LA639_1 == LEFT_SYMBOL || LA639_1 == MATCH_SYMBOL || LA639_1 == MAX_SYMBOL || LA639_1 == MIN_SYMBOL || LA639_1 == MOD_SYMBOL || LA639_1 == NCHAR_TEXT || ((LA639_1 >= NOT2_SYMBOL) && (LA639_1 <= NOW_SYMBOL)) || ((LA639_1 >= NULL2_SYMBOL) && (LA639_1 <= NULL_SYMBOL)) || LA639_1 == OPEN_CURLY_SYMBOL || ((LA639_1 >= PARAM_MARKER) && (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 >= UTC_DATE_SYMBOL) && (LA639_1 <= UTC_TIME_SYMBOL)) || LA639_1 == VALUES_SYMBOL || LA639_1 == VARIANCE_SYMBOL || LA639_1 == VAR_SAMP_SYMBOL || ((LA639_1 >= AT_AT_SIGN_SYMBOL) && (LA639_1 <= AT_TEXT_SUFFIX)) || ((LA639_1 >= BACK_TICK_QUOTED_ID) && (LA639_1 <= BIN_NUMBER)) || LA639_1 == BITWISE_NOT_OPERATOR || ((LA639_1 >= BIT_AND_SYMBOL) && (LA639_1 <= BIT_XOR_SYMBOL)) || LA639_1 == DECIMAL_NUMBER || LA639_1 == DOT_SYMBOL || LA639_1 == DOUBLE_QUOTED_TEXT || LA639_1 == FLOAT_NUMBER || ((LA639_1 >= HEX_NUMBER) && (LA639_1 <= IDENTIFIER)) || LA639_1 == INT_NUMBER || LA639_1 == LOGICAL_NOT_OPERATOR || ((LA639_1 >= LONG_NUMBER) && (LA639_1 <= MINUS_OPERATOR)) || LA639_1 == PLUS_OPERATOR || ((LA639_1 >= ULONGLONG_NUMBER) && (LA639_1 <= UNDERSCORE_CHARSET))))
            		    {
            		        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;

            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:2316: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_parentheses11420);
        	        subquery2061=subquery(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleexpression_with_nested_parenthesesEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, subquery2061.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2317:4: expression_list_with_parentheses
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_expression_list_with_parentheses_in_expression_with_nested_parentheses11425);
        	        expression_list_with_parentheses2062=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_parentheses2062.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:2320: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    set2063;

    pANTLR3_BASE_TREE set2063_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2063       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2063_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2320: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));


            set2063=(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) <= NULL_SAFE_EQUAL_OPERATOR)) )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set2063))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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:2331: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    set2064;

    pANTLR3_BASE_TREE set2064_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2064       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2064_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2331:24: ( MULT_OPERATOR | DIV_OPERATOR | DIV_SYMBOL | MOD_OPERATOR | MOD_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set2064=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == MOD_SYMBOL || ((LA(1) >= DIV_OPERATOR) && (LA(1) <= DIV_SYMBOL)) || LA(1) == MOD_OPERATOR || LA(1) == MULT_OPERATOR )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set2064))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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:2335: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_expression2065;
    #undef	RETURN_TYPE_runtime_function_call_expression2065
    #define	RETURN_TYPE_runtime_function_call_expression2065 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_expression2065.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:2335:22: ( runtime_function_call_expression -> ^( RUNTIME_FUNCTION_TOKEN runtime_function_call_expression ) )
        // MySQL.g:2336:2: runtime_function_call_expression
        {
            FOLLOWPUSH(FOLLOW_runtime_function_call_expression_in_runtime_function_call11503);
            runtime_function_call_expression2065=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_expression2065.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;
            	// 2336:35: -> ^( RUNTIME_FUNCTION_TOKEN runtime_function_call_expression )
            	{
            	    // MySQL.g:2336: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:2339: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_SYMBOL2066;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2067;
    pANTLR3_COMMON_TOKEN    USING_SYMBOL2069;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2071;
    pANTLR3_COMMON_TOKEN    CURRENT_USER_SYMBOL2072;
    pANTLR3_COMMON_TOKEN    DATE_SYMBOL2074;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2075;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2077;
    pANTLR3_COMMON_TOKEN    DAY_SYMBOL2078;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2079;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2081;
    pANTLR3_COMMON_TOKEN    HOUR_SYMBOL2082;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2083;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2085;
    pANTLR3_COMMON_TOKEN    INSERT_SYMBOL2086;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2087;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2089;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2091;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2093;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2095;
    pANTLR3_COMMON_TOKEN    LEFT_SYMBOL2096;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2097;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2099;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2101;
    pANTLR3_COMMON_TOKEN    MINUTE_SYMBOL2102;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2103;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2105;
    pANTLR3_COMMON_TOKEN    MONTH_SYMBOL2106;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2107;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2109;
    pANTLR3_COMMON_TOKEN    RIGHT_SYMBOL2110;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2111;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2113;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2115;
    pANTLR3_COMMON_TOKEN    SECOND_SYMBOL2116;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2117;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2119;
    pANTLR3_COMMON_TOKEN    TIME_SYMBOL2120;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2121;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2123;
    pANTLR3_COMMON_TOKEN    TIMESTAMP_SYMBOL2124;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2125;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2127;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2129;
    pANTLR3_COMMON_TOKEN    USER_SYMBOL2131;
    pANTLR3_COMMON_TOKEN    VALUES_SYMBOL2133;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2134;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2136;
    pANTLR3_COMMON_TOKEN    YEAR_SYMBOL2137;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2138;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2140;
    pANTLR3_COMMON_TOKEN    set2141;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2142;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2144;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2146;
    pANTLR3_COMMON_TOKEN    CURDATE_SYMBOL2147;
    pANTLR3_COMMON_TOKEN    CURTIME_SYMBOL2149;
    pANTLR3_COMMON_TOKEN    set2151;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2152;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2154;
    pANTLR3_COMMON_TOKEN    INTERVAL_SYMBOL2155;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2157;
    pANTLR3_COMMON_TOKEN    EXTRACT_SYMBOL2158;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2159;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL2161;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2163;
    pANTLR3_COMMON_TOKEN    GET_FORMAT_SYMBOL2164;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2165;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2167;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2169;
    pANTLR3_COMMON_TOKEN    NOW_SYMBOL2170;
    pANTLR3_COMMON_TOKEN    POSITION_SYMBOL2172;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2173;
    pANTLR3_COMMON_TOKEN    IN_SYMBOL2175;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2177;
    pANTLR3_COMMON_TOKEN    SYSDATE_SYMBOL2179;
    pANTLR3_COMMON_TOKEN    set2181;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2182;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2184;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2186;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2188;
    pANTLR3_COMMON_TOKEN    UTC_DATE_SYMBOL2189;
    pANTLR3_COMMON_TOKEN    UTC_TIME_SYMBOL2191;
    pANTLR3_COMMON_TOKEN    UTC_TIMESTAMP_SYMBOL2193;
    pANTLR3_COMMON_TOKEN    ASCII_SYMBOL2195;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2196;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2198;
    pANTLR3_COMMON_TOKEN    CHARSET_SYMBOL2199;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2200;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2202;
    pANTLR3_COMMON_TOKEN    COALESCE_SYMBOL2203;
    pANTLR3_COMMON_TOKEN    COLLATION_SYMBOL2205;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2206;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2208;
    pANTLR3_COMMON_TOKEN    DATABASE_SYMBOL2209;
    pANTLR3_COMMON_TOKEN    IF_SYMBOL2211;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2212;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2214;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2216;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2218;
    pANTLR3_COMMON_TOKEN    FORMAT_SYMBOL2219;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2220;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2222;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2224;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2226;
    pANTLR3_COMMON_TOKEN    MICROSECOND_SYMBOL2227;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2228;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2230;
    pANTLR3_COMMON_TOKEN    MOD_SYMBOL2231;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2232;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2234;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2236;
    pANTLR3_COMMON_TOKEN    OLD_PASSWORD_SYMBOL2237;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2238;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2240;
    pANTLR3_COMMON_TOKEN    PASSWORD_SYMBOL2241;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2242;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2244;
    pANTLR3_COMMON_TOKEN    QUARTER_SYMBOL2245;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2246;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2248;
    pANTLR3_COMMON_TOKEN    REPEAT_SYMBOL2249;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2250;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2252;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2254;
    pANTLR3_COMMON_TOKEN    REPLACE_SYMBOL2255;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2256;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2258;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2260;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2262;
    pANTLR3_COMMON_TOKEN    REVERSE_SYMBOL2263;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2264;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2266;
    pANTLR3_COMMON_TOKEN    ROW_COUNT_SYMBOL2267;
    pANTLR3_COMMON_TOKEN    TRUNCATE_SYMBOL2269;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2270;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2272;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2274;
    pANTLR3_COMMON_TOKEN    WEEK_SYMBOL2275;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2276;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2278;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2280;
    pANTLR3_COMMON_TOKEN    WEIGHT_STRING_SYMBOL2281;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2282;
    pANTLR3_COMMON_TOKEN    AS_SYMBOL2284;
    pANTLR3_COMMON_TOKEN    CHAR_SYMBOL2285;
    pANTLR3_COMMON_TOKEN    AS_SYMBOL2288;
    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL2289;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2291;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2293;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2295;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2297;
    MySQLParser_expression_list_return expression_list2068;
    #undef	RETURN_TYPE_expression_list2068
    #define	RETURN_TYPE_expression_list2068 MySQLParser_expression_list_return

    MySQLParser_charset_name_return charset_name2070;
    #undef	RETURN_TYPE_charset_name2070
    #define	RETURN_TYPE_charset_name2070 MySQLParser_charset_name_return

    MySQLParser_parentheses_return parentheses2073;
    #undef	RETURN_TYPE_parentheses2073
    #define	RETURN_TYPE_parentheses2073 MySQLParser_parentheses_return

    MySQLParser_expression_return expression2076;
    #undef	RETURN_TYPE_expression2076
    #define	RETURN_TYPE_expression2076 MySQLParser_expression_return

    MySQLParser_expression_return expression2080;
    #undef	RETURN_TYPE_expression2080
    #define	RETURN_TYPE_expression2080 MySQLParser_expression_return

    MySQLParser_expression_return expression2084;
    #undef	RETURN_TYPE_expression2084
    #define	RETURN_TYPE_expression2084 MySQLParser_expression_return

    MySQLParser_expression_return expression2088;
    #undef	RETURN_TYPE_expression2088
    #define	RETURN_TYPE_expression2088 MySQLParser_expression_return

    MySQLParser_expression_return expression2090;
    #undef	RETURN_TYPE_expression2090
    #define	RETURN_TYPE_expression2090 MySQLParser_expression_return

    MySQLParser_expression_return expression2092;
    #undef	RETURN_TYPE_expression2092
    #define	RETURN_TYPE_expression2092 MySQLParser_expression_return

    MySQLParser_expression_return expression2094;
    #undef	RETURN_TYPE_expression2094
    #define	RETURN_TYPE_expression2094 MySQLParser_expression_return

    MySQLParser_expression_return expression2098;
    #undef	RETURN_TYPE_expression2098
    #define	RETURN_TYPE_expression2098 MySQLParser_expression_return

    MySQLParser_expression_return expression2100;
    #undef	RETURN_TYPE_expression2100
    #define	RETURN_TYPE_expression2100 MySQLParser_expression_return

    MySQLParser_expression_return expression2104;
    #undef	RETURN_TYPE_expression2104
    #define	RETURN_TYPE_expression2104 MySQLParser_expression_return

    MySQLParser_expression_return expression2108;
    #undef	RETURN_TYPE_expression2108
    #define	RETURN_TYPE_expression2108 MySQLParser_expression_return

    MySQLParser_expression_return expression2112;
    #undef	RETURN_TYPE_expression2112
    #define	RETURN_TYPE_expression2112 MySQLParser_expression_return

    MySQLParser_expression_return expression2114;
    #undef	RETURN_TYPE_expression2114
    #define	RETURN_TYPE_expression2114 MySQLParser_expression_return

    MySQLParser_expression_return expression2118;
    #undef	RETURN_TYPE_expression2118
    #define	RETURN_TYPE_expression2118 MySQLParser_expression_return

    MySQLParser_expression_return expression2122;
    #undef	RETURN_TYPE_expression2122
    #define	RETURN_TYPE_expression2122 MySQLParser_expression_return

    MySQLParser_expression_return expression2126;
    #undef	RETURN_TYPE_expression2126
    #define	RETURN_TYPE_expression2126 MySQLParser_expression_return

    MySQLParser_expression_return expression2128;
    #undef	RETURN_TYPE_expression2128
    #define	RETURN_TYPE_expression2128 MySQLParser_expression_return

    MySQLParser_trim_function_return trim_function2130;
    #undef	RETURN_TYPE_trim_function2130
    #define	RETURN_TYPE_trim_function2130 MySQLParser_trim_function_return

    MySQLParser_parentheses_return parentheses2132;
    #undef	RETURN_TYPE_parentheses2132
    #define	RETURN_TYPE_parentheses2132 MySQLParser_parentheses_return

    MySQLParser_expression_return expression2135;
    #undef	RETURN_TYPE_expression2135
    #define	RETURN_TYPE_expression2135 MySQLParser_expression_return

    MySQLParser_expression_return expression2139;
    #undef	RETURN_TYPE_expression2139
    #define	RETURN_TYPE_expression2139 MySQLParser_expression_return

    MySQLParser_expression_return expression2143;
    #undef	RETURN_TYPE_expression2143
    #define	RETURN_TYPE_expression2143 MySQLParser_expression_return

    MySQLParser_expression_return expression2145;
    #undef	RETURN_TYPE_expression2145
    #define	RETURN_TYPE_expression2145 MySQLParser_expression_return

    MySQLParser_parentheses_return parentheses2148;
    #undef	RETURN_TYPE_parentheses2148
    #define	RETURN_TYPE_parentheses2148 MySQLParser_parentheses_return

    MySQLParser_time_function_parameters_return time_function_parameters2150;
    #undef	RETURN_TYPE_time_function_parameters2150
    #define	RETURN_TYPE_time_function_parameters2150 MySQLParser_time_function_parameters_return

    MySQLParser_expression_return expression2153;
    #undef	RETURN_TYPE_expression2153
    #define	RETURN_TYPE_expression2153 MySQLParser_expression_return

    MySQLParser_interval_return interval2156;
    #undef	RETURN_TYPE_interval2156
    #define	RETURN_TYPE_interval2156 MySQLParser_interval_return

    MySQLParser_interval_unit_return interval_unit2160;
    #undef	RETURN_TYPE_interval_unit2160
    #define	RETURN_TYPE_interval_unit2160 MySQLParser_interval_unit_return

    MySQLParser_expression_return expression2162;
    #undef	RETURN_TYPE_expression2162
    #define	RETURN_TYPE_expression2162 MySQLParser_expression_return

    MySQLParser_date_time_type_return date_time_type2166;
    #undef	RETURN_TYPE_date_time_type2166
    #define	RETURN_TYPE_date_time_type2166 MySQLParser_date_time_type_return

    MySQLParser_expression_return expression2168;
    #undef	RETURN_TYPE_expression2168
    #define	RETURN_TYPE_expression2168 MySQLParser_expression_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_bitwise_or_expression_return bitwise_or_expression2174;
    #undef	RETURN_TYPE_bitwise_or_expression2174
    #define	RETURN_TYPE_bitwise_or_expression2174 MySQLParser_bitwise_or_expression_return

    MySQLParser_expression_return expression2176;
    #undef	RETURN_TYPE_expression2176
    #define	RETURN_TYPE_expression2176 MySQLParser_expression_return

    MySQLParser_substring_function_return substring_function2178;
    #undef	RETURN_TYPE_substring_function2178
    #define	RETURN_TYPE_substring_function2178 MySQLParser_substring_function_return

    MySQLParser_time_function_parameters_return time_function_parameters2180;
    #undef	RETURN_TYPE_time_function_parameters2180
    #define	RETURN_TYPE_time_function_parameters2180 MySQLParser_time_function_parameters_return

    MySQLParser_interval_timestamp_unit_return interval_timestamp_unit2183;
    #undef	RETURN_TYPE_interval_timestamp_unit2183
    #define	RETURN_TYPE_interval_timestamp_unit2183 MySQLParser_interval_timestamp_unit_return

    MySQLParser_expression_return expression2185;
    #undef	RETURN_TYPE_expression2185
    #define	RETURN_TYPE_expression2185 MySQLParser_expression_return

    MySQLParser_expression_return expression2187;
    #undef	RETURN_TYPE_expression2187
    #define	RETURN_TYPE_expression2187 MySQLParser_expression_return

    MySQLParser_parentheses_return parentheses2190;
    #undef	RETURN_TYPE_parentheses2190
    #define	RETURN_TYPE_parentheses2190 MySQLParser_parentheses_return

    MySQLParser_time_function_parameters_return time_function_parameters2192;
    #undef	RETURN_TYPE_time_function_parameters2192
    #define	RETURN_TYPE_time_function_parameters2192 MySQLParser_time_function_parameters_return

    MySQLParser_time_function_parameters_return time_function_parameters2194;
    #undef	RETURN_TYPE_time_function_parameters2194
    #define	RETURN_TYPE_time_function_parameters2194 MySQLParser_time_function_parameters_return

    MySQLParser_expression_return expression2197;
    #undef	RETURN_TYPE_expression2197
    #define	RETURN_TYPE_expression2197 MySQLParser_expression_return

    MySQLParser_expression_return expression2201;
    #undef	RETURN_TYPE_expression2201
    #define	RETURN_TYPE_expression2201 MySQLParser_expression_return

    MySQLParser_expression_list_with_parentheses_return expression_list_with_parentheses2204;
    #undef	RETURN_TYPE_expression_list_with_parentheses2204
    #define	RETURN_TYPE_expression_list_with_parentheses2204 MySQLParser_expression_list_with_parentheses_return

    MySQLParser_expression_return expression2207;
    #undef	RETURN_TYPE_expression2207
    #define	RETURN_TYPE_expression2207 MySQLParser_expression_return

    MySQLParser_parentheses_return parentheses2210;
    #undef	RETURN_TYPE_parentheses2210
    #define	RETURN_TYPE_parentheses2210 MySQLParser_parentheses_return

    MySQLParser_expression_return expression2213;
    #undef	RETURN_TYPE_expression2213
    #define	RETURN_TYPE_expression2213 MySQLParser_expression_return

    MySQLParser_expression_return expression2215;
    #undef	RETURN_TYPE_expression2215
    #define	RETURN_TYPE_expression2215 MySQLParser_expression_return

    MySQLParser_expression_return expression2217;
    #undef	RETURN_TYPE_expression2217
    #define	RETURN_TYPE_expression2217 MySQLParser_expression_return

    MySQLParser_expression_return expression2221;
    #undef	RETURN_TYPE_expression2221
    #define	RETURN_TYPE_expression2221 MySQLParser_expression_return

    MySQLParser_expression_return expression2223;
    #undef	RETURN_TYPE_expression2223
    #define	RETURN_TYPE_expression2223 MySQLParser_expression_return

    MySQLParser_expression_return expression2225;
    #undef	RETURN_TYPE_expression2225
    #define	RETURN_TYPE_expression2225 MySQLParser_expression_return

    MySQLParser_expression_return expression2229;
    #undef	RETURN_TYPE_expression2229
    #define	RETURN_TYPE_expression2229 MySQLParser_expression_return

    MySQLParser_expression_return expression2233;
    #undef	RETURN_TYPE_expression2233
    #define	RETURN_TYPE_expression2233 MySQLParser_expression_return

    MySQLParser_expression_return expression2235;
    #undef	RETURN_TYPE_expression2235
    #define	RETURN_TYPE_expression2235 MySQLParser_expression_return

    MySQLParser_string_literal_return string_literal2239;
    #undef	RETURN_TYPE_string_literal2239
    #define	RETURN_TYPE_string_literal2239 MySQLParser_string_literal_return

    MySQLParser_expression_return expression2243;
    #undef	RETURN_TYPE_expression2243
    #define	RETURN_TYPE_expression2243 MySQLParser_expression_return

    MySQLParser_expression_return expression2247;
    #undef	RETURN_TYPE_expression2247
    #define	RETURN_TYPE_expression2247 MySQLParser_expression_return

    MySQLParser_expression_return expression2251;
    #undef	RETURN_TYPE_expression2251
    #define	RETURN_TYPE_expression2251 MySQLParser_expression_return

    MySQLParser_expression_return expression2253;
    #undef	RETURN_TYPE_expression2253
    #define	RETURN_TYPE_expression2253 MySQLParser_expression_return

    MySQLParser_expression_return expression2257;
    #undef	RETURN_TYPE_expression2257
    #define	RETURN_TYPE_expression2257 MySQLParser_expression_return

    MySQLParser_expression_return expression2259;
    #undef	RETURN_TYPE_expression2259
    #define	RETURN_TYPE_expression2259 MySQLParser_expression_return

    MySQLParser_expression_return expression2261;
    #undef	RETURN_TYPE_expression2261
    #define	RETURN_TYPE_expression2261 MySQLParser_expression_return

    MySQLParser_expression_return expression2265;
    #undef	RETURN_TYPE_expression2265
    #define	RETURN_TYPE_expression2265 MySQLParser_expression_return

    MySQLParser_parentheses_return parentheses2268;
    #undef	RETURN_TYPE_parentheses2268
    #define	RETURN_TYPE_parentheses2268 MySQLParser_parentheses_return

    MySQLParser_expression_return expression2271;
    #undef	RETURN_TYPE_expression2271
    #define	RETURN_TYPE_expression2271 MySQLParser_expression_return

    MySQLParser_expression_return expression2273;
    #undef	RETURN_TYPE_expression2273
    #define	RETURN_TYPE_expression2273 MySQLParser_expression_return

    MySQLParser_expression_return expression2277;
    #undef	RETURN_TYPE_expression2277
    #define	RETURN_TYPE_expression2277 MySQLParser_expression_return

    MySQLParser_expression_return expression2279;
    #undef	RETURN_TYPE_expression2279
    #define	RETURN_TYPE_expression2279 MySQLParser_expression_return

    MySQLParser_expression_return expression2283;
    #undef	RETURN_TYPE_expression2283
    #define	RETURN_TYPE_expression2283 MySQLParser_expression_return

    MySQLParser_field_length_return field_length2286;
    #undef	RETURN_TYPE_field_length2286
    #define	RETURN_TYPE_field_length2286 MySQLParser_field_length_return

    MySQLParser_weight_string_levels_return weight_string_levels2287;
    #undef	RETURN_TYPE_weight_string_levels2287
    #define	RETURN_TYPE_weight_string_levels2287 MySQLParser_weight_string_levels_return

    MySQLParser_field_length_return field_length2290;
    #undef	RETURN_TYPE_field_length2290
    #define	RETURN_TYPE_field_length2290 MySQLParser_field_length_return

    MySQLParser_ulong_number_return ulong_number2292;
    #undef	RETURN_TYPE_ulong_number2292
    #define	RETURN_TYPE_ulong_number2292 MySQLParser_ulong_number_return

    MySQLParser_ulong_number_return ulong_number2294;
    #undef	RETURN_TYPE_ulong_number2294
    #define	RETURN_TYPE_ulong_number2294 MySQLParser_ulong_number_return

    MySQLParser_ulong_number_return ulong_number2296;
    #undef	RETURN_TYPE_ulong_number2296
    #define	RETURN_TYPE_ulong_number2296 MySQLParser_ulong_number_return

    MySQLParser_geometry_function_return geometry_function2298;
    #undef	RETURN_TYPE_geometry_function2298
    #define	RETURN_TYPE_geometry_function2298 MySQLParser_geometry_function_return

    MySQLParser_aggregate_function_return aggregate_function2299;
    #undef	RETURN_TYPE_aggregate_function2299
    #define	RETURN_TYPE_aggregate_function2299 MySQLParser_aggregate_function_return

    pANTLR3_BASE_TREE CHAR_SYMBOL2066_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2067_tree;
    pANTLR3_BASE_TREE USING_SYMBOL2069_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2071_tree;
    pANTLR3_BASE_TREE CURRENT_USER_SYMBOL2072_tree;
    pANTLR3_BASE_TREE DATE_SYMBOL2074_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2075_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2077_tree;
    pANTLR3_BASE_TREE DAY_SYMBOL2078_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2079_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2081_tree;
    pANTLR3_BASE_TREE HOUR_SYMBOL2082_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2083_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2085_tree;
    pANTLR3_BASE_TREE INSERT_SYMBOL2086_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2087_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2089_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2091_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2093_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2095_tree;
    pANTLR3_BASE_TREE LEFT_SYMBOL2096_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2097_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2099_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2101_tree;
    pANTLR3_BASE_TREE MINUTE_SYMBOL2102_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2103_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2105_tree;
    pANTLR3_BASE_TREE MONTH_SYMBOL2106_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2107_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2109_tree;
    pANTLR3_BASE_TREE RIGHT_SYMBOL2110_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2111_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2113_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2115_tree;
    pANTLR3_BASE_TREE SECOND_SYMBOL2116_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2117_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2119_tree;
    pANTLR3_BASE_TREE TIME_SYMBOL2120_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2121_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2123_tree;
    pANTLR3_BASE_TREE TIMESTAMP_SYMBOL2124_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2125_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2127_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2129_tree;
    pANTLR3_BASE_TREE USER_SYMBOL2131_tree;
    pANTLR3_BASE_TREE VALUES_SYMBOL2133_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2134_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2136_tree;
    pANTLR3_BASE_TREE YEAR_SYMBOL2137_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2138_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2140_tree;
    pANTLR3_BASE_TREE set2141_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2142_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2144_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2146_tree;
    pANTLR3_BASE_TREE CURDATE_SYMBOL2147_tree;
    pANTLR3_BASE_TREE CURTIME_SYMBOL2149_tree;
    pANTLR3_BASE_TREE set2151_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2152_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2154_tree;
    pANTLR3_BASE_TREE INTERVAL_SYMBOL2155_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2157_tree;
    pANTLR3_BASE_TREE EXTRACT_SYMBOL2158_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2159_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL2161_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2163_tree;
    pANTLR3_BASE_TREE GET_FORMAT_SYMBOL2164_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2165_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2167_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2169_tree;
    pANTLR3_BASE_TREE NOW_SYMBOL2170_tree;
    pANTLR3_BASE_TREE POSITION_SYMBOL2172_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2173_tree;
    pANTLR3_BASE_TREE IN_SYMBOL2175_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2177_tree;
    pANTLR3_BASE_TREE SYSDATE_SYMBOL2179_tree;
    pANTLR3_BASE_TREE set2181_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2182_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2184_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2186_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2188_tree;
    pANTLR3_BASE_TREE UTC_DATE_SYMBOL2189_tree;
    pANTLR3_BASE_TREE UTC_TIME_SYMBOL2191_tree;
    pANTLR3_BASE_TREE UTC_TIMESTAMP_SYMBOL2193_tree;
    pANTLR3_BASE_TREE ASCII_SYMBOL2195_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2196_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2198_tree;
    pANTLR3_BASE_TREE CHARSET_SYMBOL2199_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2200_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2202_tree;
    pANTLR3_BASE_TREE COALESCE_SYMBOL2203_tree;
    pANTLR3_BASE_TREE COLLATION_SYMBOL2205_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2206_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2208_tree;
    pANTLR3_BASE_TREE DATABASE_SYMBOL2209_tree;
    pANTLR3_BASE_TREE IF_SYMBOL2211_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2212_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2214_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2216_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2218_tree;
    pANTLR3_BASE_TREE FORMAT_SYMBOL2219_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2220_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2222_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2224_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2226_tree;
    pANTLR3_BASE_TREE MICROSECOND_SYMBOL2227_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2228_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2230_tree;
    pANTLR3_BASE_TREE MOD_SYMBOL2231_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2232_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2234_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2236_tree;
    pANTLR3_BASE_TREE OLD_PASSWORD_SYMBOL2237_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2238_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2240_tree;
    pANTLR3_BASE_TREE PASSWORD_SYMBOL2241_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2242_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2244_tree;
    pANTLR3_BASE_TREE QUARTER_SYMBOL2245_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2246_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2248_tree;
    pANTLR3_BASE_TREE REPEAT_SYMBOL2249_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2250_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2252_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2254_tree;
    pANTLR3_BASE_TREE REPLACE_SYMBOL2255_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2256_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2258_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2260_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2262_tree;
    pANTLR3_BASE_TREE REVERSE_SYMBOL2263_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2264_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2266_tree;
    pANTLR3_BASE_TREE ROW_COUNT_SYMBOL2267_tree;
    pANTLR3_BASE_TREE TRUNCATE_SYMBOL2269_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2270_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2272_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2274_tree;
    pANTLR3_BASE_TREE WEEK_SYMBOL2275_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2276_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2278_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2280_tree;
    pANTLR3_BASE_TREE WEIGHT_STRING_SYMBOL2281_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2282_tree;
    pANTLR3_BASE_TREE AS_SYMBOL2284_tree;
    pANTLR3_BASE_TREE CHAR_SYMBOL2285_tree;
    pANTLR3_BASE_TREE AS_SYMBOL2288_tree;
    pANTLR3_BASE_TREE BINARY_SYMBOL2289_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2291_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2293_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2295_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2297_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CHAR_SYMBOL2066       = NULL;
    OPEN_PAR_SYMBOL2067       = NULL;
    USING_SYMBOL2069       = NULL;
    CLOSE_PAR_SYMBOL2071       = NULL;
    CURRENT_USER_SYMBOL2072       = NULL;
    DATE_SYMBOL2074       = NULL;
    OPEN_PAR_SYMBOL2075       = NULL;
    CLOSE_PAR_SYMBOL2077       = NULL;
    DAY_SYMBOL2078       = NULL;
    OPEN_PAR_SYMBOL2079       = NULL;
    CLOSE_PAR_SYMBOL2081       = NULL;
    HOUR_SYMBOL2082       = NULL;
    OPEN_PAR_SYMBOL2083       = NULL;
    CLOSE_PAR_SYMBOL2085       = NULL;
    INSERT_SYMBOL2086       = NULL;
    OPEN_PAR_SYMBOL2087       = NULL;
    COMMA_SYMBOL2089       = NULL;
    COMMA_SYMBOL2091       = NULL;
    COMMA_SYMBOL2093       = NULL;
    CLOSE_PAR_SYMBOL2095       = NULL;
    LEFT_SYMBOL2096       = NULL;
    OPEN_PAR_SYMBOL2097       = NULL;
    COMMA_SYMBOL2099       = NULL;
    CLOSE_PAR_SYMBOL2101       = NULL;
    MINUTE_SYMBOL2102       = NULL;
    OPEN_PAR_SYMBOL2103       = NULL;
    CLOSE_PAR_SYMBOL2105       = NULL;
    MONTH_SYMBOL2106       = NULL;
    OPEN_PAR_SYMBOL2107       = NULL;
    CLOSE_PAR_SYMBOL2109       = NULL;
    RIGHT_SYMBOL2110       = NULL;
    OPEN_PAR_SYMBOL2111       = NULL;
    COMMA_SYMBOL2113       = NULL;
    CLOSE_PAR_SYMBOL2115       = NULL;
    SECOND_SYMBOL2116       = NULL;
    OPEN_PAR_SYMBOL2117       = NULL;
    CLOSE_PAR_SYMBOL2119       = NULL;
    TIME_SYMBOL2120       = NULL;
    OPEN_PAR_SYMBOL2121       = NULL;
    CLOSE_PAR_SYMBOL2123       = NULL;
    TIMESTAMP_SYMBOL2124       = NULL;
    OPEN_PAR_SYMBOL2125       = NULL;
    COMMA_SYMBOL2127       = NULL;
    CLOSE_PAR_SYMBOL2129       = NULL;
    USER_SYMBOL2131       = NULL;
    VALUES_SYMBOL2133       = NULL;
    OPEN_PAR_SYMBOL2134       = NULL;
    CLOSE_PAR_SYMBOL2136       = NULL;
    YEAR_SYMBOL2137       = NULL;
    OPEN_PAR_SYMBOL2138       = NULL;
    CLOSE_PAR_SYMBOL2140       = NULL;
    set2141       = NULL;
    OPEN_PAR_SYMBOL2142       = NULL;
    COMMA_SYMBOL2144       = NULL;
    CLOSE_PAR_SYMBOL2146       = NULL;
    CURDATE_SYMBOL2147       = NULL;
    CURTIME_SYMBOL2149       = NULL;
    set2151       = NULL;
    OPEN_PAR_SYMBOL2152       = NULL;
    COMMA_SYMBOL2154       = NULL;
    INTERVAL_SYMBOL2155       = NULL;
    CLOSE_PAR_SYMBOL2157       = NULL;
    EXTRACT_SYMBOL2158       = NULL;
    OPEN_PAR_SYMBOL2159       = NULL;
    FROM_SYMBOL2161       = NULL;
    CLOSE_PAR_SYMBOL2163       = NULL;
    GET_FORMAT_SYMBOL2164       = NULL;
    OPEN_PAR_SYMBOL2165       = NULL;
    COMMA_SYMBOL2167       = NULL;
    CLOSE_PAR_SYMBOL2169       = NULL;
    NOW_SYMBOL2170       = NULL;
    POSITION_SYMBOL2172       = NULL;
    OPEN_PAR_SYMBOL2173       = NULL;
    IN_SYMBOL2175       = NULL;
    CLOSE_PAR_SYMBOL2177       = NULL;
    SYSDATE_SYMBOL2179       = NULL;
    set2181       = NULL;
    OPEN_PAR_SYMBOL2182       = NULL;
    COMMA_SYMBOL2184       = NULL;
    COMMA_SYMBOL2186       = NULL;
    CLOSE_PAR_SYMBOL2188       = NULL;
    UTC_DATE_SYMBOL2189       = NULL;
    UTC_TIME_SYMBOL2191       = NULL;
    UTC_TIMESTAMP_SYMBOL2193       = NULL;
    ASCII_SYMBOL2195       = NULL;
    OPEN_PAR_SYMBOL2196       = NULL;
    CLOSE_PAR_SYMBOL2198       = NULL;
    CHARSET_SYMBOL2199       = NULL;
    OPEN_PAR_SYMBOL2200       = NULL;
    CLOSE_PAR_SYMBOL2202       = NULL;
    COALESCE_SYMBOL2203       = NULL;
    COLLATION_SYMBOL2205       = NULL;
    OPEN_PAR_SYMBOL2206       = NULL;
    CLOSE_PAR_SYMBOL2208       = NULL;
    DATABASE_SYMBOL2209       = NULL;
    IF_SYMBOL2211       = NULL;
    OPEN_PAR_SYMBOL2212       = NULL;
    COMMA_SYMBOL2214       = NULL;
    COMMA_SYMBOL2216       = NULL;
    CLOSE_PAR_SYMBOL2218       = NULL;
    FORMAT_SYMBOL2219       = NULL;
    OPEN_PAR_SYMBOL2220       = NULL;
    COMMA_SYMBOL2222       = NULL;
    COMMA_SYMBOL2224       = NULL;
    CLOSE_PAR_SYMBOL2226       = NULL;
    MICROSECOND_SYMBOL2227       = NULL;
    OPEN_PAR_SYMBOL2228       = NULL;
    CLOSE_PAR_SYMBOL2230       = NULL;
    MOD_SYMBOL2231       = NULL;
    OPEN_PAR_SYMBOL2232       = NULL;
    COMMA_SYMBOL2234       = NULL;
    CLOSE_PAR_SYMBOL2236       = NULL;
    OLD_PASSWORD_SYMBOL2237       = NULL;
    OPEN_PAR_SYMBOL2238       = NULL;
    CLOSE_PAR_SYMBOL2240       = NULL;
    PASSWORD_SYMBOL2241       = NULL;
    OPEN_PAR_SYMBOL2242       = NULL;
    CLOSE_PAR_SYMBOL2244       = NULL;
    QUARTER_SYMBOL2245       = NULL;
    OPEN_PAR_SYMBOL2246       = NULL;
    CLOSE_PAR_SYMBOL2248       = NULL;
    REPEAT_SYMBOL2249       = NULL;
    OPEN_PAR_SYMBOL2250       = NULL;
    COMMA_SYMBOL2252       = NULL;
    CLOSE_PAR_SYMBOL2254       = NULL;
    REPLACE_SYMBOL2255       = NULL;
    OPEN_PAR_SYMBOL2256       = NULL;
    COMMA_SYMBOL2258       = NULL;
    COMMA_SYMBOL2260       = NULL;
    CLOSE_PAR_SYMBOL2262       = NULL;
    REVERSE_SYMBOL2263       = NULL;
    OPEN_PAR_SYMBOL2264       = NULL;
    CLOSE_PAR_SYMBOL2266       = NULL;
    ROW_COUNT_SYMBOL2267       = NULL;
    TRUNCATE_SYMBOL2269       = NULL;
    OPEN_PAR_SYMBOL2270       = NULL;
    COMMA_SYMBOL2272       = NULL;
    CLOSE_PAR_SYMBOL2274       = NULL;
    WEEK_SYMBOL2275       = NULL;
    OPEN_PAR_SYMBOL2276       = NULL;
    COMMA_SYMBOL2278       = NULL;
    CLOSE_PAR_SYMBOL2280       = NULL;
    WEIGHT_STRING_SYMBOL2281       = NULL;
    OPEN_PAR_SYMBOL2282       = NULL;
    AS_SYMBOL2284       = NULL;
    CHAR_SYMBOL2285       = NULL;
    AS_SYMBOL2288       = NULL;
    BINARY_SYMBOL2289       = NULL;
    COMMA_SYMBOL2291       = NULL;
    COMMA_SYMBOL2293       = NULL;
    COMMA_SYMBOL2295       = NULL;
    CLOSE_PAR_SYMBOL2297       = NULL;
    expression_list2068.tree = NULL;

    charset_name2070.tree = NULL;

    parentheses2073.tree = NULL;

    expression2076.tree = NULL;

    expression2080.tree = NULL;

    expression2084.tree = NULL;

    expression2088.tree = NULL;

    expression2090.tree = NULL;

    expression2092.tree = NULL;

    expression2094.tree = NULL;

    expression2098.tree = NULL;

    expression2100.tree = NULL;

    expression2104.tree = NULL;

    expression2108.tree = NULL;

    expression2112.tree = NULL;

    expression2114.tree = NULL;

    expression2118.tree = NULL;

    expression2122.tree = NULL;

    expression2126.tree = NULL;

    expression2128.tree = NULL;

    trim_function2130.tree = NULL;

    parentheses2132.tree = NULL;

    expression2135.tree = NULL;

    expression2139.tree = NULL;

    expression2143.tree = NULL;

    expression2145.tree = NULL;

    parentheses2148.tree = NULL;

    time_function_parameters2150.tree = NULL;

    expression2153.tree = NULL;

    interval2156.tree = NULL;

    interval_unit2160.tree = NULL;

    expression2162.tree = NULL;

    date_time_type2166.tree = NULL;

    expression2168.tree = NULL;

    time_function_parameters2171.tree = NULL;

    bitwise_or_expression2174.tree = NULL;

    expression2176.tree = NULL;

    substring_function2178.tree = NULL;

    time_function_parameters2180.tree = NULL;

    interval_timestamp_unit2183.tree = NULL;

    expression2185.tree = NULL;

    expression2187.tree = NULL;

    parentheses2190.tree = NULL;

    time_function_parameters2192.tree = NULL;

    time_function_parameters2194.tree = NULL;

    expression2197.tree = NULL;

    expression2201.tree = NULL;

    expression_list_with_parentheses2204.tree = NULL;

    expression2207.tree = NULL;

    parentheses2210.tree = NULL;

    expression2213.tree = NULL;

    expression2215.tree = NULL;

    expression2217.tree = NULL;

    expression2221.tree = NULL;

    expression2223.tree = NULL;

    expression2225.tree = NULL;

    expression2229.tree = NULL;

    expression2233.tree = NULL;

    expression2235.tree = NULL;

    string_literal2239.tree = NULL;

    expression2243.tree = NULL;

    expression2247.tree = NULL;

    expression2251.tree = NULL;

    expression2253.tree = NULL;

    expression2257.tree = NULL;

    expression2259.tree = NULL;

    expression2261.tree = NULL;

    expression2265.tree = NULL;

    parentheses2268.tree = NULL;

    expression2271.tree = NULL;

    expression2273.tree = NULL;

    expression2277.tree = NULL;

    expression2279.tree = NULL;

    expression2283.tree = NULL;

    field_length2286.tree = NULL;

    weight_string_levels2287.tree = NULL;

    field_length2290.tree = NULL;

    ulong_number2292.tree = NULL;

    ulong_number2294.tree = NULL;

    ulong_number2296.tree = NULL;

    geometry_function2298.tree = NULL;

    aggregate_function2299.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CHAR_SYMBOL2066_tree   = NULL;
    OPEN_PAR_SYMBOL2067_tree   = NULL;
    USING_SYMBOL2069_tree   = NULL;
    CLOSE_PAR_SYMBOL2071_tree   = NULL;
    CURRENT_USER_SYMBOL2072_tree   = NULL;
    DATE_SYMBOL2074_tree   = NULL;
    OPEN_PAR_SYMBOL2075_tree   = NULL;
    CLOSE_PAR_SYMBOL2077_tree   = NULL;
    DAY_SYMBOL2078_tree   = NULL;
    OPEN_PAR_SYMBOL2079_tree   = NULL;
    CLOSE_PAR_SYMBOL2081_tree   = NULL;
    HOUR_SYMBOL2082_tree   = NULL;
    OPEN_PAR_SYMBOL2083_tree   = NULL;
    CLOSE_PAR_SYMBOL2085_tree   = NULL;
    INSERT_SYMBOL2086_tree   = NULL;
    OPEN_PAR_SYMBOL2087_tree   = NULL;
    COMMA_SYMBOL2089_tree   = NULL;
    COMMA_SYMBOL2091_tree   = NULL;
    COMMA_SYMBOL2093_tree   = NULL;
    CLOSE_PAR_SYMBOL2095_tree   = NULL;
    LEFT_SYMBOL2096_tree   = NULL;
    OPEN_PAR_SYMBOL2097_tree   = NULL;
    COMMA_SYMBOL2099_tree   = NULL;
    CLOSE_PAR_SYMBOL2101_tree   = NULL;
    MINUTE_SYMBOL2102_tree   = NULL;
    OPEN_PAR_SYMBOL2103_tree   = NULL;
    CLOSE_PAR_SYMBOL2105_tree   = NULL;
    MONTH_SYMBOL2106_tree   = NULL;
    OPEN_PAR_SYMBOL2107_tree   = NULL;
    CLOSE_PAR_SYMBOL2109_tree   = NULL;
    RIGHT_SYMBOL2110_tree   = NULL;
    OPEN_PAR_SYMBOL2111_tree   = NULL;
    COMMA_SYMBOL2113_tree   = NULL;
    CLOSE_PAR_SYMBOL2115_tree   = NULL;
    SECOND_SYMBOL2116_tree   = NULL;
    OPEN_PAR_SYMBOL2117_tree   = NULL;
    CLOSE_PAR_SYMBOL2119_tree   = NULL;
    TIME_SYMBOL2120_tree   = NULL;
    OPEN_PAR_SYMBOL2121_tree   = NULL;
    CLOSE_PAR_SYMBOL2123_tree   = NULL;
    TIMESTAMP_SYMBOL2124_tree   = NULL;
    OPEN_PAR_SYMBOL2125_tree   = NULL;
    COMMA_SYMBOL2127_tree   = NULL;
    CLOSE_PAR_SYMBOL2129_tree   = NULL;
    USER_SYMBOL2131_tree   = NULL;
    VALUES_SYMBOL2133_tree   = NULL;
    OPEN_PAR_SYMBOL2134_tree   = NULL;
    CLOSE_PAR_SYMBOL2136_tree   = NULL;
    YEAR_SYMBOL2137_tree   = NULL;
    OPEN_PAR_SYMBOL2138_tree   = NULL;
    CLOSE_PAR_SYMBOL2140_tree   = NULL;
    set2141_tree   = NULL;
    OPEN_PAR_SYMBOL2142_tree   = NULL;
    COMMA_SYMBOL2144_tree   = NULL;
    CLOSE_PAR_SYMBOL2146_tree   = NULL;
    CURDATE_SYMBOL2147_tree   = NULL;
    CURTIME_SYMBOL2149_tree   = NULL;
    set2151_tree   = NULL;
    OPEN_PAR_SYMBOL2152_tree   = NULL;
    COMMA_SYMBOL2154_tree   = NULL;
    INTERVAL_SYMBOL2155_tree   = NULL;
    CLOSE_PAR_SYMBOL2157_tree   = NULL;
    EXTRACT_SYMBOL2158_tree   = NULL;
    OPEN_PAR_SYMBOL2159_tree   = NULL;
    FROM_SYMBOL2161_tree   = NULL;
    CLOSE_PAR_SYMBOL2163_tree   = NULL;
    GET_FORMAT_SYMBOL2164_tree   = NULL;
    OPEN_PAR_SYMBOL2165_tree   = NULL;
    COMMA_SYMBOL2167_tree   = NULL;
    CLOSE_PAR_SYMBOL2169_tree   = NULL;
    NOW_SYMBOL2170_tree   = NULL;
    POSITION_SYMBOL2172_tree   = NULL;
    OPEN_PAR_SYMBOL2173_tree   = NULL;
    IN_SYMBOL2175_tree   = NULL;
    CLOSE_PAR_SYMBOL2177_tree   = NULL;
    SYSDATE_SYMBOL2179_tree   = NULL;
    set2181_tree   = NULL;
    OPEN_PAR_SYMBOL2182_tree   = NULL;
    COMMA_SYMBOL2184_tree   = NULL;
    COMMA_SYMBOL2186_tree   = NULL;
    CLOSE_PAR_SYMBOL2188_tree   = NULL;
    UTC_DATE_SYMBOL2189_tree   = NULL;
    UTC_TIME_SYMBOL2191_tree   = NULL;
    UTC_TIMESTAMP_SYMBOL2193_tree   = NULL;
    ASCII_SYMBOL2195_tree   = NULL;
    OPEN_PAR_SYMBOL2196_tree   = NULL;
    CLOSE_PAR_SYMBOL2198_tree   = NULL;
    CHARSET_SYMBOL2199_tree   = NULL;
    OPEN_PAR_SYMBOL2200_tree   = NULL;
    CLOSE_PAR_SYMBOL2202_tree   = NULL;
    COALESCE_SYMBOL2203_tree   = NULL;
    COLLATION_SYMBOL2205_tree   = NULL;
    OPEN_PAR_SYMBOL2206_tree   = NULL;
    CLOSE_PAR_SYMBOL2208_tree   = NULL;
    DATABASE_SYMBOL2209_tree   = NULL;
    IF_SYMBOL2211_tree   = NULL;
    OPEN_PAR_SYMBOL2212_tree   = NULL;
    COMMA_SYMBOL2214_tree   = NULL;
    COMMA_SYMBOL2216_tree   = NULL;
    CLOSE_PAR_SYMBOL2218_tree   = NULL;
    FORMAT_SYMBOL2219_tree   = NULL;
    OPEN_PAR_SYMBOL2220_tree   = NULL;
    COMMA_SYMBOL2222_tree   = NULL;
    COMMA_SYMBOL2224_tree   = NULL;
    CLOSE_PAR_SYMBOL2226_tree   = NULL;
    MICROSECOND_SYMBOL2227_tree   = NULL;
    OPEN_PAR_SYMBOL2228_tree   = NULL;
    CLOSE_PAR_SYMBOL2230_tree   = NULL;
    MOD_SYMBOL2231_tree   = NULL;
    OPEN_PAR_SYMBOL2232_tree   = NULL;
    COMMA_SYMBOL2234_tree   = NULL;
    CLOSE_PAR_SYMBOL2236_tree   = NULL;
    OLD_PASSWORD_SYMBOL2237_tree   = NULL;
    OPEN_PAR_SYMBOL2238_tree   = NULL;
    CLOSE_PAR_SYMBOL2240_tree   = NULL;
    PASSWORD_SYMBOL2241_tree   = NULL;
    OPEN_PAR_SYMBOL2242_tree   = NULL;
    CLOSE_PAR_SYMBOL2244_tree   = NULL;
    QUARTER_SYMBOL2245_tree   = NULL;
    OPEN_PAR_SYMBOL2246_tree   = NULL;
    CLOSE_PAR_SYMBOL2248_tree   = NULL;
    REPEAT_SYMBOL2249_tree   = NULL;
    OPEN_PAR_SYMBOL2250_tree   = NULL;
    COMMA_SYMBOL2252_tree   = NULL;
    CLOSE_PAR_SYMBOL2254_tree   = NULL;
    REPLACE_SYMBOL2255_tree   = NULL;
    OPEN_PAR_SYMBOL2256_tree   = NULL;
    COMMA_SYMBOL2258_tree   = NULL;
    COMMA_SYMBOL2260_tree   = NULL;
    CLOSE_PAR_SYMBOL2262_tree   = NULL;
    REVERSE_SYMBOL2263_tree   = NULL;
    OPEN_PAR_SYMBOL2264_tree   = NULL;
    CLOSE_PAR_SYMBOL2266_tree   = NULL;
    ROW_COUNT_SYMBOL2267_tree   = NULL;
    TRUNCATE_SYMBOL2269_tree   = NULL;
    OPEN_PAR_SYMBOL2270_tree   = NULL;
    COMMA_SYMBOL2272_tree   = NULL;
    CLOSE_PAR_SYMBOL2274_tree   = NULL;
    WEEK_SYMBOL2275_tree   = NULL;
    OPEN_PAR_SYMBOL2276_tree   = NULL;
    COMMA_SYMBOL2278_tree   = NULL;
    CLOSE_PAR_SYMBOL2280_tree   = NULL;
    WEIGHT_STRING_SYMBOL2281_tree   = NULL;
    OPEN_PAR_SYMBOL2282_tree   = NULL;
    AS_SYMBOL2284_tree   = NULL;
    CHAR_SYMBOL2285_tree   = NULL;
    AS_SYMBOL2288_tree   = NULL;
    BINARY_SYMBOL2289_tree   = NULL;
    COMMA_SYMBOL2291_tree   = NULL;
    COMMA_SYMBOL2293_tree   = NULL;
    COMMA_SYMBOL2295_tree   = NULL;
    CLOSE_PAR_SYMBOL2297_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2339: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 == 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 || ((LA655_0 >= BIT_AND_SYMBOL) && (LA655_0 <= BIT_XOR_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:2341:2: CHAR_SYMBOL OPEN_PAR_SYMBOL expression_list ( USING_SYMBOL charset_name )? CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CHAR_SYMBOL2066 = (pANTLR3_COMMON_TOKEN) MATCHT(CHAR_SYMBOL, &FOLLOW_CHAR_SYMBOL_in_runtime_function_call_expression11522);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CHAR_SYMBOL2066_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHAR_SYMBOL2066));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CHAR_SYMBOL2066_tree);
        	        }

        	        OPEN_PAR_SYMBOL2067 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11524);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2067_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2067));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2067_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_list_in_runtime_function_call_expression11526);
        	        expression_list2068=expression_list(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression_list2068.tree);

        	        // MySQL.g:2341:46: ( USING_SYMBOL charset_name )?
        	        {
        	            int alt640=2;
        	            switch ( LA(1) )
        	            {
        	                case USING_SYMBOL:
        	                	{
        	                		alt640=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt640)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2341:47: USING_SYMBOL charset_name
        	        	    {
        	        	        USING_SYMBOL2069 = (pANTLR3_COMMON_TOKEN) MATCHT(USING_SYMBOL, &FOLLOW_USING_SYMBOL_in_runtime_function_call_expression11529);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        USING_SYMBOL2069_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USING_SYMBOL2069));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, USING_SYMBOL2069_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_charset_name_in_runtime_function_call_expression11531);
        	        	        charset_name2070=charset_name(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset_name2070.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        CLOSE_PAR_SYMBOL2071 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11535);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2071_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2071));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2071_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2342:4: CURRENT_USER_SYMBOL ( parentheses )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CURRENT_USER_SYMBOL2072 = (pANTLR3_COMMON_TOKEN) MATCHT(CURRENT_USER_SYMBOL, &FOLLOW_CURRENT_USER_SYMBOL_in_runtime_function_call_expression11540);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CURRENT_USER_SYMBOL2072_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CURRENT_USER_SYMBOL2072));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CURRENT_USER_SYMBOL2072_tree);
        	        }

        	        // MySQL.g:2342:24: ( parentheses )?
        	        {
        	            int alt641=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt641=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt641)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2342:24: parentheses
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_parentheses_in_runtime_function_call_expression11542);
        	        	        parentheses2073=parentheses(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, parentheses2073.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2343:4: DATE_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DATE_SYMBOL2074 = (pANTLR3_COMMON_TOKEN) MATCHT(DATE_SYMBOL, &FOLLOW_DATE_SYMBOL_in_runtime_function_call_expression11548);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DATE_SYMBOL2074_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATE_SYMBOL2074));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DATE_SYMBOL2074_tree);
        	        }

        	        OPEN_PAR_SYMBOL2075 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11550);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2075_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2075));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2075_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11552);
        	        expression2076=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2076.tree);

        	        CLOSE_PAR_SYMBOL2077 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11554);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2077_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2077));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2077_tree);
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:2344:4: DAY_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DAY_SYMBOL2078 = (pANTLR3_COMMON_TOKEN) MATCHT(DAY_SYMBOL, &FOLLOW_DAY_SYMBOL_in_runtime_function_call_expression11559);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DAY_SYMBOL2078_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DAY_SYMBOL2078));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DAY_SYMBOL2078_tree);
        	        }

        	        OPEN_PAR_SYMBOL2079 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11561);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2079_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2079));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2079_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11563);
        	        expression2080=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2080.tree);

        	        CLOSE_PAR_SYMBOL2081 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11565);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2081_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2081));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2081_tree);
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:2345:4: HOUR_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        HOUR_SYMBOL2082 = (pANTLR3_COMMON_TOKEN) MATCHT(HOUR_SYMBOL, &FOLLOW_HOUR_SYMBOL_in_runtime_function_call_expression11570);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        HOUR_SYMBOL2082_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, HOUR_SYMBOL2082));
        	        ADAPTOR->addChild(ADAPTOR, root_0, HOUR_SYMBOL2082_tree);
        	        }

        	        OPEN_PAR_SYMBOL2083 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11572);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2083_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2083));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2083_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11574);
        	        expression2084=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2084.tree);

        	        CLOSE_PAR_SYMBOL2085 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11576);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2085_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2085));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2085_tree);
        	        }

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:2346: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_SYMBOL2086 = (pANTLR3_COMMON_TOKEN) MATCHT(INSERT_SYMBOL, &FOLLOW_INSERT_SYMBOL_in_runtime_function_call_expression11581);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INSERT_SYMBOL2086_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INSERT_SYMBOL2086));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INSERT_SYMBOL2086_tree);
        	        }

        	        OPEN_PAR_SYMBOL2087 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11583);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2087_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2087));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2087_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11585);
        	        expression2088=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2088.tree);

        	        COMMA_SYMBOL2089 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11587);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL2089_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2089));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2089_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11589);
        	        expression2090=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2090.tree);

        	        COMMA_SYMBOL2091 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11591);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL2091_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2091));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2091_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11593);
        	        expression2092=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2092.tree);

        	        COMMA_SYMBOL2093 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11595);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL2093_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2093));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2093_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11597);
        	        expression2094=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2094.tree);

        	        CLOSE_PAR_SYMBOL2095 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11599);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2095_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2095));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2095_tree);
        	        }

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:2348:4: LEFT_SYMBOL OPEN_PAR_SYMBOL expression COMMA_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        LEFT_SYMBOL2096 = (pANTLR3_COMMON_TOKEN) MATCHT(LEFT_SYMBOL, &FOLLOW_LEFT_SYMBOL_in_runtime_function_call_expression11606);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LEFT_SYMBOL2096_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LEFT_SYMBOL2096));
        	        ADAPTOR->addChild(ADAPTOR, root_0, LEFT_SYMBOL2096_tree);
        	        }

        	        OPEN_PAR_SYMBOL2097 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11608);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2097_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2097));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2097_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11610);
        	        expression2098=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2098.tree);

        	        COMMA_SYMBOL2099 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11612);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL2099_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2099));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2099_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11614);
        	        expression2100=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2100.tree);

        	        CLOSE_PAR_SYMBOL2101 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11616);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2101_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2101));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2101_tree);
        	        }

        	    }
        	    break;
        	case 8:
        	    // MySQL.g:2349:4: MINUTE_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MINUTE_SYMBOL2102 = (pANTLR3_COMMON_TOKEN) MATCHT(MINUTE_SYMBOL, &FOLLOW_MINUTE_SYMBOL_in_runtime_function_call_expression11621);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MINUTE_SYMBOL2102_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MINUTE_SYMBOL2102));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MINUTE_SYMBOL2102_tree);
        	        }

        	        OPEN_PAR_SYMBOL2103 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11623);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2103_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2103));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2103_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11625);
        	        expression2104=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2104.tree);

        	        CLOSE_PAR_SYMBOL2105 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11627);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2105_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2105));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2105_tree);
        	        }

        	    }
        	    break;
        	case 9:
        	    // MySQL.g:2350:4: MONTH_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MONTH_SYMBOL2106 = (pANTLR3_COMMON_TOKEN) MATCHT(MONTH_SYMBOL, &FOLLOW_MONTH_SYMBOL_in_runtime_function_call_expression11632);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MONTH_SYMBOL2106_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MONTH_SYMBOL2106));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MONTH_SYMBOL2106_tree);
        	        }

        	        OPEN_PAR_SYMBOL2107 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11634);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2107_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2107));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2107_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11636);
        	        expression2108=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2108.tree);

        	        CLOSE_PAR_SYMBOL2109 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11638);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2109_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2109));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2109_tree);
        	        }

        	    }
        	    break;
        	case 10:
        	    // MySQL.g:2351:4: RIGHT_SYMBOL OPEN_PAR_SYMBOL expression COMMA_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        RIGHT_SYMBOL2110 = (pANTLR3_COMMON_TOKEN) MATCHT(RIGHT_SYMBOL, &FOLLOW_RIGHT_SYMBOL_in_runtime_function_call_expression11643);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        RIGHT_SYMBOL2110_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RIGHT_SYMBOL2110));
        	        ADAPTOR->addChild(ADAPTOR, root_0, RIGHT_SYMBOL2110_tree);
        	        }

        	        OPEN_PAR_SYMBOL2111 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11645);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2111_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2111));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2111_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11647);
        	        expression2112=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2112.tree);

        	        COMMA_SYMBOL2113 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11649);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL2113_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2113));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2113_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11651);
        	        expression2114=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2114.tree);

        	        CLOSE_PAR_SYMBOL2115 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11653);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2115_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2115));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2115_tree);
        	        }

        	    }
        	    break;
        	case 11:
        	    // MySQL.g:2352:4: SECOND_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SECOND_SYMBOL2116 = (pANTLR3_COMMON_TOKEN) MATCHT(SECOND_SYMBOL, &FOLLOW_SECOND_SYMBOL_in_runtime_function_call_expression11658);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SECOND_SYMBOL2116_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SECOND_SYMBOL2116));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SECOND_SYMBOL2116_tree);
        	        }

        	        OPEN_PAR_SYMBOL2117 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11660);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2117_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2117));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2117_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11662);
        	        expression2118=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2118.tree);

        	        CLOSE_PAR_SYMBOL2119 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11664);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2119_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2119));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2119_tree);
        	        }

        	    }
        	    break;
        	case 12:
        	    // MySQL.g:2353:4: TIME_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        TIME_SYMBOL2120 = (pANTLR3_COMMON_TOKEN) MATCHT(TIME_SYMBOL, &FOLLOW_TIME_SYMBOL_in_runtime_function_call_expression11669);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TIME_SYMBOL2120_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TIME_SYMBOL2120));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TIME_SYMBOL2120_tree);
        	        }

        	        OPEN_PAR_SYMBOL2121 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11671);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2121_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2121));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2121_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11673);
        	        expression2122=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2122.tree);

        	        CLOSE_PAR_SYMBOL2123 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11675);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2123_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2123));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2123_tree);
        	        }

        	    }
        	    break;
        	case 13:
        	    // MySQL.g:2354:4: TIMESTAMP_SYMBOL OPEN_PAR_SYMBOL expression ( COMMA_SYMBOL expression )? CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        TIMESTAMP_SYMBOL2124 = (pANTLR3_COMMON_TOKEN) MATCHT(TIMESTAMP_SYMBOL, &FOLLOW_TIMESTAMP_SYMBOL_in_runtime_function_call_expression11680);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TIMESTAMP_SYMBOL2124_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TIMESTAMP_SYMBOL2124));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TIMESTAMP_SYMBOL2124_tree);
        	        }

        	        OPEN_PAR_SYMBOL2125 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11682);
        	        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_expression11684);
        	        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);

        	        // MySQL.g:2354:48: ( COMMA_SYMBOL expression )?
        	        {
        	            int alt642=2;
        	            switch ( LA(1) )
        	            {
        	                case COMMA_SYMBOL:
        	                	{
        	                		alt642=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt642)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2354:49: COMMA_SYMBOL expression
        	        	    {
        	        	        COMMA_SYMBOL2127 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11687);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        COMMA_SYMBOL2127_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2127));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2127_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11689);
        	        	        expression2128=expression(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2128.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        CLOSE_PAR_SYMBOL2129 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11693);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2129_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2129));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2129_tree);
        	        }

        	    }
        	    break;
        	case 14:
        	    // MySQL.g:2355:4: trim_function
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_trim_function_in_runtime_function_call_expression11698);
        	        trim_function2130=trim_function(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, trim_function2130.tree);

        	    }
        	    break;
        	case 15:
        	    // MySQL.g:2356:4: USER_SYMBOL parentheses
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        USER_SYMBOL2131 = (pANTLR3_COMMON_TOKEN) MATCHT(USER_SYMBOL, &FOLLOW_USER_SYMBOL_in_runtime_function_call_expression11703);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        USER_SYMBOL2131_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USER_SYMBOL2131));
        	        ADAPTOR->addChild(ADAPTOR, root_0, USER_SYMBOL2131_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_parentheses_in_runtime_function_call_expression11705);
        	        parentheses2132=parentheses(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, parentheses2132.tree);

        	    }
        	    break;
        	case 16:
        	    // MySQL.g:2357:4: VALUES_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        VALUES_SYMBOL2133 = (pANTLR3_COMMON_TOKEN) MATCHT(VALUES_SYMBOL, &FOLLOW_VALUES_SYMBOL_in_runtime_function_call_expression11710);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        VALUES_SYMBOL2133_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VALUES_SYMBOL2133));
        	        ADAPTOR->addChild(ADAPTOR, root_0, VALUES_SYMBOL2133_tree);
        	        }

        	        OPEN_PAR_SYMBOL2134 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11712);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2134_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2134));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2134_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11714);
        	        expression2135=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2135.tree);

        	        CLOSE_PAR_SYMBOL2136 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11716);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2136_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2136));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2136_tree);
        	        }

        	    }
        	    break;
        	case 17:
        	    // MySQL.g:2358:4: YEAR_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        YEAR_SYMBOL2137 = (pANTLR3_COMMON_TOKEN) MATCHT(YEAR_SYMBOL, &FOLLOW_YEAR_SYMBOL_in_runtime_function_call_expression11721);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        YEAR_SYMBOL2137_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, YEAR_SYMBOL2137));
        	        ADAPTOR->addChild(ADAPTOR, root_0, YEAR_SYMBOL2137_tree);
        	        }

        	        OPEN_PAR_SYMBOL2138 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11723);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2138_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2138));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2138_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11725);
        	        expression2139=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2139.tree);

        	        CLOSE_PAR_SYMBOL2140 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11727);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2140_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2140));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2140_tree);
        	        }

        	    }
        	    break;
        	case 18:
        	    // MySQL.g:2361:4: ( ADDDATE_SYMBOL | SUBDATE_SYMBOL ) OPEN_PAR_SYMBOL expression COMMA_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        set2141=(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, set2141))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>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_SYMBOL2142 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11743);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2142_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2142));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2142_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11745);
        	        expression2143=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2143.tree);

        	        COMMA_SYMBOL2144 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11747);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL2144_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2144));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2144_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11749);
        	        expression2145=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2145.tree);

        	        CLOSE_PAR_SYMBOL2146 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11751);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2146_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2146));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2146_tree);
        	        }

        	    }
        	    break;
        	case 19:
        	    // MySQL.g:2362:4: CURDATE_SYMBOL ( parentheses )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CURDATE_SYMBOL2147 = (pANTLR3_COMMON_TOKEN) MATCHT(CURDATE_SYMBOL, &FOLLOW_CURDATE_SYMBOL_in_runtime_function_call_expression11756);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CURDATE_SYMBOL2147_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CURDATE_SYMBOL2147));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CURDATE_SYMBOL2147_tree);
        	        }

        	        // MySQL.g:2362:19: ( parentheses )?
        	        {
        	            int alt643=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt643=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt643)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2362:19: parentheses
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_parentheses_in_runtime_function_call_expression11758);
        	        	        parentheses2148=parentheses(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, parentheses2148.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 20:
        	    // MySQL.g:2363:4: CURTIME_SYMBOL ( time_function_parameters )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CURTIME_SYMBOL2149 = (pANTLR3_COMMON_TOKEN) MATCHT(CURTIME_SYMBOL, &FOLLOW_CURTIME_SYMBOL_in_runtime_function_call_expression11764);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CURTIME_SYMBOL2149_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CURTIME_SYMBOL2149));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CURTIME_SYMBOL2149_tree);
        	        }

        	        // MySQL.g:2363:19: ( time_function_parameters )?
        	        {
        	            int alt644=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt644=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt644)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2363:19: time_function_parameters
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_time_function_parameters_in_runtime_function_call_expression11766);
        	        	        time_function_parameters2150=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_parameters2150.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 21:
        	    // MySQL.g:2364: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));


        	        set2151=(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, set2151))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>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_SYMBOL2152 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11780);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2152_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2152));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2152_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11782);
        	        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);

        	        COMMA_SYMBOL2154 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11784);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL2154_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2154));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2154_tree);
        	        }

        	        INTERVAL_SYMBOL2155 = (pANTLR3_COMMON_TOKEN) MATCHT(INTERVAL_SYMBOL, &FOLLOW_INTERVAL_SYMBOL_in_runtime_function_call_expression11786);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INTERVAL_SYMBOL2155_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTERVAL_SYMBOL2155));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INTERVAL_SYMBOL2155_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_interval_in_runtime_function_call_expression11788);
        	        interval2156=interval(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, interval2156.tree);

        	        CLOSE_PAR_SYMBOL2157 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11790);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2157_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2157));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2157_tree);
        	        }

        	    }
        	    break;
        	case 22:
        	    // MySQL.g:2365:4: EXTRACT_SYMBOL OPEN_PAR_SYMBOL interval_unit FROM_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        EXTRACT_SYMBOL2158 = (pANTLR3_COMMON_TOKEN) MATCHT(EXTRACT_SYMBOL, &FOLLOW_EXTRACT_SYMBOL_in_runtime_function_call_expression11795);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EXTRACT_SYMBOL2158_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EXTRACT_SYMBOL2158));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EXTRACT_SYMBOL2158_tree);
        	        }

        	        OPEN_PAR_SYMBOL2159 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11797);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2159_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2159));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2159_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_interval_unit_in_runtime_function_call_expression11799);
        	        interval_unit2160=interval_unit(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, interval_unit2160.tree);

        	        FROM_SYMBOL2161 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_runtime_function_call_expression11801);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FROM_SYMBOL2161_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL2161));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL2161_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11803);
        	        expression2162=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2162.tree);

        	        CLOSE_PAR_SYMBOL2163 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11805);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2163_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2163));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2163_tree);
        	        }

        	    }
        	    break;
        	case 23:
        	    // MySQL.g:2366: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_SYMBOL2164 = (pANTLR3_COMMON_TOKEN) MATCHT(GET_FORMAT_SYMBOL, &FOLLOW_GET_FORMAT_SYMBOL_in_runtime_function_call_expression11810);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        GET_FORMAT_SYMBOL2164_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GET_FORMAT_SYMBOL2164));
        	        ADAPTOR->addChild(ADAPTOR, root_0, GET_FORMAT_SYMBOL2164_tree);
        	        }

        	        OPEN_PAR_SYMBOL2165 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11812);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2165_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2165));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2165_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_date_time_type_in_runtime_function_call_expression11814);
        	        date_time_type2166=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_type2166.tree);

        	        COMMA_SYMBOL2167 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11817);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL2167_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2167));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2167_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11819);
        	        expression2168=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2168.tree);

        	        CLOSE_PAR_SYMBOL2169 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11821);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2169_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2169));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2169_tree);
        	        }

        	    }
        	    break;
        	case 24:
        	    // MySQL.g:2367:4: NOW_SYMBOL ( time_function_parameters )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NOW_SYMBOL2170 = (pANTLR3_COMMON_TOKEN) MATCHT(NOW_SYMBOL, &FOLLOW_NOW_SYMBOL_in_runtime_function_call_expression11826);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NOW_SYMBOL2170_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NOW_SYMBOL2170));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NOW_SYMBOL2170_tree);
        	        }

        	        // MySQL.g:2367:15: ( time_function_parameters )?
        	        {
        	            int alt645=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt645=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt645)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2367:15: time_function_parameters
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_time_function_parameters_in_runtime_function_call_expression11828);
        	        	        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 25:
        	    // MySQL.g:2368:4: POSITION_SYMBOL OPEN_PAR_SYMBOL bitwise_or_expression IN_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        POSITION_SYMBOL2172 = (pANTLR3_COMMON_TOKEN) MATCHT(POSITION_SYMBOL, &FOLLOW_POSITION_SYMBOL_in_runtime_function_call_expression11834);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        POSITION_SYMBOL2172_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, POSITION_SYMBOL2172));
        	        ADAPTOR->addChild(ADAPTOR, root_0, POSITION_SYMBOL2172_tree);
        	        }

        	        OPEN_PAR_SYMBOL2173 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11836);
        	        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_bitwise_or_expression_in_runtime_function_call_expression11838);
        	        bitwise_or_expression2174=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_expression2174.tree);

        	        IN_SYMBOL2175 = (pANTLR3_COMMON_TOKEN) MATCHT(IN_SYMBOL, &FOLLOW_IN_SYMBOL_in_runtime_function_call_expression11840);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        IN_SYMBOL2175_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IN_SYMBOL2175));
        	        ADAPTOR->addChild(ADAPTOR, root_0, IN_SYMBOL2175_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11842);
        	        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);

        	        CLOSE_PAR_SYMBOL2177 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11844);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2177_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2177));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2177_tree);
        	        }

        	    }
        	    break;
        	case 26:
        	    // MySQL.g:2369:4: substring_function
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_substring_function_in_runtime_function_call_expression11849);
        	        substring_function2178=substring_function(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, substring_function2178.tree);

        	    }
        	    break;
        	case 27:
        	    // MySQL.g:2370:4: SYSDATE_SYMBOL ( time_function_parameters )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SYSDATE_SYMBOL2179 = (pANTLR3_COMMON_TOKEN) MATCHT(SYSDATE_SYMBOL, &FOLLOW_SYSDATE_SYMBOL_in_runtime_function_call_expression11854);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SYSDATE_SYMBOL2179_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SYSDATE_SYMBOL2179));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SYSDATE_SYMBOL2179_tree);
        	        }

        	        // MySQL.g:2370:19: ( time_function_parameters )?
        	        {
        	            int alt646=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt646=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt646)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2370:19: time_function_parameters
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_time_function_parameters_in_runtime_function_call_expression11856);
        	        	        time_function_parameters2180=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_parameters2180.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 28:
        	    // MySQL.g:2371: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));


        	        set2181=(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, set2181))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>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_SYMBOL2182 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11870);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2182_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2182));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2182_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_interval_timestamp_unit_in_runtime_function_call_expression11872);
        	        interval_timestamp_unit2183=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_unit2183.tree);

        	        COMMA_SYMBOL2184 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11874);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL2184_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2184));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2184_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11876);
        	        expression2185=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2185.tree);

        	        COMMA_SYMBOL2186 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11878);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL2186_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2186));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2186_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11880);
        	        expression2187=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2187.tree);

        	        CLOSE_PAR_SYMBOL2188 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11882);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2188_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2188));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2188_tree);
        	        }

        	    }
        	    break;
        	case 29:
        	    // MySQL.g:2372:4: UTC_DATE_SYMBOL ( parentheses )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        UTC_DATE_SYMBOL2189 = (pANTLR3_COMMON_TOKEN) MATCHT(UTC_DATE_SYMBOL, &FOLLOW_UTC_DATE_SYMBOL_in_runtime_function_call_expression11887);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        UTC_DATE_SYMBOL2189_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UTC_DATE_SYMBOL2189));
        	        ADAPTOR->addChild(ADAPTOR, root_0, UTC_DATE_SYMBOL2189_tree);
        	        }

        	        // MySQL.g:2372:20: ( parentheses )?
        	        {
        	            int alt647=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt647=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt647)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2372:20: parentheses
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_parentheses_in_runtime_function_call_expression11889);
        	        	        parentheses2190=parentheses(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, parentheses2190.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 30:
        	    // MySQL.g:2373:4: UTC_TIME_SYMBOL ( time_function_parameters )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        UTC_TIME_SYMBOL2191 = (pANTLR3_COMMON_TOKEN) MATCHT(UTC_TIME_SYMBOL, &FOLLOW_UTC_TIME_SYMBOL_in_runtime_function_call_expression11895);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        UTC_TIME_SYMBOL2191_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UTC_TIME_SYMBOL2191));
        	        ADAPTOR->addChild(ADAPTOR, root_0, UTC_TIME_SYMBOL2191_tree);
        	        }

        	        // MySQL.g:2373:20: ( time_function_parameters )?
        	        {
        	            int alt648=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt648=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt648)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2373:20: time_function_parameters
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_time_function_parameters_in_runtime_function_call_expression11897);
        	        	        time_function_parameters2192=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_parameters2192.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 31:
        	    // MySQL.g:2374:4: UTC_TIMESTAMP_SYMBOL ( time_function_parameters )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        UTC_TIMESTAMP_SYMBOL2193 = (pANTLR3_COMMON_TOKEN) MATCHT(UTC_TIMESTAMP_SYMBOL, &FOLLOW_UTC_TIMESTAMP_SYMBOL_in_runtime_function_call_expression11903);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        UTC_TIMESTAMP_SYMBOL2193_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UTC_TIMESTAMP_SYMBOL2193));
        	        ADAPTOR->addChild(ADAPTOR, root_0, UTC_TIMESTAMP_SYMBOL2193_tree);
        	        }

        	        // MySQL.g:2374:25: ( time_function_parameters )?
        	        {
        	            int alt649=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt649=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt649)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2374:25: time_function_parameters
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_time_function_parameters_in_runtime_function_call_expression11905);
        	        	        time_function_parameters2194=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_parameters2194.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 32:
        	    // MySQL.g:2377:4: ASCII_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ASCII_SYMBOL2195 = (pANTLR3_COMMON_TOKEN) MATCHT(ASCII_SYMBOL, &FOLLOW_ASCII_SYMBOL_in_runtime_function_call_expression11914);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ASCII_SYMBOL2195_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ASCII_SYMBOL2195));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ASCII_SYMBOL2195_tree);
        	        }

        	        OPEN_PAR_SYMBOL2196 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11916);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2196_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2196));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2196_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11918);
        	        expression2197=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2197.tree);

        	        CLOSE_PAR_SYMBOL2198 = (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_SYMBOL2198_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2198));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2198_tree);
        	        }

        	    }
        	    break;
        	case 33:
        	    // MySQL.g:2378:4: CHARSET_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CHARSET_SYMBOL2199 = (pANTLR3_COMMON_TOKEN) MATCHT(CHARSET_SYMBOL, &FOLLOW_CHARSET_SYMBOL_in_runtime_function_call_expression11925);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CHARSET_SYMBOL2199_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHARSET_SYMBOL2199));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CHARSET_SYMBOL2199_tree);
        	        }

        	        OPEN_PAR_SYMBOL2200 = (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_SYMBOL2200_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2200));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2200_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11929);
        	        expression2201=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2201.tree);

        	        CLOSE_PAR_SYMBOL2202 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11931);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2202_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2202));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2202_tree);
        	        }

        	    }
        	    break;
        	case 34:
        	    // MySQL.g:2379:4: COALESCE_SYMBOL expression_list_with_parentheses
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        COALESCE_SYMBOL2203 = (pANTLR3_COMMON_TOKEN) MATCHT(COALESCE_SYMBOL, &FOLLOW_COALESCE_SYMBOL_in_runtime_function_call_expression11936);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COALESCE_SYMBOL2203_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COALESCE_SYMBOL2203));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COALESCE_SYMBOL2203_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_list_with_parentheses_in_runtime_function_call_expression11938);
        	        expression_list_with_parentheses2204=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_parentheses2204.tree);

        	    }
        	    break;
        	case 35:
        	    // MySQL.g:2380:4: COLLATION_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        COLLATION_SYMBOL2205 = (pANTLR3_COMMON_TOKEN) MATCHT(COLLATION_SYMBOL, &FOLLOW_COLLATION_SYMBOL_in_runtime_function_call_expression11943);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COLLATION_SYMBOL2205_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COLLATION_SYMBOL2205));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COLLATION_SYMBOL2205_tree);
        	        }

        	        OPEN_PAR_SYMBOL2206 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11945);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2206_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2206));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2206_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11947);
        	        expression2207=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2207.tree);

        	        CLOSE_PAR_SYMBOL2208 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11949);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2208_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2208));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2208_tree);
        	        }

        	    }
        	    break;
        	case 36:
        	    // MySQL.g:2381:4: DATABASE_SYMBOL parentheses
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DATABASE_SYMBOL2209 = (pANTLR3_COMMON_TOKEN) MATCHT(DATABASE_SYMBOL, &FOLLOW_DATABASE_SYMBOL_in_runtime_function_call_expression11954);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DATABASE_SYMBOL2209_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATABASE_SYMBOL2209));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DATABASE_SYMBOL2209_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_parentheses_in_runtime_function_call_expression11956);
        	        parentheses2210=parentheses(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, parentheses2210.tree);

        	    }
        	    break;
        	case 37:
        	    // MySQL.g:2382: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_SYMBOL2211 = (pANTLR3_COMMON_TOKEN) MATCHT(IF_SYMBOL, &FOLLOW_IF_SYMBOL_in_runtime_function_call_expression11961);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        IF_SYMBOL2211_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IF_SYMBOL2211));
        	        ADAPTOR->addChild(ADAPTOR, root_0, IF_SYMBOL2211_tree);
        	        }

        	        OPEN_PAR_SYMBOL2212 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11963);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2212_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2212));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2212_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11965);
        	        expression2213=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2213.tree);

        	        COMMA_SYMBOL2214 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11967);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL2214_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2214));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2214_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11969);
        	        expression2215=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2215.tree);

        	        COMMA_SYMBOL2216 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11971);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL2216_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2216));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2216_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11973);
        	        expression2217=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2217.tree);

        	        CLOSE_PAR_SYMBOL2218 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11975);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2218_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2218));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2218_tree);
        	        }

        	    }
        	    break;
        	case 38:
        	    // MySQL.g:2383: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_SYMBOL2219 = (pANTLR3_COMMON_TOKEN) MATCHT(FORMAT_SYMBOL, &FOLLOW_FORMAT_SYMBOL_in_runtime_function_call_expression11980);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FORMAT_SYMBOL2219_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FORMAT_SYMBOL2219));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FORMAT_SYMBOL2219_tree);
        	        }

        	        OPEN_PAR_SYMBOL2220 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11982);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2220_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2220));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2220_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11984);
        	        expression2221=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2221.tree);

        	        COMMA_SYMBOL2222 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11986);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL2222_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2222));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2222_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11988);
        	        expression2223=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2223.tree);

        	        // MySQL.g:2383:69: ( COMMA_SYMBOL expression )?
        	        {
        	            int alt650=2;
        	            switch ( LA(1) )
        	            {
        	                case COMMA_SYMBOL:
        	                	{
        	                		alt650=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt650)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2383:70: COMMA_SYMBOL expression
        	        	    {
        	        	        COMMA_SYMBOL2224 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11991);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        COMMA_SYMBOL2224_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2224));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2224_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11993);
        	        	        expression2225=expression(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2225.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        CLOSE_PAR_SYMBOL2226 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11997);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2226_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2226));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2226_tree);
        	        }

        	    }
        	    break;
        	case 39:
        	    // MySQL.g:2384:4: MICROSECOND_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MICROSECOND_SYMBOL2227 = (pANTLR3_COMMON_TOKEN) MATCHT(MICROSECOND_SYMBOL, &FOLLOW_MICROSECOND_SYMBOL_in_runtime_function_call_expression12002);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MICROSECOND_SYMBOL2227_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MICROSECOND_SYMBOL2227));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MICROSECOND_SYMBOL2227_tree);
        	        }

        	        OPEN_PAR_SYMBOL2228 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12004);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2228_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2228));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2228_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression12006);
        	        expression2229=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2229.tree);

        	        CLOSE_PAR_SYMBOL2230 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12008);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2230_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2230));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2230_tree);
        	        }

        	    }
        	    break;
        	case 40:
        	    // MySQL.g:2385:4: MOD_SYMBOL OPEN_PAR_SYMBOL expression COMMA_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MOD_SYMBOL2231 = (pANTLR3_COMMON_TOKEN) MATCHT(MOD_SYMBOL, &FOLLOW_MOD_SYMBOL_in_runtime_function_call_expression12013);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MOD_SYMBOL2231_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MOD_SYMBOL2231));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MOD_SYMBOL2231_tree);
        	        }

        	        OPEN_PAR_SYMBOL2232 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12015);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2232_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2232));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2232_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression12017);
        	        expression2233=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2233.tree);

        	        COMMA_SYMBOL2234 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12019);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL2234_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2234));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2234_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression12021);
        	        expression2235=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2235.tree);

        	        CLOSE_PAR_SYMBOL2236 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12023);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2236_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2236));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2236_tree);
        	        }

        	    }
        	    break;
        	case 41:
        	    // MySQL.g:2386: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_SYMBOL2237 = (pANTLR3_COMMON_TOKEN) MATCHT(OLD_PASSWORD_SYMBOL, &FOLLOW_OLD_PASSWORD_SYMBOL_in_runtime_function_call_expression12030);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OLD_PASSWORD_SYMBOL2237_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OLD_PASSWORD_SYMBOL2237));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OLD_PASSWORD_SYMBOL2237_tree);
        	        }

        	        OPEN_PAR_SYMBOL2238 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12032);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2238_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2238));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2238_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_runtime_function_call_expression12034);
        	        string_literal2239=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal2239.tree);

        	        CLOSE_PAR_SYMBOL2240 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12036);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2240_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2240));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2240_tree);
        	        }

        	    }
        	    break;
        	case 42:
        	    // MySQL.g:2387:4: PASSWORD_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        PASSWORD_SYMBOL2241 = (pANTLR3_COMMON_TOKEN) MATCHT(PASSWORD_SYMBOL, &FOLLOW_PASSWORD_SYMBOL_in_runtime_function_call_expression12041);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PASSWORD_SYMBOL2241_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PASSWORD_SYMBOL2241));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PASSWORD_SYMBOL2241_tree);
        	        }

        	        OPEN_PAR_SYMBOL2242 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12043);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2242_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2242));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2242_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression12045);
        	        expression2243=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2243.tree);

        	        CLOSE_PAR_SYMBOL2244 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12047);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2244_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2244));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2244_tree);
        	        }

        	    }
        	    break;
        	case 43:
        	    // MySQL.g:2388:4: QUARTER_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        QUARTER_SYMBOL2245 = (pANTLR3_COMMON_TOKEN) MATCHT(QUARTER_SYMBOL, &FOLLOW_QUARTER_SYMBOL_in_runtime_function_call_expression12052);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        QUARTER_SYMBOL2245_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, QUARTER_SYMBOL2245));
        	        ADAPTOR->addChild(ADAPTOR, root_0, QUARTER_SYMBOL2245_tree);
        	        }

        	        OPEN_PAR_SYMBOL2246 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12054);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2246_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2246));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2246_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression12056);
        	        expression2247=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2247.tree);

        	        CLOSE_PAR_SYMBOL2248 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12058);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2248_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2248));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2248_tree);
        	        }

        	    }
        	    break;
        	case 44:
        	    // MySQL.g:2389:4: REPEAT_SYMBOL OPEN_PAR_SYMBOL expression COMMA_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        REPEAT_SYMBOL2249 = (pANTLR3_COMMON_TOKEN) MATCHT(REPEAT_SYMBOL, &FOLLOW_REPEAT_SYMBOL_in_runtime_function_call_expression12063);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        REPEAT_SYMBOL2249_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REPEAT_SYMBOL2249));
        	        ADAPTOR->addChild(ADAPTOR, root_0, REPEAT_SYMBOL2249_tree);
        	        }

        	        OPEN_PAR_SYMBOL2250 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12065);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2250_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2250));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2250_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression12067);
        	        expression2251=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2251.tree);

        	        COMMA_SYMBOL2252 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12069);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL2252_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2252));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2252_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression12071);
        	        expression2253=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2253.tree);

        	        CLOSE_PAR_SYMBOL2254 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12073);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2254_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2254));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2254_tree);
        	        }

        	    }
        	    break;
        	case 45:
        	    // MySQL.g:2390: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_SYMBOL2255 = (pANTLR3_COMMON_TOKEN) MATCHT(REPLACE_SYMBOL, &FOLLOW_REPLACE_SYMBOL_in_runtime_function_call_expression12078);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        REPLACE_SYMBOL2255_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REPLACE_SYMBOL2255));
        	        ADAPTOR->addChild(ADAPTOR, root_0, REPLACE_SYMBOL2255_tree);
        	        }

        	        OPEN_PAR_SYMBOL2256 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12080);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2256_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2256));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2256_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression12082);
        	        expression2257=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2257.tree);

        	        COMMA_SYMBOL2258 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12084);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL2258_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2258));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2258_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression12086);
        	        expression2259=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2259.tree);

        	        COMMA_SYMBOL2260 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12088);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL2260_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2260));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2260_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression12090);
        	        expression2261=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2261.tree);

        	        CLOSE_PAR_SYMBOL2262 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12092);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2262_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2262));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2262_tree);
        	        }

        	    }
        	    break;
        	case 46:
        	    // MySQL.g:2391:4: REVERSE_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        REVERSE_SYMBOL2263 = (pANTLR3_COMMON_TOKEN) MATCHT(REVERSE_SYMBOL, &FOLLOW_REVERSE_SYMBOL_in_runtime_function_call_expression12097);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        REVERSE_SYMBOL2263_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REVERSE_SYMBOL2263));
        	        ADAPTOR->addChild(ADAPTOR, root_0, REVERSE_SYMBOL2263_tree);
        	        }

        	        OPEN_PAR_SYMBOL2264 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12099);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2264_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2264));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2264_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression12101);
        	        expression2265=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2265.tree);

        	        CLOSE_PAR_SYMBOL2266 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12103);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2266_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2266));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2266_tree);
        	        }

        	    }
        	    break;
        	case 47:
        	    // MySQL.g:2392:4: ROW_COUNT_SYMBOL parentheses
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ROW_COUNT_SYMBOL2267 = (pANTLR3_COMMON_TOKEN) MATCHT(ROW_COUNT_SYMBOL, &FOLLOW_ROW_COUNT_SYMBOL_in_runtime_function_call_expression12108);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ROW_COUNT_SYMBOL2267_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ROW_COUNT_SYMBOL2267));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ROW_COUNT_SYMBOL2267_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_parentheses_in_runtime_function_call_expression12110);
        	        parentheses2268=parentheses(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, parentheses2268.tree);

        	    }
        	    break;
        	case 48:
        	    // MySQL.g:2393:4: TRUNCATE_SYMBOL OPEN_PAR_SYMBOL expression COMMA_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        TRUNCATE_SYMBOL2269 = (pANTLR3_COMMON_TOKEN) MATCHT(TRUNCATE_SYMBOL, &FOLLOW_TRUNCATE_SYMBOL_in_runtime_function_call_expression12115);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TRUNCATE_SYMBOL2269_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TRUNCATE_SYMBOL2269));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TRUNCATE_SYMBOL2269_tree);
        	        }

        	        OPEN_PAR_SYMBOL2270 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12117);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2270_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2270));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2270_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression12119);
        	        expression2271=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2271.tree);

        	        COMMA_SYMBOL2272 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12121);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL2272_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2272));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2272_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression12123);
        	        expression2273=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2273.tree);

        	        CLOSE_PAR_SYMBOL2274 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12125);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2274_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2274));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2274_tree);
        	        }

        	    }
        	    break;
        	case 49:
        	    // MySQL.g:2394:4: WEEK_SYMBOL OPEN_PAR_SYMBOL expression ( COMMA_SYMBOL expression )? CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        WEEK_SYMBOL2275 = (pANTLR3_COMMON_TOKEN) MATCHT(WEEK_SYMBOL, &FOLLOW_WEEK_SYMBOL_in_runtime_function_call_expression12130);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        WEEK_SYMBOL2275_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WEEK_SYMBOL2275));
        	        ADAPTOR->addChild(ADAPTOR, root_0, WEEK_SYMBOL2275_tree);
        	        }

        	        OPEN_PAR_SYMBOL2276 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12132);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2276_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2276));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2276_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression12134);
        	        expression2277=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2277.tree);

        	        // MySQL.g:2394:43: ( COMMA_SYMBOL expression )?
        	        {
        	            int alt651=2;
        	            switch ( LA(1) )
        	            {
        	                case COMMA_SYMBOL:
        	                	{
        	                		alt651=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt651)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2394:44: COMMA_SYMBOL expression
        	        	    {
        	        	        COMMA_SYMBOL2278 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12137);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        COMMA_SYMBOL2278_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2278));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2278_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression12139);
        	        	        expression2279=expression(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2279.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        CLOSE_PAR_SYMBOL2280 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12143);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2280_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2280));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2280_tree);
        	        }

        	    }
        	    break;
        	case 50:
        	    // MySQL.g:2395: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_SYMBOL2281 = (pANTLR3_COMMON_TOKEN) MATCHT(WEIGHT_STRING_SYMBOL, &FOLLOW_WEIGHT_STRING_SYMBOL_in_runtime_function_call_expression12150);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        WEIGHT_STRING_SYMBOL2281_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WEIGHT_STRING_SYMBOL2281));
        	        ADAPTOR->addChild(ADAPTOR, root_0, WEIGHT_STRING_SYMBOL2281_tree);
        	        }

        	        OPEN_PAR_SYMBOL2282 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12152);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2282_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2282));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2282_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression12154);
        	        expression2283=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2283.tree);

        	        // MySQL.g:2396: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:2397:4: ( AS_SYMBOL CHAR_SYMBOL field_length )? ( weight_string_levels )?
        	        	    {
        	        	        // MySQL.g:2397: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:2397:5: AS_SYMBOL CHAR_SYMBOL field_length
        	        	        	    {
        	        	        	        AS_SYMBOL2284 = (pANTLR3_COMMON_TOKEN) MATCHT(AS_SYMBOL, &FOLLOW_AS_SYMBOL_in_runtime_function_call_expression12164);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        AS_SYMBOL2284_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AS_SYMBOL2284));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, AS_SYMBOL2284_tree);
        	        	        	        }

        	        	        	        CHAR_SYMBOL2285 = (pANTLR3_COMMON_TOKEN) MATCHT(CHAR_SYMBOL, &FOLLOW_CHAR_SYMBOL_in_runtime_function_call_expression12166);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        CHAR_SYMBOL2285_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHAR_SYMBOL2285));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, CHAR_SYMBOL2285_tree);
        	        	        	        }

        	        	        	        FOLLOWPUSH(FOLLOW_field_length_in_runtime_function_call_expression12168);
        	        	        	        field_length2286=field_length(ctx);

        	        	        	        FOLLOWPOP();
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_length2286.tree);

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        // MySQL.g:2397:42: ( weight_string_levels )?
        	        	        {
        	        	            int alt653=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	                case LEVEL_SYMBOL:
        	        	                	{
        	        	                		alt653=1;
        	        	                	}
        	        	                    break;
        	        	            }

        	        	            switch (alt653)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:2397:42: weight_string_levels
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_weight_string_levels_in_runtime_function_call_expression12172);
        	        	        	        weight_string_levels2287=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_levels2287.tree);

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:2398:6: AS_SYMBOL BINARY_SYMBOL field_length
        	        	    {
        	        	        AS_SYMBOL2288 = (pANTLR3_COMMON_TOKEN) MATCHT(AS_SYMBOL, &FOLLOW_AS_SYMBOL_in_runtime_function_call_expression12180);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        AS_SYMBOL2288_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AS_SYMBOL2288));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, AS_SYMBOL2288_tree);
        	        	        }

        	        	        BINARY_SYMBOL2289 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_runtime_function_call_expression12182);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        BINARY_SYMBOL2289_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL2289));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL2289_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_field_length_in_runtime_function_call_expression12184);
        	        	        field_length2290=field_length(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_length2290.tree);

        	        	    }
        	        	    break;
        	        	case 3:
        	        	    // MySQL.g:2399:6: COMMA_SYMBOL ulong_number COMMA_SYMBOL ulong_number COMMA_SYMBOL ulong_number
        	        	    {
        	        	        COMMA_SYMBOL2291 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12191);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        COMMA_SYMBOL2291_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2291));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2291_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_ulong_number_in_runtime_function_call_expression12193);
        	        	        ulong_number2292=ulong_number(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number2292.tree);

        	        	        COMMA_SYMBOL2293 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12195);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        COMMA_SYMBOL2293_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2293));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2293_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_ulong_number_in_runtime_function_call_expression12197);
        	        	        ulong_number2294=ulong_number(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number2294.tree);

        	        	        COMMA_SYMBOL2295 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12199);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        COMMA_SYMBOL2295_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2295));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2295_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_ulong_number_in_runtime_function_call_expression12201);
        	        	        ulong_number2296=ulong_number(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number2296.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        CLOSE_PAR_SYMBOL2297 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12209);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2297_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2297));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2297_tree);
        	        }

        	    }
        	    break;
        	case 51:
        	    // MySQL.g:2402:4: geometry_function
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_geometry_function_in_runtime_function_call_expression12214);
        	        geometry_function2298=geometry_function(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, geometry_function2298.tree);

        	    }
        	    break;
        	case 52:
        	    // MySQL.g:2403:4: aggregate_function
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_aggregate_function_in_runtime_function_call_expression12219);
        	        aggregate_function2299=aggregate_function(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, aggregate_function2299.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:2406: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_SYMBOL2300;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2302;
    MySQLParser_fractional_precision_return fractional_precision2301;
    #undef	RETURN_TYPE_fractional_precision2301
    #define	RETURN_TYPE_fractional_precision2301 MySQLParser_fractional_precision_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2300_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2302_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL2300       = NULL;
    CLOSE_PAR_SYMBOL2302       = NULL;
    fractional_precision2301.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL2300_tree   = NULL;
    CLOSE_PAR_SYMBOL2302_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2406:25: ( OPEN_PAR_SYMBOL ( fractional_precision )? CLOSE_PAR_SYMBOL )
        // MySQL.g:2407:2: OPEN_PAR_SYMBOL ( fractional_precision )? CLOSE_PAR_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            OPEN_PAR_SYMBOL2300 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_time_function_parameters12228);
            if  (HASEXCEPTION())
            {
                goto ruletime_function_parametersEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL2300_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2300));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2300_tree);
            }

            // MySQL.g:2407: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:2407:18: fractional_precision
            	    {
            	        FOLLOWPUSH(FOLLOW_fractional_precision_in_time_function_parameters12230);
            	        fractional_precision2301=fractional_precision(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletime_function_parametersEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, fractional_precision2301.tree);

            	    }
            	    break;

                }
            }

            CLOSE_PAR_SYMBOL2302 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_time_function_parameters12233);
            if  (HASEXCEPTION())
            {
                goto ruletime_function_parametersEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL2302_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2302));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2302_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:2410: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_NUMBER2303;

    pANTLR3_BASE_TREE INT_NUMBER2303_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    INT_NUMBER2303       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    INT_NUMBER2303_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2410:21: ({...}? => INT_NUMBER )
        // MySQL.g:2411: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_NUMBER2303 = (pANTLR3_COMMON_TOKEN) MATCHT(INT_NUMBER, &FOLLOW_INT_NUMBER_in_fractional_precision12246);
            if  (HASEXCEPTION())
            {
                goto rulefractional_precisionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            INT_NUMBER2303_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INT_NUMBER2303));
            ADAPTOR->addChild(ADAPTOR, root_0, INT_NUMBER2303_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:2414: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_SYMBOL2304;
    pANTLR3_COMMON_TOKEN    MINUS_OPERATOR2306;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2309;
    MySQLParser_real_ulong_number_return real_ulong_number2305;
    #undef	RETURN_TYPE_real_ulong_number2305
    #define	RETURN_TYPE_real_ulong_number2305 MySQLParser_real_ulong_number_return

    MySQLParser_real_ulong_number_return real_ulong_number2307;
    #undef	RETURN_TYPE_real_ulong_number2307
    #define	RETURN_TYPE_real_ulong_number2307 MySQLParser_real_ulong_number_return

    MySQLParser_weight_string_level_list_item_return weight_string_level_list_item2308;
    #undef	RETURN_TYPE_weight_string_level_list_item2308
    #define	RETURN_TYPE_weight_string_level_list_item2308 MySQLParser_weight_string_level_list_item_return

    MySQLParser_weight_string_level_list_item_return weight_string_level_list_item2310;
    #undef	RETURN_TYPE_weight_string_level_list_item2310
    #define	RETURN_TYPE_weight_string_level_list_item2310 MySQLParser_weight_string_level_list_item_return

    pANTLR3_BASE_TREE LEVEL_SYMBOL2304_tree;
    pANTLR3_BASE_TREE MINUS_OPERATOR2306_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2309_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    LEVEL_SYMBOL2304       = NULL;
    MINUS_OPERATOR2306       = NULL;
    COMMA_SYMBOL2309       = NULL;
    real_ulong_number2305.tree = NULL;

    real_ulong_number2307.tree = NULL;

    weight_string_level_list_item2308.tree = NULL;

    weight_string_level_list_item2310.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    LEVEL_SYMBOL2304_tree   = NULL;
    MINUS_OPERATOR2306_tree   = NULL;
    COMMA_SYMBOL2309_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2414: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:2415: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_SYMBOL2304 = (pANTLR3_COMMON_TOKEN) MATCHT(LEVEL_SYMBOL, &FOLLOW_LEVEL_SYMBOL_in_weight_string_levels12255);
            if  (HASEXCEPTION())
            {
                goto ruleweight_string_levelsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            LEVEL_SYMBOL2304_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LEVEL_SYMBOL2304));
            ADAPTOR->addChild(ADAPTOR, root_0, LEVEL_SYMBOL2304_tree);
            }

            // MySQL.g:2416: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 DESC_SYMBOL:
                		case CLOSE_PAR_SYMBOL:
                		case COMMA_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:2417:3: real_ulong_number MINUS_OPERATOR real_ulong_number
            	    {
            	        FOLLOWPUSH(FOLLOW_real_ulong_number_in_weight_string_levels12262);
            	        real_ulong_number2305=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_number2305.tree);

            	        MINUS_OPERATOR2306 = (pANTLR3_COMMON_TOKEN) MATCHT(MINUS_OPERATOR, &FOLLOW_MINUS_OPERATOR_in_weight_string_levels12264);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleweight_string_levelsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        MINUS_OPERATOR2306_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MINUS_OPERATOR2306));
            	        ADAPTOR->addChild(ADAPTOR, root_0, MINUS_OPERATOR2306_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_real_ulong_number_in_weight_string_levels12266);
            	        real_ulong_number2307=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_number2307.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2418:5: weight_string_level_list_item ( COMMA_SYMBOL weight_string_level_list_item )*
            	    {
            	        FOLLOWPUSH(FOLLOW_weight_string_level_list_item_in_weight_string_levels12272);
            	        weight_string_level_list_item2308=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_item2308.tree);

            	        // MySQL.g:2418: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:2418:36: COMMA_SYMBOL weight_string_level_list_item
            	        	    {
            	        	        COMMA_SYMBOL2309 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_weight_string_levels12275);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleweight_string_levelsEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        COMMA_SYMBOL2309_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2309));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2309_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_weight_string_level_list_item_in_weight_string_levels12277);
            	        	        weight_string_level_list_item2310=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_item2310.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:2422: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    set2312;
    pANTLR3_COMMON_TOKEN    REVERSE_SYMBOL2313;
    pANTLR3_COMMON_TOKEN    REVERSE_SYMBOL2314;
    MySQLParser_real_ulong_number_return real_ulong_number2311;
    #undef	RETURN_TYPE_real_ulong_number2311
    #define	RETURN_TYPE_real_ulong_number2311 MySQLParser_real_ulong_number_return

    pANTLR3_BASE_TREE set2312_tree;
    pANTLR3_BASE_TREE REVERSE_SYMBOL2313_tree;
    pANTLR3_BASE_TREE REVERSE_SYMBOL2314_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2312       = NULL;
    REVERSE_SYMBOL2313       = NULL;
    REVERSE_SYMBOL2314       = NULL;
    real_ulong_number2311.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2312_tree   = NULL;
    REVERSE_SYMBOL2313_tree   = NULL;
    REVERSE_SYMBOL2314_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2422:30: ( real_ulong_number ( ( ASC_SYMBOL | DESC_SYMBOL ) ( REVERSE_SYMBOL )? | REVERSE_SYMBOL )? )
        // MySQL.g:2423: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_item12291);
            real_ulong_number2311=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_number2311.tree);

            // MySQL.g:2424: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:2425:3: ( ASC_SYMBOL | DESC_SYMBOL ) ( REVERSE_SYMBOL )?
            	    {
            	        set2312=(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, set2312))
            	            );
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

            	        }
            	        else
            	        {
            	            if (BACKTRACKING>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:2425:30: ( REVERSE_SYMBOL )?
            	        {
            	            int alt659=2;
            	            switch ( LA(1) )
            	            {
            	                case REVERSE_SYMBOL:
            	                	{
            	                		alt659=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt659)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2425:30: REVERSE_SYMBOL
            	        	    {
            	        	        REVERSE_SYMBOL2313 = (pANTLR3_COMMON_TOKEN) MATCHT(REVERSE_SYMBOL, &FOLLOW_REVERSE_SYMBOL_in_weight_string_level_list_item12306);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleweight_string_level_list_itemEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        REVERSE_SYMBOL2313_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REVERSE_SYMBOL2313));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, REVERSE_SYMBOL2313_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2426:5: REVERSE_SYMBOL
            	    {
            	        REVERSE_SYMBOL2314 = (pANTLR3_COMMON_TOKEN) MATCHT(REVERSE_SYMBOL, &FOLLOW_REVERSE_SYMBOL_in_weight_string_level_list_item12313);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleweight_string_level_list_itemEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        REVERSE_SYMBOL2314_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REVERSE_SYMBOL2314));
            	        ADAPTOR->addChild(ADAPTOR, root_0, REVERSE_SYMBOL2314_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:2430: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    set2315;

    pANTLR3_BASE_TREE set2315_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2315       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2315_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2430:15: ( DATE_SYMBOL | TIME_SYMBOL | DATETIME_SYMBOL | TIMESTAMP_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set2315=(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, set2315))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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:2437: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_SYMBOL2316;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2317;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL2319;
    pANTLR3_COMMON_TOKEN    LEADING_SYMBOL2321;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL2323;
    pANTLR3_COMMON_TOKEN    TRAILING_SYMBOL2325;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL2327;
    pANTLR3_COMMON_TOKEN    BOTH_SYMBOL2329;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL2331;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2333;
    MySQLParser_expression_return expression2318;
    #undef	RETURN_TYPE_expression2318
    #define	RETURN_TYPE_expression2318 MySQLParser_expression_return

    MySQLParser_expression_return expression2320;
    #undef	RETURN_TYPE_expression2320
    #define	RETURN_TYPE_expression2320 MySQLParser_expression_return

    MySQLParser_expression_return expression2322;
    #undef	RETURN_TYPE_expression2322
    #define	RETURN_TYPE_expression2322 MySQLParser_expression_return

    MySQLParser_expression_return expression2324;
    #undef	RETURN_TYPE_expression2324
    #define	RETURN_TYPE_expression2324 MySQLParser_expression_return

    MySQLParser_expression_return expression2326;
    #undef	RETURN_TYPE_expression2326
    #define	RETURN_TYPE_expression2326 MySQLParser_expression_return

    MySQLParser_expression_return expression2328;
    #undef	RETURN_TYPE_expression2328
    #define	RETURN_TYPE_expression2328 MySQLParser_expression_return

    MySQLParser_expression_return expression2330;
    #undef	RETURN_TYPE_expression2330
    #define	RETURN_TYPE_expression2330 MySQLParser_expression_return

    MySQLParser_expression_return expression2332;
    #undef	RETURN_TYPE_expression2332
    #define	RETURN_TYPE_expression2332 MySQLParser_expression_return

    pANTLR3_BASE_TREE TRIM_SYMBOL2316_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2317_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL2319_tree;
    pANTLR3_BASE_TREE LEADING_SYMBOL2321_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL2323_tree;
    pANTLR3_BASE_TREE TRAILING_SYMBOL2325_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL2327_tree;
    pANTLR3_BASE_TREE BOTH_SYMBOL2329_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL2331_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2333_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    TRIM_SYMBOL2316       = NULL;
    OPEN_PAR_SYMBOL2317       = NULL;
    FROM_SYMBOL2319       = NULL;
    LEADING_SYMBOL2321       = NULL;
    FROM_SYMBOL2323       = NULL;
    TRAILING_SYMBOL2325       = NULL;
    FROM_SYMBOL2327       = NULL;
    BOTH_SYMBOL2329       = NULL;
    FROM_SYMBOL2331       = NULL;
    CLOSE_PAR_SYMBOL2333       = NULL;
    expression2318.tree = NULL;

    expression2320.tree = NULL;

    expression2322.tree = NULL;

    expression2324.tree = NULL;

    expression2326.tree = NULL;

    expression2328.tree = NULL;

    expression2330.tree = NULL;

    expression2332.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    TRIM_SYMBOL2316_tree   = NULL;
    OPEN_PAR_SYMBOL2317_tree   = NULL;
    FROM_SYMBOL2319_tree   = NULL;
    LEADING_SYMBOL2321_tree   = NULL;
    FROM_SYMBOL2323_tree   = NULL;
    TRAILING_SYMBOL2325_tree   = NULL;
    FROM_SYMBOL2327_tree   = NULL;
    BOTH_SYMBOL2329_tree   = NULL;
    FROM_SYMBOL2331_tree   = NULL;
    CLOSE_PAR_SYMBOL2333_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2437: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:2438: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_SYMBOL2316 = (pANTLR3_COMMON_TOKEN) MATCHT(TRIM_SYMBOL, &FOLLOW_TRIM_SYMBOL_in_trim_function12350);
            if  (HASEXCEPTION())
            {
                goto ruletrim_functionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            TRIM_SYMBOL2316_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TRIM_SYMBOL2316));
            ADAPTOR->addChild(ADAPTOR, root_0, TRIM_SYMBOL2316_tree);
            }

            OPEN_PAR_SYMBOL2317 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_trim_function12352);
            if  (HASEXCEPTION())
            {
                goto ruletrim_functionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL2317_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2317));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2317_tree);
            }

            // MySQL.g:2439: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 == BINARY_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 == EXISTS_SYMBOL || ((LA665_0 >= EXTRACT_SYMBOL) && (LA665_0 <= FALSE_SYMBOL)) || LA665_0 == GROUP_CONCAT_SYMBOL || LA665_0 == IF_SYMBOL || LA665_0 == INSERT_SYMBOL || LA665_0 == INTERVAL_SYMBOL || LA665_0 == LEFT_SYMBOL || LA665_0 == MATCH_SYMBOL || LA665_0 == MAX_SYMBOL || LA665_0 == MIN_SYMBOL || LA665_0 == MOD_SYMBOL || LA665_0 == NCHAR_TEXT || ((LA665_0 >= NOT2_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 <= 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 >= UTC_DATE_SYMBOL) && (LA665_0 <= UTC_TIME_SYMBOL)) || LA665_0 == VALUES_SYMBOL || LA665_0 == VARIANCE_SYMBOL || LA665_0 == VAR_SAMP_SYMBOL || ((LA665_0 >= AT_AT_SIGN_SYMBOL) && (LA665_0 <= AT_TEXT_SUFFIX)) || ((LA665_0 >= BACK_TICK_QUOTED_ID) && (LA665_0 <= BIN_NUMBER)) || LA665_0 == BITWISE_NOT_OPERATOR || ((LA665_0 >= BIT_AND_SYMBOL) && (LA665_0 <= BIT_XOR_SYMBOL)) || LA665_0 == DECIMAL_NUMBER || LA665_0 == DOT_SYMBOL || LA665_0 == DOUBLE_QUOTED_TEXT || LA665_0 == FLOAT_NUMBER || ((LA665_0 >= HEX_NUMBER) && (LA665_0 <= IDENTIFIER)) || LA665_0 == INT_NUMBER || LA665_0 == LOGICAL_NOT_OPERATOR || ((LA665_0 >= LONG_NUMBER) && (LA665_0 <= MINUS_OPERATOR)) || LA665_0 == PLUS_OPERATOR || ((LA665_0 >= ULONGLONG_NUMBER) && (LA665_0 <= UNDERSCORE_CHARSET))))
                    {
                        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:2440:3: expression ( FROM_SYMBOL expression )?
            	    {
            	        FOLLOWPUSH(FOLLOW_expression_in_trim_function12359);
            	        expression2318=expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletrim_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2318.tree);

            	        // MySQL.g:2440:14: ( FROM_SYMBOL expression )?
            	        {
            	            int alt661=2;
            	            switch ( LA(1) )
            	            {
            	                case FROM_SYMBOL:
            	                	{
            	                		alt661=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt661)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2440:15: FROM_SYMBOL expression
            	        	    {
            	        	        FROM_SYMBOL2319 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_trim_function12362);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruletrim_functionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        FROM_SYMBOL2319_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL2319));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL2319_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_expression_in_trim_function12364);
            	        	        expression2320=expression(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruletrim_functionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2320.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2441:5: LEADING_SYMBOL ( expression )? FROM_SYMBOL expression
            	    {
            	        LEADING_SYMBOL2321 = (pANTLR3_COMMON_TOKEN) MATCHT(LEADING_SYMBOL, &FOLLOW_LEADING_SYMBOL_in_trim_function12372);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletrim_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        LEADING_SYMBOL2321_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LEADING_SYMBOL2321));
            	        ADAPTOR->addChild(ADAPTOR, root_0, LEADING_SYMBOL2321_tree);
            	        }

            	        // MySQL.g:2441:20: ( expression )?
            	        {
            	            int alt662=2;
            	            {
            	                int LA662_0 = LA(1);
            	                if ( (((LA662_0 >= ACCOUNT_SYMBOL) && (LA662_0 <= YEAR_SYMBOL)) || LA662_0 == BINARY_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 == EXISTS_SYMBOL || ((LA662_0 >= EXTRACT_SYMBOL) && (LA662_0 <= FALSE_SYMBOL)) || LA662_0 == GROUP_CONCAT_SYMBOL || LA662_0 == IF_SYMBOL || LA662_0 == INSERT_SYMBOL || LA662_0 == INTERVAL_SYMBOL || LA662_0 == LEFT_SYMBOL || LA662_0 == MATCH_SYMBOL || LA662_0 == MAX_SYMBOL || LA662_0 == MIN_SYMBOL || LA662_0 == MOD_SYMBOL || LA662_0 == NCHAR_TEXT || ((LA662_0 >= NOT2_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 <= 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 >= UTC_DATE_SYMBOL) && (LA662_0 <= UTC_TIME_SYMBOL)) || LA662_0 == VALUES_SYMBOL || LA662_0 == VARIANCE_SYMBOL || LA662_0 == VAR_SAMP_SYMBOL || ((LA662_0 >= AT_AT_SIGN_SYMBOL) && (LA662_0 <= AT_TEXT_SUFFIX)) || ((LA662_0 >= BACK_TICK_QUOTED_ID) && (LA662_0 <= BIN_NUMBER)) || LA662_0 == BITWISE_NOT_OPERATOR || ((LA662_0 >= BIT_AND_SYMBOL) && (LA662_0 <= BIT_XOR_SYMBOL)) || LA662_0 == DECIMAL_NUMBER || LA662_0 == DOT_SYMBOL || LA662_0 == DOUBLE_QUOTED_TEXT || LA662_0 == FLOAT_NUMBER || ((LA662_0 >= HEX_NUMBER) && (LA662_0 <= IDENTIFIER)) || LA662_0 == INT_NUMBER || LA662_0 == LOGICAL_NOT_OPERATOR || ((LA662_0 >= LONG_NUMBER) && (LA662_0 <= MINUS_OPERATOR)) || LA662_0 == PLUS_OPERATOR || ((LA662_0 >= ULONGLONG_NUMBER) && (LA662_0 <= UNDERSCORE_CHARSET))))
            	                {
            	                    alt662=1;
            	                }
            	            }
            	            switch (alt662)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2441:20: expression
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_expression_in_trim_function12374);
            	        	        expression2322=expression(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruletrim_functionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2322.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FROM_SYMBOL2323 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_trim_function12377);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletrim_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        FROM_SYMBOL2323_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL2323));
            	        ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL2323_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_expression_in_trim_function12379);
            	        expression2324=expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletrim_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2324.tree);

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:2442:5: TRAILING_SYMBOL ( expression )? FROM_SYMBOL expression
            	    {
            	        TRAILING_SYMBOL2325 = (pANTLR3_COMMON_TOKEN) MATCHT(TRAILING_SYMBOL, &FOLLOW_TRAILING_SYMBOL_in_trim_function12385);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletrim_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        TRAILING_SYMBOL2325_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TRAILING_SYMBOL2325));
            	        ADAPTOR->addChild(ADAPTOR, root_0, TRAILING_SYMBOL2325_tree);
            	        }

            	        // MySQL.g:2442:21: ( expression )?
            	        {
            	            int alt663=2;
            	            {
            	                int LA663_0 = LA(1);
            	                if ( (((LA663_0 >= ACCOUNT_SYMBOL) && (LA663_0 <= YEAR_SYMBOL)) || LA663_0 == BINARY_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 == EXISTS_SYMBOL || ((LA663_0 >= EXTRACT_SYMBOL) && (LA663_0 <= FALSE_SYMBOL)) || LA663_0 == GROUP_CONCAT_SYMBOL || LA663_0 == IF_SYMBOL || LA663_0 == INSERT_SYMBOL || LA663_0 == INTERVAL_SYMBOL || LA663_0 == LEFT_SYMBOL || LA663_0 == MATCH_SYMBOL || LA663_0 == MAX_SYMBOL || LA663_0 == MIN_SYMBOL || LA663_0 == MOD_SYMBOL || LA663_0 == NCHAR_TEXT || ((LA663_0 >= NOT2_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 <= 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 >= UTC_DATE_SYMBOL) && (LA663_0 <= UTC_TIME_SYMBOL)) || LA663_0 == VALUES_SYMBOL || LA663_0 == VARIANCE_SYMBOL || LA663_0 == VAR_SAMP_SYMBOL || ((LA663_0 >= AT_AT_SIGN_SYMBOL) && (LA663_0 <= AT_TEXT_SUFFIX)) || ((LA663_0 >= BACK_TICK_QUOTED_ID) && (LA663_0 <= BIN_NUMBER)) || LA663_0 == BITWISE_NOT_OPERATOR || ((LA663_0 >= BIT_AND_SYMBOL) && (LA663_0 <= BIT_XOR_SYMBOL)) || LA663_0 == DECIMAL_NUMBER || LA663_0 == DOT_SYMBOL || LA663_0 == DOUBLE_QUOTED_TEXT || LA663_0 == FLOAT_NUMBER || ((LA663_0 >= HEX_NUMBER) && (LA663_0 <= IDENTIFIER)) || LA663_0 == INT_NUMBER || LA663_0 == LOGICAL_NOT_OPERATOR || ((LA663_0 >= LONG_NUMBER) && (LA663_0 <= MINUS_OPERATOR)) || LA663_0 == PLUS_OPERATOR || ((LA663_0 >= ULONGLONG_NUMBER) && (LA663_0 <= UNDERSCORE_CHARSET))))
            	                {
            	                    alt663=1;
            	                }
            	            }
            	            switch (alt663)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2442:21: expression
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_expression_in_trim_function12387);
            	        	        expression2326=expression(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruletrim_functionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2326.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FROM_SYMBOL2327 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_trim_function12390);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletrim_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        FROM_SYMBOL2327_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL2327));
            	        ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL2327_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_expression_in_trim_function12392);
            	        expression2328=expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletrim_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2328.tree);

            	    }
            	    break;
            	case 4:
            	    // MySQL.g:2443:5: BOTH_SYMBOL ( expression )? FROM_SYMBOL expression
            	    {
            	        BOTH_SYMBOL2329 = (pANTLR3_COMMON_TOKEN) MATCHT(BOTH_SYMBOL, &FOLLOW_BOTH_SYMBOL_in_trim_function12398);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletrim_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        BOTH_SYMBOL2329_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BOTH_SYMBOL2329));
            	        ADAPTOR->addChild(ADAPTOR, root_0, BOTH_SYMBOL2329_tree);
            	        }

            	        // MySQL.g:2443:17: ( expression )?
            	        {
            	            int alt664=2;
            	            {
            	                int LA664_0 = LA(1);
            	                if ( (((LA664_0 >= ACCOUNT_SYMBOL) && (LA664_0 <= YEAR_SYMBOL)) || LA664_0 == BINARY_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 == EXISTS_SYMBOL || ((LA664_0 >= EXTRACT_SYMBOL) && (LA664_0 <= FALSE_SYMBOL)) || LA664_0 == GROUP_CONCAT_SYMBOL || LA664_0 == IF_SYMBOL || LA664_0 == INSERT_SYMBOL || LA664_0 == INTERVAL_SYMBOL || LA664_0 == LEFT_SYMBOL || LA664_0 == MATCH_SYMBOL || LA664_0 == MAX_SYMBOL || LA664_0 == MIN_SYMBOL || LA664_0 == MOD_SYMBOL || LA664_0 == NCHAR_TEXT || ((LA664_0 >= NOT2_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 <= 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 >= UTC_DATE_SYMBOL) && (LA664_0 <= UTC_TIME_SYMBOL)) || LA664_0 == VALUES_SYMBOL || LA664_0 == VARIANCE_SYMBOL || LA664_0 == VAR_SAMP_SYMBOL || ((LA664_0 >= AT_AT_SIGN_SYMBOL) && (LA664_0 <= AT_TEXT_SUFFIX)) || ((LA664_0 >= BACK_TICK_QUOTED_ID) && (LA664_0 <= BIN_NUMBER)) || LA664_0 == BITWISE_NOT_OPERATOR || ((LA664_0 >= BIT_AND_SYMBOL) && (LA664_0 <= BIT_XOR_SYMBOL)) || LA664_0 == DECIMAL_NUMBER || LA664_0 == DOT_SYMBOL || LA664_0 == DOUBLE_QUOTED_TEXT || LA664_0 == FLOAT_NUMBER || ((LA664_0 >= HEX_NUMBER) && (LA664_0 <= IDENTIFIER)) || LA664_0 == INT_NUMBER || LA664_0 == LOGICAL_NOT_OPERATOR || ((LA664_0 >= LONG_NUMBER) && (LA664_0 <= MINUS_OPERATOR)) || LA664_0 == PLUS_OPERATOR || ((LA664_0 >= ULONGLONG_NUMBER) && (LA664_0 <= UNDERSCORE_CHARSET))))
            	                {
            	                    alt664=1;
            	                }
            	            }
            	            switch (alt664)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2443:17: expression
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_expression_in_trim_function12400);
            	        	        expression2330=expression(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruletrim_functionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2330.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FROM_SYMBOL2331 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_trim_function12403);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletrim_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        FROM_SYMBOL2331_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL2331));
            	        ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL2331_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_expression_in_trim_function12405);
            	        expression2332=expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletrim_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2332.tree);

            	    }
            	    break;

                }
            }

            CLOSE_PAR_SYMBOL2333 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_trim_function12411);
            if  (HASEXCEPTION())
            {
                goto ruletrim_functionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL2333_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2333));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2333_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:2448: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_SYMBOL2334;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2335;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2337;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2339;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL2341;
    pANTLR3_COMMON_TOKEN    FOR_SYMBOL2343;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2345;
    MySQLParser_expression_return expression2336;
    #undef	RETURN_TYPE_expression2336
    #define	RETURN_TYPE_expression2336 MySQLParser_expression_return

    MySQLParser_expression_return expression2338;
    #undef	RETURN_TYPE_expression2338
    #define	RETURN_TYPE_expression2338 MySQLParser_expression_return

    MySQLParser_expression_return expression2340;
    #undef	RETURN_TYPE_expression2340
    #define	RETURN_TYPE_expression2340 MySQLParser_expression_return

    MySQLParser_expression_return expression2342;
    #undef	RETURN_TYPE_expression2342
    #define	RETURN_TYPE_expression2342 MySQLParser_expression_return

    MySQLParser_expression_return expression2344;
    #undef	RETURN_TYPE_expression2344
    #define	RETURN_TYPE_expression2344 MySQLParser_expression_return

    pANTLR3_BASE_TREE SUBSTRING_SYMBOL2334_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2335_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2337_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2339_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL2341_tree;
    pANTLR3_BASE_TREE FOR_SYMBOL2343_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2345_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SUBSTRING_SYMBOL2334       = NULL;
    OPEN_PAR_SYMBOL2335       = NULL;
    COMMA_SYMBOL2337       = NULL;
    COMMA_SYMBOL2339       = NULL;
    FROM_SYMBOL2341       = NULL;
    FOR_SYMBOL2343       = NULL;
    CLOSE_PAR_SYMBOL2345       = NULL;
    expression2336.tree = NULL;

    expression2338.tree = NULL;

    expression2340.tree = NULL;

    expression2342.tree = NULL;

    expression2344.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SUBSTRING_SYMBOL2334_tree   = NULL;
    OPEN_PAR_SYMBOL2335_tree   = NULL;
    COMMA_SYMBOL2337_tree   = NULL;
    COMMA_SYMBOL2339_tree   = NULL;
    FROM_SYMBOL2341_tree   = NULL;
    FOR_SYMBOL2343_tree   = NULL;
    CLOSE_PAR_SYMBOL2345_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2448:19: ( SUBSTRING_SYMBOL OPEN_PAR_SYMBOL expression ( COMMA_SYMBOL expression ( COMMA_SYMBOL expression )? | FROM_SYMBOL expression ( FOR_SYMBOL expression )? ) CLOSE_PAR_SYMBOL )
        // MySQL.g:2449: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_SYMBOL2334 = (pANTLR3_COMMON_TOKEN) MATCHT(SUBSTRING_SYMBOL, &FOLLOW_SUBSTRING_SYMBOL_in_substring_function12420);
            if  (HASEXCEPTION())
            {
                goto rulesubstring_functionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            SUBSTRING_SYMBOL2334_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SUBSTRING_SYMBOL2334));
            ADAPTOR->addChild(ADAPTOR, root_0, SUBSTRING_SYMBOL2334_tree);
            }

            OPEN_PAR_SYMBOL2335 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_substring_function12422);
            if  (HASEXCEPTION())
            {
                goto rulesubstring_functionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL2335_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2335));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2335_tree);
            }

            FOLLOWPUSH(FOLLOW_expression_in_substring_function12424);
            expression2336=expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulesubstring_functionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2336.tree);

            // MySQL.g:2450: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:2451:3: COMMA_SYMBOL expression ( COMMA_SYMBOL expression )?
            	    {
            	        COMMA_SYMBOL2337 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_substring_function12431);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesubstring_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL2337_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2337));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2337_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_expression_in_substring_function12433);
            	        expression2338=expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesubstring_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2338.tree);

            	        // MySQL.g:2451:27: ( COMMA_SYMBOL expression )?
            	        {
            	            int alt666=2;
            	            switch ( LA(1) )
            	            {
            	                case COMMA_SYMBOL:
            	                	{
            	                		alt666=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt666)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2451:28: COMMA_SYMBOL expression
            	        	    {
            	        	        COMMA_SYMBOL2339 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_substring_function12436);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulesubstring_functionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        COMMA_SYMBOL2339_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2339));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2339_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_expression_in_substring_function12438);
            	        	        expression2340=expression(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulesubstring_functionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2340.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2452:5: FROM_SYMBOL expression ( FOR_SYMBOL expression )?
            	    {
            	        FROM_SYMBOL2341 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_substring_function12446);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesubstring_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        FROM_SYMBOL2341_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL2341));
            	        ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL2341_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_expression_in_substring_function12448);
            	        expression2342=expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesubstring_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2342.tree);

            	        // MySQL.g:2452:28: ( FOR_SYMBOL expression )?
            	        {
            	            int alt667=2;
            	            switch ( LA(1) )
            	            {
            	                case FOR_SYMBOL:
            	                	{
            	                		alt667=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt667)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2452:29: FOR_SYMBOL expression
            	        	    {
            	        	        FOR_SYMBOL2343 = (pANTLR3_COMMON_TOKEN) MATCHT(FOR_SYMBOL, &FOLLOW_FOR_SYMBOL_in_substring_function12451);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulesubstring_functionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        FOR_SYMBOL2343_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOR_SYMBOL2343));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, FOR_SYMBOL2343_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_expression_in_substring_function12453);
            	        	        expression2344=expression(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulesubstring_functionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2344.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

                }
            }

            CLOSE_PAR_SYMBOL2345 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_substring_function12461);
            if  (HASEXCEPTION())
            {
                goto rulesubstring_functionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL2345_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2345));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2345_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:2457: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_SYMBOL2346;
    pANTLR3_COMMON_TOKEN    LINESTRING_SYMBOL2348;
    pANTLR3_COMMON_TOKEN    MULTILINESTRING_SYMBOL2350;
    pANTLR3_COMMON_TOKEN    MULTIPOINT_SYMBOL2352;
    pANTLR3_COMMON_TOKEN    MULTIPOLYGON_SYMBOL2354;
    pANTLR3_COMMON_TOKEN    POINT_SYMBOL2356;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2357;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2359;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2361;
    pANTLR3_COMMON_TOKEN    POLYGON_SYMBOL2362;
    pANTLR3_COMMON_TOKEN    CONTAINS_SYMBOL2364;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2365;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2367;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2369;
    MySQLParser_optional_expression_list_with_parentheses_return optional_expression_list_with_parentheses2347;
    #undef	RETURN_TYPE_optional_expression_list_with_parentheses2347
    #define	RETURN_TYPE_optional_expression_list_with_parentheses2347 MySQLParser_optional_expression_list_with_parentheses_return

    MySQLParser_expression_list_with_parentheses_return expression_list_with_parentheses2349;
    #undef	RETURN_TYPE_expression_list_with_parentheses2349
    #define	RETURN_TYPE_expression_list_with_parentheses2349 MySQLParser_expression_list_with_parentheses_return

    MySQLParser_expression_list_with_parentheses_return expression_list_with_parentheses2351;
    #undef	RETURN_TYPE_expression_list_with_parentheses2351
    #define	RETURN_TYPE_expression_list_with_parentheses2351 MySQLParser_expression_list_with_parentheses_return

    MySQLParser_expression_list_with_parentheses_return expression_list_with_parentheses2353;
    #undef	RETURN_TYPE_expression_list_with_parentheses2353
    #define	RETURN_TYPE_expression_list_with_parentheses2353 MySQLParser_expression_list_with_parentheses_return

    MySQLParser_expression_list_with_parentheses_return expression_list_with_parentheses2355;
    #undef	RETURN_TYPE_expression_list_with_parentheses2355
    #define	RETURN_TYPE_expression_list_with_parentheses2355 MySQLParser_expression_list_with_parentheses_return

    MySQLParser_expression_return expression2358;
    #undef	RETURN_TYPE_expression2358
    #define	RETURN_TYPE_expression2358 MySQLParser_expression_return

    MySQLParser_expression_return expression2360;
    #undef	RETURN_TYPE_expression2360
    #define	RETURN_TYPE_expression2360 MySQLParser_expression_return

    MySQLParser_expression_list_with_parentheses_return expression_list_with_parentheses2363;
    #undef	RETURN_TYPE_expression_list_with_parentheses2363
    #define	RETURN_TYPE_expression_list_with_parentheses2363 MySQLParser_expression_list_with_parentheses_return

    MySQLParser_expression_return expression2366;
    #undef	RETURN_TYPE_expression2366
    #define	RETURN_TYPE_expression2366 MySQLParser_expression_return

    MySQLParser_expression_return expression2368;
    #undef	RETURN_TYPE_expression2368
    #define	RETURN_TYPE_expression2368 MySQLParser_expression_return

    pANTLR3_BASE_TREE GEOMETRYCOLLECTION_SYMBOL2346_tree;
    pANTLR3_BASE_TREE LINESTRING_SYMBOL2348_tree;
    pANTLR3_BASE_TREE MULTILINESTRING_SYMBOL2350_tree;
    pANTLR3_BASE_TREE MULTIPOINT_SYMBOL2352_tree;
    pANTLR3_BASE_TREE MULTIPOLYGON_SYMBOL2354_tree;
    pANTLR3_BASE_TREE POINT_SYMBOL2356_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2357_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2359_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2361_tree;
    pANTLR3_BASE_TREE POLYGON_SYMBOL2362_tree;
    pANTLR3_BASE_TREE CONTAINS_SYMBOL2364_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2365_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2367_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2369_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    GEOMETRYCOLLECTION_SYMBOL2346       = NULL;
    LINESTRING_SYMBOL2348       = NULL;
    MULTILINESTRING_SYMBOL2350       = NULL;
    MULTIPOINT_SYMBOL2352       = NULL;
    MULTIPOLYGON_SYMBOL2354       = NULL;
    POINT_SYMBOL2356       = NULL;
    OPEN_PAR_SYMBOL2357       = NULL;
    COMMA_SYMBOL2359       = NULL;
    CLOSE_PAR_SYMBOL2361       = NULL;
    POLYGON_SYMBOL2362       = NULL;
    CONTAINS_SYMBOL2364       = NULL;
    OPEN_PAR_SYMBOL2365       = NULL;
    COMMA_SYMBOL2367       = NULL;
    CLOSE_PAR_SYMBOL2369       = NULL;
    optional_expression_list_with_parentheses2347.tree = NULL;

    expression_list_with_parentheses2349.tree = NULL;

    expression_list_with_parentheses2351.tree = NULL;

    expression_list_with_parentheses2353.tree = NULL;

    expression_list_with_parentheses2355.tree = NULL;

    expression2358.tree = NULL;

    expression2360.tree = NULL;

    expression_list_with_parentheses2363.tree = NULL;

    expression2366.tree = NULL;

    expression2368.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    GEOMETRYCOLLECTION_SYMBOL2346_tree   = NULL;
    LINESTRING_SYMBOL2348_tree   = NULL;
    MULTILINESTRING_SYMBOL2350_tree   = NULL;
    MULTIPOINT_SYMBOL2352_tree   = NULL;
    MULTIPOLYGON_SYMBOL2354_tree   = NULL;
    POINT_SYMBOL2356_tree   = NULL;
    OPEN_PAR_SYMBOL2357_tree   = NULL;
    COMMA_SYMBOL2359_tree   = NULL;
    CLOSE_PAR_SYMBOL2361_tree   = NULL;
    POLYGON_SYMBOL2362_tree   = NULL;
    CONTAINS_SYMBOL2364_tree   = NULL;
    OPEN_PAR_SYMBOL2365_tree   = NULL;
    COMMA_SYMBOL2367_tree   = NULL;
    CLOSE_PAR_SYMBOL2369_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2457: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:2458:2: GEOMETRYCOLLECTION_SYMBOL optional_expression_list_with_parentheses
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        GEOMETRYCOLLECTION_SYMBOL2346 = (pANTLR3_COMMON_TOKEN) MATCHT(GEOMETRYCOLLECTION_SYMBOL, &FOLLOW_GEOMETRYCOLLECTION_SYMBOL_in_geometry_function12471);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        GEOMETRYCOLLECTION_SYMBOL2346_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GEOMETRYCOLLECTION_SYMBOL2346));
        	        ADAPTOR->addChild(ADAPTOR, root_0, GEOMETRYCOLLECTION_SYMBOL2346_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_optional_expression_list_with_parentheses_in_geometry_function12473);
        	        optional_expression_list_with_parentheses2347=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_parentheses2347.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2459:4: LINESTRING_SYMBOL expression_list_with_parentheses
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        LINESTRING_SYMBOL2348 = (pANTLR3_COMMON_TOKEN) MATCHT(LINESTRING_SYMBOL, &FOLLOW_LINESTRING_SYMBOL_in_geometry_function12478);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LINESTRING_SYMBOL2348_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LINESTRING_SYMBOL2348));
        	        ADAPTOR->addChild(ADAPTOR, root_0, LINESTRING_SYMBOL2348_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_list_with_parentheses_in_geometry_function12480);
        	        expression_list_with_parentheses2349=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_parentheses2349.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2460:4: MULTILINESTRING_SYMBOL expression_list_with_parentheses
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MULTILINESTRING_SYMBOL2350 = (pANTLR3_COMMON_TOKEN) MATCHT(MULTILINESTRING_SYMBOL, &FOLLOW_MULTILINESTRING_SYMBOL_in_geometry_function12485);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MULTILINESTRING_SYMBOL2350_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MULTILINESTRING_SYMBOL2350));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MULTILINESTRING_SYMBOL2350_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_list_with_parentheses_in_geometry_function12487);
        	        expression_list_with_parentheses2351=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_parentheses2351.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:2461:4: MULTIPOINT_SYMBOL expression_list_with_parentheses
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MULTIPOINT_SYMBOL2352 = (pANTLR3_COMMON_TOKEN) MATCHT(MULTIPOINT_SYMBOL, &FOLLOW_MULTIPOINT_SYMBOL_in_geometry_function12492);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MULTIPOINT_SYMBOL2352_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MULTIPOINT_SYMBOL2352));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MULTIPOINT_SYMBOL2352_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_list_with_parentheses_in_geometry_function12494);
        	        expression_list_with_parentheses2353=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_parentheses2353.tree);

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:2462:4: MULTIPOLYGON_SYMBOL expression_list_with_parentheses
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MULTIPOLYGON_SYMBOL2354 = (pANTLR3_COMMON_TOKEN) MATCHT(MULTIPOLYGON_SYMBOL, &FOLLOW_MULTIPOLYGON_SYMBOL_in_geometry_function12499);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MULTIPOLYGON_SYMBOL2354_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MULTIPOLYGON_SYMBOL2354));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MULTIPOLYGON_SYMBOL2354_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_list_with_parentheses_in_geometry_function12501);
        	        expression_list_with_parentheses2355=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_parentheses2355.tree);

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:2463:4: POINT_SYMBOL OPEN_PAR_SYMBOL expression COMMA_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        POINT_SYMBOL2356 = (pANTLR3_COMMON_TOKEN) MATCHT(POINT_SYMBOL, &FOLLOW_POINT_SYMBOL_in_geometry_function12506);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        POINT_SYMBOL2356_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, POINT_SYMBOL2356));
        	        ADAPTOR->addChild(ADAPTOR, root_0, POINT_SYMBOL2356_tree);
        	        }

        	        OPEN_PAR_SYMBOL2357 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_geometry_function12508);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2357_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2357));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2357_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_geometry_function12510);
        	        expression2358=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2358.tree);

        	        COMMA_SYMBOL2359 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_geometry_function12512);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL2359_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2359));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2359_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_geometry_function12514);
        	        expression2360=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2360.tree);

        	        CLOSE_PAR_SYMBOL2361 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_geometry_function12516);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2361_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2361));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2361_tree);
        	        }

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:2464:4: POLYGON_SYMBOL expression_list_with_parentheses
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        POLYGON_SYMBOL2362 = (pANTLR3_COMMON_TOKEN) MATCHT(POLYGON_SYMBOL, &FOLLOW_POLYGON_SYMBOL_in_geometry_function12521);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        POLYGON_SYMBOL2362_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, POLYGON_SYMBOL2362));
        	        ADAPTOR->addChild(ADAPTOR, root_0, POLYGON_SYMBOL2362_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_list_with_parentheses_in_geometry_function12523);
        	        expression_list_with_parentheses2363=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_parentheses2363.tree);

        	    }
        	    break;
        	case 8:
        	    // MySQL.g:2465: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_SYMBOL2364 = (pANTLR3_COMMON_TOKEN) MATCHT(CONTAINS_SYMBOL, &FOLLOW_CONTAINS_SYMBOL_in_geometry_function12530);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CONTAINS_SYMBOL2364_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CONTAINS_SYMBOL2364));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CONTAINS_SYMBOL2364_tree);
        	        }

        	        OPEN_PAR_SYMBOL2365 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_geometry_function12532);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2365_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2365));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2365_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_geometry_function12534);
        	        expression2366=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2366.tree);

        	        COMMA_SYMBOL2367 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_geometry_function12536);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL2367_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2367));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2367_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_geometry_function12538);
        	        expression2368=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2368.tree);

        	        CLOSE_PAR_SYMBOL2369 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_geometry_function12540);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_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;

            }
        }
    }

    // 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:2468: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_SYMBOL2370;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2371;
    pANTLR3_COMMON_TOKEN    DISTINCT_SYMBOL2372;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2374;
    pANTLR3_COMMON_TOKEN    BIT_AND_SYMBOL2375;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2376;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2378;
    pANTLR3_COMMON_TOKEN    BIT_OR_SYMBOL2379;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2380;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2382;
    pANTLR3_COMMON_TOKEN    BIT_XOR_SYMBOL2383;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2384;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2386;
    pANTLR3_COMMON_TOKEN    MIN_SYMBOL2388;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2389;
    pANTLR3_COMMON_TOKEN    DISTINCT_SYMBOL2390;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2392;
    pANTLR3_COMMON_TOKEN    MAX_SYMBOL2393;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2394;
    pANTLR3_COMMON_TOKEN    DISTINCT_SYMBOL2395;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2397;
    pANTLR3_COMMON_TOKEN    STD_SYMBOL2398;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2399;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2401;
    pANTLR3_COMMON_TOKEN    VARIANCE_SYMBOL2402;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2403;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2405;
    pANTLR3_COMMON_TOKEN    STDDEV_SAMP_SYMBOL2406;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2407;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2409;
    pANTLR3_COMMON_TOKEN    VAR_SAMP_SYMBOL2410;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2411;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2413;
    pANTLR3_COMMON_TOKEN    SUM_SYMBOL2414;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2415;
    pANTLR3_COMMON_TOKEN    DISTINCT_SYMBOL2416;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2418;
    pANTLR3_COMMON_TOKEN    GROUP_CONCAT_SYMBOL2419;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2420;
    pANTLR3_COMMON_TOKEN    DISTINCT_SYMBOL2421;
    pANTLR3_COMMON_TOKEN    SEPARATOR_SYMBOL2424;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2426;
    MySQLParser_in_aggregate_expression_return in_aggregate_expression2373;
    #undef	RETURN_TYPE_in_aggregate_expression2373
    #define	RETURN_TYPE_in_aggregate_expression2373 MySQLParser_in_aggregate_expression_return

    MySQLParser_in_aggregate_expression_return in_aggregate_expression2377;
    #undef	RETURN_TYPE_in_aggregate_expression2377
    #define	RETURN_TYPE_in_aggregate_expression2377 MySQLParser_in_aggregate_expression_return

    MySQLParser_in_aggregate_expression_return in_aggregate_expression2381;
    #undef	RETURN_TYPE_in_aggregate_expression2381
    #define	RETURN_TYPE_in_aggregate_expression2381 MySQLParser_in_aggregate_expression_return

    MySQLParser_in_aggregate_expression_return in_aggregate_expression2385;
    #undef	RETURN_TYPE_in_aggregate_expression2385
    #define	RETURN_TYPE_in_aggregate_expression2385 MySQLParser_in_aggregate_expression_return

    MySQLParser_count_function_return count_function2387;
    #undef	RETURN_TYPE_count_function2387
    #define	RETURN_TYPE_count_function2387 MySQLParser_count_function_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_expression2396;
    #undef	RETURN_TYPE_in_aggregate_expression2396
    #define	RETURN_TYPE_in_aggregate_expression2396 MySQLParser_in_aggregate_expression_return

    MySQLParser_in_aggregate_expression_return in_aggregate_expression2400;
    #undef	RETURN_TYPE_in_aggregate_expression2400
    #define	RETURN_TYPE_in_aggregate_expression2400 MySQLParser_in_aggregate_expression_return

    MySQLParser_in_aggregate_expression_return in_aggregate_expression2404;
    #undef	RETURN_TYPE_in_aggregate_expression2404
    #define	RETURN_TYPE_in_aggregate_expression2404 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_in_aggregate_expression_return in_aggregate_expression2412;
    #undef	RETURN_TYPE_in_aggregate_expression2412
    #define	RETURN_TYPE_in_aggregate_expression2412 MySQLParser_in_aggregate_expression_return

    MySQLParser_in_aggregate_expression_return in_aggregate_expression2417;
    #undef	RETURN_TYPE_in_aggregate_expression2417
    #define	RETURN_TYPE_in_aggregate_expression2417 MySQLParser_in_aggregate_expression_return

    MySQLParser_expression_list_return expression_list2422;
    #undef	RETURN_TYPE_expression_list2422
    #define	RETURN_TYPE_expression_list2422 MySQLParser_expression_list_return

    MySQLParser_order_by_clause_return order_by_clause2423;
    #undef	RETURN_TYPE_order_by_clause2423
    #define	RETURN_TYPE_order_by_clause2423 MySQLParser_order_by_clause_return

    MySQLParser_text_string_return text_string2425;
    #undef	RETURN_TYPE_text_string2425
    #define	RETURN_TYPE_text_string2425 MySQLParser_text_string_return

    pANTLR3_BASE_TREE AVG_SYMBOL2370_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2371_tree;
    pANTLR3_BASE_TREE DISTINCT_SYMBOL2372_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2374_tree;
    pANTLR3_BASE_TREE BIT_AND_SYMBOL2375_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2376_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2378_tree;
    pANTLR3_BASE_TREE BIT_OR_SYMBOL2379_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2380_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2382_tree;
    pANTLR3_BASE_TREE BIT_XOR_SYMBOL2383_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2384_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2386_tree;
    pANTLR3_BASE_TREE MIN_SYMBOL2388_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2389_tree;
    pANTLR3_BASE_TREE DISTINCT_SYMBOL2390_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2392_tree;
    pANTLR3_BASE_TREE MAX_SYMBOL2393_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2394_tree;
    pANTLR3_BASE_TREE DISTINCT_SYMBOL2395_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2397_tree;
    pANTLR3_BASE_TREE STD_SYMBOL2398_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2399_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2401_tree;
    pANTLR3_BASE_TREE VARIANCE_SYMBOL2402_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2403_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2405_tree;
    pANTLR3_BASE_TREE STDDEV_SAMP_SYMBOL2406_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2407_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2409_tree;
    pANTLR3_BASE_TREE VAR_SAMP_SYMBOL2410_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2411_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2413_tree;
    pANTLR3_BASE_TREE SUM_SYMBOL2414_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2415_tree;
    pANTLR3_BASE_TREE DISTINCT_SYMBOL2416_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2418_tree;
    pANTLR3_BASE_TREE GROUP_CONCAT_SYMBOL2419_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2420_tree;
    pANTLR3_BASE_TREE DISTINCT_SYMBOL2421_tree;
    pANTLR3_BASE_TREE SEPARATOR_SYMBOL2424_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2426_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    AVG_SYMBOL2370       = NULL;
    OPEN_PAR_SYMBOL2371       = NULL;
    DISTINCT_SYMBOL2372       = NULL;
    CLOSE_PAR_SYMBOL2374       = NULL;
    BIT_AND_SYMBOL2375       = NULL;
    OPEN_PAR_SYMBOL2376       = NULL;
    CLOSE_PAR_SYMBOL2378       = NULL;
    BIT_OR_SYMBOL2379       = NULL;
    OPEN_PAR_SYMBOL2380       = NULL;
    CLOSE_PAR_SYMBOL2382       = NULL;
    BIT_XOR_SYMBOL2383       = NULL;
    OPEN_PAR_SYMBOL2384       = NULL;
    CLOSE_PAR_SYMBOL2386       = NULL;
    MIN_SYMBOL2388       = NULL;
    OPEN_PAR_SYMBOL2389       = NULL;
    DISTINCT_SYMBOL2390       = NULL;
    CLOSE_PAR_SYMBOL2392       = NULL;
    MAX_SYMBOL2393       = NULL;
    OPEN_PAR_SYMBOL2394       = NULL;
    DISTINCT_SYMBOL2395       = NULL;
    CLOSE_PAR_SYMBOL2397       = NULL;
    STD_SYMBOL2398       = NULL;
    OPEN_PAR_SYMBOL2399       = NULL;
    CLOSE_PAR_SYMBOL2401       = NULL;
    VARIANCE_SYMBOL2402       = NULL;
    OPEN_PAR_SYMBOL2403       = NULL;
    CLOSE_PAR_SYMBOL2405       = NULL;
    STDDEV_SAMP_SYMBOL2406       = NULL;
    OPEN_PAR_SYMBOL2407       = NULL;
    CLOSE_PAR_SYMBOL2409       = NULL;
    VAR_SAMP_SYMBOL2410       = NULL;
    OPEN_PAR_SYMBOL2411       = NULL;
    CLOSE_PAR_SYMBOL2413       = NULL;
    SUM_SYMBOL2414       = NULL;
    OPEN_PAR_SYMBOL2415       = NULL;
    DISTINCT_SYMBOL2416       = NULL;
    CLOSE_PAR_SYMBOL2418       = NULL;
    GROUP_CONCAT_SYMBOL2419       = NULL;
    OPEN_PAR_SYMBOL2420       = NULL;
    DISTINCT_SYMBOL2421       = NULL;
    SEPARATOR_SYMBOL2424       = NULL;
    CLOSE_PAR_SYMBOL2426       = NULL;
    in_aggregate_expression2373.tree = NULL;

    in_aggregate_expression2377.tree = NULL;

    in_aggregate_expression2381.tree = NULL;

    in_aggregate_expression2385.tree = NULL;

    count_function2387.tree = NULL;

    in_aggregate_expression2391.tree = NULL;

    in_aggregate_expression2396.tree = NULL;

    in_aggregate_expression2400.tree = NULL;

    in_aggregate_expression2404.tree = NULL;

    in_aggregate_expression2408.tree = NULL;

    in_aggregate_expression2412.tree = NULL;

    in_aggregate_expression2417.tree = NULL;

    expression_list2422.tree = NULL;

    order_by_clause2423.tree = NULL;

    text_string2425.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    AVG_SYMBOL2370_tree   = NULL;
    OPEN_PAR_SYMBOL2371_tree   = NULL;
    DISTINCT_SYMBOL2372_tree   = NULL;
    CLOSE_PAR_SYMBOL2374_tree   = NULL;
    BIT_AND_SYMBOL2375_tree   = NULL;
    OPEN_PAR_SYMBOL2376_tree   = NULL;
    CLOSE_PAR_SYMBOL2378_tree   = NULL;
    BIT_OR_SYMBOL2379_tree   = NULL;
    OPEN_PAR_SYMBOL2380_tree   = NULL;
    CLOSE_PAR_SYMBOL2382_tree   = NULL;
    BIT_XOR_SYMBOL2383_tree   = NULL;
    OPEN_PAR_SYMBOL2384_tree   = NULL;
    CLOSE_PAR_SYMBOL2386_tree   = NULL;
    MIN_SYMBOL2388_tree   = NULL;
    OPEN_PAR_SYMBOL2389_tree   = NULL;
    DISTINCT_SYMBOL2390_tree   = NULL;
    CLOSE_PAR_SYMBOL2392_tree   = NULL;
    MAX_SYMBOL2393_tree   = NULL;
    OPEN_PAR_SYMBOL2394_tree   = NULL;
    DISTINCT_SYMBOL2395_tree   = NULL;
    CLOSE_PAR_SYMBOL2397_tree   = NULL;
    STD_SYMBOL2398_tree   = NULL;
    OPEN_PAR_SYMBOL2399_tree   = NULL;
    CLOSE_PAR_SYMBOL2401_tree   = NULL;
    VARIANCE_SYMBOL2402_tree   = NULL;
    OPEN_PAR_SYMBOL2403_tree   = NULL;
    CLOSE_PAR_SYMBOL2405_tree   = NULL;
    STDDEV_SAMP_SYMBOL2406_tree   = NULL;
    OPEN_PAR_SYMBOL2407_tree   = NULL;
    CLOSE_PAR_SYMBOL2409_tree   = NULL;
    VAR_SAMP_SYMBOL2410_tree   = NULL;
    OPEN_PAR_SYMBOL2411_tree   = NULL;
    CLOSE_PAR_SYMBOL2413_tree   = NULL;
    SUM_SYMBOL2414_tree   = NULL;
    OPEN_PAR_SYMBOL2415_tree   = NULL;
    DISTINCT_SYMBOL2416_tree   = NULL;
    CLOSE_PAR_SYMBOL2418_tree   = NULL;
    GROUP_CONCAT_SYMBOL2419_tree   = NULL;
    OPEN_PAR_SYMBOL2420_tree   = NULL;
    DISTINCT_SYMBOL2421_tree   = NULL;
    SEPARATOR_SYMBOL2424_tree   = NULL;
    CLOSE_PAR_SYMBOL2426_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2468: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:2469:2: AVG_SYMBOL OPEN_PAR_SYMBOL ( DISTINCT_SYMBOL )? in_aggregate_expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        AVG_SYMBOL2370 = (pANTLR3_COMMON_TOKEN) MATCHT(AVG_SYMBOL, &FOLLOW_AVG_SYMBOL_in_aggregate_function12549);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        AVG_SYMBOL2370_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AVG_SYMBOL2370));
        	        ADAPTOR->addChild(ADAPTOR, root_0, AVG_SYMBOL2370_tree);
        	        }

        	        OPEN_PAR_SYMBOL2371 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12551);
        	        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);
        	        }

        	        // MySQL.g:2469:29: ( DISTINCT_SYMBOL )?
        	        {
        	            int alt670=2;
        	            switch ( LA(1) )
        	            {
        	                case DISTINCT_SYMBOL:
        	                	{
        	                		alt670=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt670)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2469:29: DISTINCT_SYMBOL
        	        	    {
        	        	        DISTINCT_SYMBOL2372 = (pANTLR3_COMMON_TOKEN) MATCHT(DISTINCT_SYMBOL, &FOLLOW_DISTINCT_SYMBOL_in_aggregate_function12553);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleaggregate_functionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        DISTINCT_SYMBOL2372_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DISTINCT_SYMBOL2372));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, DISTINCT_SYMBOL2372_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_in_aggregate_expression_in_aggregate_function12556);
        	        in_aggregate_expression2373=in_aggregate_expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, in_aggregate_expression2373.tree);

        	        CLOSE_PAR_SYMBOL2374 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12558);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2374_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2374));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2374_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2470:4: BIT_AND_SYMBOL OPEN_PAR_SYMBOL in_aggregate_expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BIT_AND_SYMBOL2375 = (pANTLR3_COMMON_TOKEN) MATCHT(BIT_AND_SYMBOL, &FOLLOW_BIT_AND_SYMBOL_in_aggregate_function12563);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BIT_AND_SYMBOL2375_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BIT_AND_SYMBOL2375));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BIT_AND_SYMBOL2375_tree);
        	        }

        	        OPEN_PAR_SYMBOL2376 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12565);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2376_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2376));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2376_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_in_aggregate_expression_in_aggregate_function12567);
        	        in_aggregate_expression2377=in_aggregate_expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, in_aggregate_expression2377.tree);

        	        CLOSE_PAR_SYMBOL2378 = (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_SYMBOL2378_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2378));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2378_tree);
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2471:4: BIT_OR_SYMBOL OPEN_PAR_SYMBOL in_aggregate_expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BIT_OR_SYMBOL2379 = (pANTLR3_COMMON_TOKEN) MATCHT(BIT_OR_SYMBOL, &FOLLOW_BIT_OR_SYMBOL_in_aggregate_function12574);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BIT_OR_SYMBOL2379_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BIT_OR_SYMBOL2379));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BIT_OR_SYMBOL2379_tree);
        	        }

        	        OPEN_PAR_SYMBOL2380 = (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_SYMBOL2380_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2380));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2380_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_in_aggregate_expression_in_aggregate_function12578);
        	        in_aggregate_expression2381=in_aggregate_expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, in_aggregate_expression2381.tree);

        	        CLOSE_PAR_SYMBOL2382 = (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_SYMBOL2382_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2382));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2382_tree);
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:2472:4: BIT_XOR_SYMBOL OPEN_PAR_SYMBOL in_aggregate_expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BIT_XOR_SYMBOL2383 = (pANTLR3_COMMON_TOKEN) MATCHT(BIT_XOR_SYMBOL, &FOLLOW_BIT_XOR_SYMBOL_in_aggregate_function12585);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BIT_XOR_SYMBOL2383_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BIT_XOR_SYMBOL2383));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BIT_XOR_SYMBOL2383_tree);
        	        }

        	        OPEN_PAR_SYMBOL2384 = (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_SYMBOL2384_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2384));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2384_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_in_aggregate_expression_in_aggregate_function12589);
        	        in_aggregate_expression2385=in_aggregate_expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, in_aggregate_expression2385.tree);

        	        CLOSE_PAR_SYMBOL2386 = (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_SYMBOL2386_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2386));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2386_tree);
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:2473:4: count_function
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_count_function_in_aggregate_function12596);
        	        count_function2387=count_function(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, count_function2387.tree);

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:2474:4: MIN_SYMBOL OPEN_PAR_SYMBOL ( DISTINCT_SYMBOL )? in_aggregate_expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MIN_SYMBOL2388 = (pANTLR3_COMMON_TOKEN) MATCHT(MIN_SYMBOL, &FOLLOW_MIN_SYMBOL_in_aggregate_function12601);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MIN_SYMBOL2388_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MIN_SYMBOL2388));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MIN_SYMBOL2388_tree);
        	        }

        	        OPEN_PAR_SYMBOL2389 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12603);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2389_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2389));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2389_tree);
        	        }

        	        // MySQL.g:2474:31: ( DISTINCT_SYMBOL )?
        	        {
        	            int alt671=2;
        	            switch ( LA(1) )
        	            {
        	                case DISTINCT_SYMBOL:
        	                	{
        	                		alt671=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt671)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2474:31: DISTINCT_SYMBOL
        	        	    {
        	        	        DISTINCT_SYMBOL2390 = (pANTLR3_COMMON_TOKEN) MATCHT(DISTINCT_SYMBOL, &FOLLOW_DISTINCT_SYMBOL_in_aggregate_function12605);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleaggregate_functionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        DISTINCT_SYMBOL2390_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DISTINCT_SYMBOL2390));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, DISTINCT_SYMBOL2390_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_in_aggregate_expression_in_aggregate_function12608);
        	        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_function12610);
        	        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 7:
        	    // MySQL.g:2475:4: MAX_SYMBOL OPEN_PAR_SYMBOL ( DISTINCT_SYMBOL )? in_aggregate_expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MAX_SYMBOL2393 = (pANTLR3_COMMON_TOKEN) MATCHT(MAX_SYMBOL, &FOLLOW_MAX_SYMBOL_in_aggregate_function12615);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MAX_SYMBOL2393_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MAX_SYMBOL2393));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MAX_SYMBOL2393_tree);
        	        }

        	        OPEN_PAR_SYMBOL2394 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12617);
        	        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);
        	        }

        	        // MySQL.g:2475:31: ( DISTINCT_SYMBOL )?
        	        {
        	            int alt672=2;
        	            switch ( LA(1) )
        	            {
        	                case DISTINCT_SYMBOL:
        	                	{
        	                		alt672=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt672)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2475:31: DISTINCT_SYMBOL
        	        	    {
        	        	        DISTINCT_SYMBOL2395 = (pANTLR3_COMMON_TOKEN) MATCHT(DISTINCT_SYMBOL, &FOLLOW_DISTINCT_SYMBOL_in_aggregate_function12619);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleaggregate_functionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        DISTINCT_SYMBOL2395_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DISTINCT_SYMBOL2395));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, DISTINCT_SYMBOL2395_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_in_aggregate_expression_in_aggregate_function12622);
        	        in_aggregate_expression2396=in_aggregate_expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, in_aggregate_expression2396.tree);

        	        CLOSE_PAR_SYMBOL2397 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12624);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2397_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2397));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2397_tree);
        	        }

        	    }
        	    break;
        	case 8:
        	    // MySQL.g:2476:4: STD_SYMBOL OPEN_PAR_SYMBOL in_aggregate_expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        STD_SYMBOL2398 = (pANTLR3_COMMON_TOKEN) MATCHT(STD_SYMBOL, &FOLLOW_STD_SYMBOL_in_aggregate_function12629);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        STD_SYMBOL2398_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STD_SYMBOL2398));
        	        ADAPTOR->addChild(ADAPTOR, root_0, STD_SYMBOL2398_tree);
        	        }

        	        OPEN_PAR_SYMBOL2399 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12631);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2399_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2399));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2399_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_in_aggregate_expression_in_aggregate_function12633);
        	        in_aggregate_expression2400=in_aggregate_expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, in_aggregate_expression2400.tree);

        	        CLOSE_PAR_SYMBOL2401 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12635);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2401_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2401));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2401_tree);
        	        }

        	    }
        	    break;
        	case 9:
        	    // MySQL.g:2477:4: VARIANCE_SYMBOL OPEN_PAR_SYMBOL in_aggregate_expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        VARIANCE_SYMBOL2402 = (pANTLR3_COMMON_TOKEN) MATCHT(VARIANCE_SYMBOL, &FOLLOW_VARIANCE_SYMBOL_in_aggregate_function12640);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        VARIANCE_SYMBOL2402_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VARIANCE_SYMBOL2402));
        	        ADAPTOR->addChild(ADAPTOR, root_0, VARIANCE_SYMBOL2402_tree);
        	        }

        	        OPEN_PAR_SYMBOL2403 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12642);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2403_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2403));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2403_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_in_aggregate_expression_in_aggregate_function12644);
        	        in_aggregate_expression2404=in_aggregate_expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, in_aggregate_expression2404.tree);

        	        CLOSE_PAR_SYMBOL2405 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12646);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2405_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2405));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2405_tree);
        	        }

        	    }
        	    break;
        	case 10:
        	    // MySQL.g:2478:4: STDDEV_SAMP_SYMBOL OPEN_PAR_SYMBOL in_aggregate_expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        STDDEV_SAMP_SYMBOL2406 = (pANTLR3_COMMON_TOKEN) MATCHT(STDDEV_SAMP_SYMBOL, &FOLLOW_STDDEV_SAMP_SYMBOL_in_aggregate_function12651);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        STDDEV_SAMP_SYMBOL2406_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STDDEV_SAMP_SYMBOL2406));
        	        ADAPTOR->addChild(ADAPTOR, root_0, STDDEV_SAMP_SYMBOL2406_tree);
        	        }

        	        OPEN_PAR_SYMBOL2407 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12653);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2407_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2407));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2407_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_in_aggregate_expression_in_aggregate_function12655);
        	        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_function12657);
        	        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 11:
        	    // MySQL.g:2479:4: VAR_SAMP_SYMBOL OPEN_PAR_SYMBOL in_aggregate_expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        VAR_SAMP_SYMBOL2410 = (pANTLR3_COMMON_TOKEN) MATCHT(VAR_SAMP_SYMBOL, &FOLLOW_VAR_SAMP_SYMBOL_in_aggregate_function12662);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        VAR_SAMP_SYMBOL2410_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VAR_SAMP_SYMBOL2410));
        	        ADAPTOR->addChild(ADAPTOR, root_0, VAR_SAMP_SYMBOL2410_tree);
        	        }

        	        OPEN_PAR_SYMBOL2411 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12664);
        	        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);
        	        }

        	        FOLLOWPUSH(FOLLOW_in_aggregate_expression_in_aggregate_function12666);
        	        in_aggregate_expression2412=in_aggregate_expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, in_aggregate_expression2412.tree);

        	        CLOSE_PAR_SYMBOL2413 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12668);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2413_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2413));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2413_tree);
        	        }

        	    }
        	    break;
        	case 12:
        	    // MySQL.g:2480:4: SUM_SYMBOL OPEN_PAR_SYMBOL ( DISTINCT_SYMBOL )? in_aggregate_expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SUM_SYMBOL2414 = (pANTLR3_COMMON_TOKEN) MATCHT(SUM_SYMBOL, &FOLLOW_SUM_SYMBOL_in_aggregate_function12673);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SUM_SYMBOL2414_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SUM_SYMBOL2414));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SUM_SYMBOL2414_tree);
        	        }

        	        OPEN_PAR_SYMBOL2415 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12675);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2415_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2415));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2415_tree);
        	        }

        	        // MySQL.g:2480:31: ( DISTINCT_SYMBOL )?
        	        {
        	            int alt673=2;
        	            switch ( LA(1) )
        	            {
        	                case DISTINCT_SYMBOL:
        	                	{
        	                		alt673=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt673)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2480:31: DISTINCT_SYMBOL
        	        	    {
        	        	        DISTINCT_SYMBOL2416 = (pANTLR3_COMMON_TOKEN) MATCHT(DISTINCT_SYMBOL, &FOLLOW_DISTINCT_SYMBOL_in_aggregate_function12677);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleaggregate_functionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        DISTINCT_SYMBOL2416_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DISTINCT_SYMBOL2416));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, DISTINCT_SYMBOL2416_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_in_aggregate_expression_in_aggregate_function12680);
        	        in_aggregate_expression2417=in_aggregate_expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, in_aggregate_expression2417.tree);

        	        CLOSE_PAR_SYMBOL2418 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12682);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2418_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2418));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2418_tree);
        	        }

        	    }
        	    break;
        	case 13:
        	    // MySQL.g:2481: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_SYMBOL2419 = (pANTLR3_COMMON_TOKEN) MATCHT(GROUP_CONCAT_SYMBOL, &FOLLOW_GROUP_CONCAT_SYMBOL_in_aggregate_function12687);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        GROUP_CONCAT_SYMBOL2419_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GROUP_CONCAT_SYMBOL2419));
        	        ADAPTOR->addChild(ADAPTOR, root_0, GROUP_CONCAT_SYMBOL2419_tree);
        	        }

        	        OPEN_PAR_SYMBOL2420 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12689);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2420_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2420));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2420_tree);
        	        }

        	        // MySQL.g:2481:40: ( DISTINCT_SYMBOL )?
        	        {
        	            int alt674=2;
        	            switch ( LA(1) )
        	            {
        	                case DISTINCT_SYMBOL:
        	                	{
        	                		alt674=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt674)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2481:40: DISTINCT_SYMBOL
        	        	    {
        	        	        DISTINCT_SYMBOL2421 = (pANTLR3_COMMON_TOKEN) MATCHT(DISTINCT_SYMBOL, &FOLLOW_DISTINCT_SYMBOL_in_aggregate_function12691);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleaggregate_functionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        DISTINCT_SYMBOL2421_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DISTINCT_SYMBOL2421));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, DISTINCT_SYMBOL2421_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_list_in_aggregate_function12694);
        	        expression_list2422=expression_list(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression_list2422.tree);

        	        // MySQL.g:2481:73: ( order_by_clause )?
        	        {
        	            int alt675=2;
        	            switch ( LA(1) )
        	            {
        	                case ORDER_SYMBOL:
        	                	{
        	                		alt675=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt675)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2481:73: order_by_clause
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_order_by_clause_in_aggregate_function12696);
        	        	        order_by_clause2423=order_by_clause(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleaggregate_functionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, order_by_clause2423.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:2481:90: ( SEPARATOR_SYMBOL text_string )?
        	        {
        	            int alt676=2;
        	            switch ( LA(1) )
        	            {
        	                case SEPARATOR_SYMBOL:
        	                	{
        	                		alt676=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt676)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2481:91: SEPARATOR_SYMBOL text_string
        	        	    {
        	        	        SEPARATOR_SYMBOL2424 = (pANTLR3_COMMON_TOKEN) MATCHT(SEPARATOR_SYMBOL, &FOLLOW_SEPARATOR_SYMBOL_in_aggregate_function12700);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleaggregate_functionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        SEPARATOR_SYMBOL2424_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SEPARATOR_SYMBOL2424));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, SEPARATOR_SYMBOL2424_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_text_string_in_aggregate_function12702);
        	        	        text_string2425=text_string(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleaggregate_functionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string2425.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        CLOSE_PAR_SYMBOL2426 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12706);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2426_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2426));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2426_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:2484: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_SYMBOL2427;
    MySQLParser_expression_return expression2428;
    #undef	RETURN_TYPE_expression2428
    #define	RETURN_TYPE_expression2428 MySQLParser_expression_return

    pANTLR3_BASE_TREE ALL_SYMBOL2427_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ALL_SYMBOL2427       = NULL;
    expression2428.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ALL_SYMBOL2427_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2484:24: ( ( ALL_SYMBOL )? expression )
        // MySQL.g:2485:2: ( ALL_SYMBOL )? expression
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:2485:2: ( ALL_SYMBOL )?
            {
                int alt678=2;
                switch ( LA(1) )
                {
                    case ALL_SYMBOL:
                    	{
                    		alt678=1;
                    	}
                        break;
                }

                switch (alt678)
                {
            	case 1:
            	    // MySQL.g:2485:2: ALL_SYMBOL
            	    {
            	        ALL_SYMBOL2427 = (pANTLR3_COMMON_TOKEN) MATCHT(ALL_SYMBOL, &FOLLOW_ALL_SYMBOL_in_in_aggregate_expression12715);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulein_aggregate_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ALL_SYMBOL2427_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ALL_SYMBOL2427));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ALL_SYMBOL2427_tree);
            	        }

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_expression_in_in_aggregate_expression12718);
            expression2428=expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulein_aggregate_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2428.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:2488: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_SYMBOL2429;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2430;
    pANTLR3_COMMON_TOKEN    ALL_SYMBOL2431;
    pANTLR3_COMMON_TOKEN    MULT_OPERATOR2432;
    pANTLR3_COMMON_TOKEN    DISTINCT_SYMBOL2434;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2436;
    MySQLParser_in_aggregate_expression_return in_aggregate_expression2433;
    #undef	RETURN_TYPE_in_aggregate_expression2433
    #define	RETURN_TYPE_in_aggregate_expression2433 MySQLParser_in_aggregate_expression_return

    MySQLParser_expression_list_return expression_list2435;
    #undef	RETURN_TYPE_expression_list2435
    #define	RETURN_TYPE_expression_list2435 MySQLParser_expression_list_return

    pANTLR3_BASE_TREE COUNT_SYMBOL2429_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2430_tree;
    pANTLR3_BASE_TREE ALL_SYMBOL2431_tree;
    pANTLR3_BASE_TREE MULT_OPERATOR2432_tree;
    pANTLR3_BASE_TREE DISTINCT_SYMBOL2434_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2436_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COUNT_SYMBOL2429       = NULL;
    OPEN_PAR_SYMBOL2430       = NULL;
    ALL_SYMBOL2431       = NULL;
    MULT_OPERATOR2432       = NULL;
    DISTINCT_SYMBOL2434       = NULL;
    CLOSE_PAR_SYMBOL2436       = NULL;
    in_aggregate_expression2433.tree = NULL;

    expression_list2435.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COUNT_SYMBOL2429_tree   = NULL;
    OPEN_PAR_SYMBOL2430_tree   = NULL;
    ALL_SYMBOL2431_tree   = NULL;
    MULT_OPERATOR2432_tree   = NULL;
    DISTINCT_SYMBOL2434_tree   = NULL;
    CLOSE_PAR_SYMBOL2436_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2488:15: ( COUNT_SYMBOL OPEN_PAR_SYMBOL ( ( ALL_SYMBOL )? MULT_OPERATOR | in_aggregate_expression | DISTINCT_SYMBOL expression_list ) CLOSE_PAR_SYMBOL )
        // MySQL.g:2489: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_SYMBOL2429 = (pANTLR3_COMMON_TOKEN) MATCHT(COUNT_SYMBOL, &FOLLOW_COUNT_SYMBOL_in_count_function12727);
            if  (HASEXCEPTION())
            {
                goto rulecount_functionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            COUNT_SYMBOL2429_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COUNT_SYMBOL2429));
            ADAPTOR->addChild(ADAPTOR, root_0, COUNT_SYMBOL2429_tree);
            }

            OPEN_PAR_SYMBOL2430 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_count_function12729);
            if  (HASEXCEPTION())
            {
                goto rulecount_functionEx;
            }
            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:2490: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 == BINARY_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 == EXISTS_SYMBOL || ((LA680_1 >= EXTRACT_SYMBOL) && (LA680_1 <= FALSE_SYMBOL)) || LA680_1 == GROUP_CONCAT_SYMBOL || LA680_1 == IF_SYMBOL || LA680_1 == INSERT_SYMBOL || LA680_1 == INTERVAL_SYMBOL || LA680_1 == LEFT_SYMBOL || LA680_1 == MATCH_SYMBOL || LA680_1 == MAX_SYMBOL || LA680_1 == MIN_SYMBOL || LA680_1 == MOD_SYMBOL || LA680_1 == NCHAR_TEXT || ((LA680_1 >= NOT2_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 <= 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 >= UTC_DATE_SYMBOL) && (LA680_1 <= UTC_TIME_SYMBOL)) || LA680_1 == VALUES_SYMBOL || LA680_1 == VARIANCE_SYMBOL || LA680_1 == VAR_SAMP_SYMBOL || ((LA680_1 >= AT_AT_SIGN_SYMBOL) && (LA680_1 <= AT_TEXT_SUFFIX)) || ((LA680_1 >= BACK_TICK_QUOTED_ID) && (LA680_1 <= BIN_NUMBER)) || LA680_1 == BITWISE_NOT_OPERATOR || ((LA680_1 >= BIT_AND_SYMBOL) && (LA680_1 <= BIT_XOR_SYMBOL)) || LA680_1 == DECIMAL_NUMBER || LA680_1 == DOT_SYMBOL || LA680_1 == DOUBLE_QUOTED_TEXT || LA680_1 == FLOAT_NUMBER || ((LA680_1 >= HEX_NUMBER) && (LA680_1 <= IDENTIFIER)) || LA680_1 == INT_NUMBER || LA680_1 == LOGICAL_NOT_OPERATOR || ((LA680_1 >= LONG_NUMBER) && (LA680_1 <= MINUS_OPERATOR)) || LA680_1 == PLUS_OPERATOR || ((LA680_1 >= ULONGLONG_NUMBER) && (LA680_1 <= UNDERSCORE_CHARSET))))
                            {
                                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 == BINARY_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 == EXISTS_SYMBOL || ((LA680_0 >= EXTRACT_SYMBOL) && (LA680_0 <= FALSE_SYMBOL)) || LA680_0 == GROUP_CONCAT_SYMBOL || LA680_0 == IF_SYMBOL || LA680_0 == INSERT_SYMBOL || LA680_0 == INTERVAL_SYMBOL || LA680_0 == LEFT_SYMBOL || LA680_0 == MATCH_SYMBOL || LA680_0 == MAX_SYMBOL || LA680_0 == MIN_SYMBOL || LA680_0 == MOD_SYMBOL || LA680_0 == NCHAR_TEXT || ((LA680_0 >= NOT2_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 <= 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 >= UTC_DATE_SYMBOL) && (LA680_0 <= UTC_TIME_SYMBOL)) || LA680_0 == VALUES_SYMBOL || LA680_0 == VARIANCE_SYMBOL || LA680_0 == VAR_SAMP_SYMBOL || ((LA680_0 >= AT_AT_SIGN_SYMBOL) && (LA680_0 <= AT_TEXT_SUFFIX)) || ((LA680_0 >= BACK_TICK_QUOTED_ID) && (LA680_0 <= BIN_NUMBER)) || LA680_0 == BITWISE_NOT_OPERATOR || ((LA680_0 >= BIT_AND_SYMBOL) && (LA680_0 <= BIT_XOR_SYMBOL)) || LA680_0 == DECIMAL_NUMBER || LA680_0 == DOT_SYMBOL || LA680_0 == DOUBLE_QUOTED_TEXT || LA680_0 == FLOAT_NUMBER || ((LA680_0 >= HEX_NUMBER) && (LA680_0 <= IDENTIFIER)) || LA680_0 == INT_NUMBER || LA680_0 == LOGICAL_NOT_OPERATOR || ((LA680_0 >= LONG_NUMBER) && (LA680_0 <= MINUS_OPERATOR)) || LA680_0 == PLUS_OPERATOR || ((LA680_0 >= ULONGLONG_NUMBER) && (LA680_0 <= UNDERSCORE_CHARSET))))
                    {
                        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:2491:3: ( ALL_SYMBOL )? MULT_OPERATOR
            	    {
            	        // MySQL.g:2491:3: ( ALL_SYMBOL )?
            	        {
            	            int alt679=2;
            	            switch ( LA(1) )
            	            {
            	                case ALL_SYMBOL:
            	                	{
            	                		alt679=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt679)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2491:3: ALL_SYMBOL
            	        	    {
            	        	        ALL_SYMBOL2431 = (pANTLR3_COMMON_TOKEN) MATCHT(ALL_SYMBOL, &FOLLOW_ALL_SYMBOL_in_count_function12736);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecount_functionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        ALL_SYMBOL2431_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ALL_SYMBOL2431));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, ALL_SYMBOL2431_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        MULT_OPERATOR2432 = (pANTLR3_COMMON_TOKEN) MATCHT(MULT_OPERATOR, &FOLLOW_MULT_OPERATOR_in_count_function12739);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecount_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        MULT_OPERATOR2432_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MULT_OPERATOR2432));
            	        ADAPTOR->addChild(ADAPTOR, root_0, MULT_OPERATOR2432_tree);
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2492:5: in_aggregate_expression
            	    {
            	        FOLLOWPUSH(FOLLOW_in_aggregate_expression_in_count_function12745);
            	        in_aggregate_expression2433=in_aggregate_expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecount_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, in_aggregate_expression2433.tree);

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:2493:5: DISTINCT_SYMBOL expression_list
            	    {
            	        DISTINCT_SYMBOL2434 = (pANTLR3_COMMON_TOKEN) MATCHT(DISTINCT_SYMBOL, &FOLLOW_DISTINCT_SYMBOL_in_count_function12751);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecount_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DISTINCT_SYMBOL2434_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DISTINCT_SYMBOL2434));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DISTINCT_SYMBOL2434_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_expression_list_in_count_function12753);
            	        expression_list2435=expression_list(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecount_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression_list2435.tree);

            	    }
            	    break;

                }
            }

            CLOSE_PAR_SYMBOL2436 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_count_function12759);
            if  (HASEXCEPTION())
            {
                goto rulecount_functionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL2436_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2436));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2436_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 function_call
 * MySQL.g:2498:1: function_call : function_call_expression -> ^( FUNCTION_CALL_TOKEN function_call_expression ) ;
 */
static MySQLParser_function_call_return
function_call(pMySQLParser ctx)
{
    MySQLParser_function_call_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_function_call_expression_return function_call_expression2437;
    #undef	RETURN_TYPE_function_call_expression2437
    #define	RETURN_TYPE_function_call_expression2437 MySQLParser_function_call_expression_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_function_call_expression;
    /* Initialize rule variables
     */

    root_0 = NULL;

    function_call_expression2437.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;



    stream_function_call_expression   = NULL;
    #define CREATE_stream_function_call_expression  if (stream_function_call_expression == NULL) {stream_function_call_expression = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule function_call_expression"); }

    retval.tree  = NULL;

    {
        // MySQL.g:2498:14: ( function_call_expression -> ^( FUNCTION_CALL_TOKEN function_call_expression ) )
        // MySQL.g:2499:2: function_call_expression
        {
            FOLLOWPUSH(FOLLOW_function_call_expression_in_function_call12768);
            function_call_expression2437=function_call_expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulefunction_callEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_function_call_expression; stream_function_call_expression->add(stream_function_call_expression, function_call_expression2437.tree, NULL); }

            /* AST REWRITE
             * elements          : 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;
            	// 2499:28: -> ^( FUNCTION_CALL_TOKEN function_call_expression )
            	{
            	    // MySQL.g:2499:31: ^( FUNCTION_CALL_TOKEN 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_function_call_expression == NULL ? NULL : stream_function_call_expression->nextTree(stream_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 rulefunction_callEx; /* Prevent compiler warnings */
    rulefunction_callEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
        if (stream_function_call_expression != NULL) stream_function_call_expression->free(stream_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 function_call */

/**
 * $ANTLR start function_call_expression
 * MySQL.g:2502:1: function_call_expression : pure_identifier ( OPEN_PAR_SYMBOL ( aliased_expression_list )? CLOSE_PAR_SYMBOL | dot_identifier OPEN_PAR_SYMBOL ( expression_list )? CLOSE_PAR_SYMBOL ) ;
 */
static MySQLParser_function_call_expression_return
function_call_expression(pMySQLParser ctx)
{
    MySQLParser_function_call_expression_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2439;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2441;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2443;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2445;
    MySQLParser_pure_identifier_return pure_identifier2438;
    #undef	RETURN_TYPE_pure_identifier2438
    #define	RETURN_TYPE_pure_identifier2438 MySQLParser_pure_identifier_return

    MySQLParser_aliased_expression_list_return aliased_expression_list2440;
    #undef	RETURN_TYPE_aliased_expression_list2440
    #define	RETURN_TYPE_aliased_expression_list2440 MySQLParser_aliased_expression_list_return

    MySQLParser_dot_identifier_return dot_identifier2442;
    #undef	RETURN_TYPE_dot_identifier2442
    #define	RETURN_TYPE_dot_identifier2442 MySQLParser_dot_identifier_return

    MySQLParser_expression_list_return expression_list2444;
    #undef	RETURN_TYPE_expression_list2444
    #define	RETURN_TYPE_expression_list2444 MySQLParser_expression_list_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2439_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2441_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2443_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2445_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL2439       = NULL;
    CLOSE_PAR_SYMBOL2441       = NULL;
    OPEN_PAR_SYMBOL2443       = NULL;
    CLOSE_PAR_SYMBOL2445       = NULL;
    pure_identifier2438.tree = NULL;

    aliased_expression_list2440.tree = NULL;

    dot_identifier2442.tree = NULL;

    expression_list2444.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL2439_tree   = NULL;
    CLOSE_PAR_SYMBOL2441_tree   = NULL;
    OPEN_PAR_SYMBOL2443_tree   = NULL;
    CLOSE_PAR_SYMBOL2445_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2502:25: ( pure_identifier ( OPEN_PAR_SYMBOL ( aliased_expression_list )? CLOSE_PAR_SYMBOL | dot_identifier OPEN_PAR_SYMBOL ( expression_list )? CLOSE_PAR_SYMBOL ) )
        // MySQL.g:2503:2: pure_identifier ( OPEN_PAR_SYMBOL ( aliased_expression_list )? CLOSE_PAR_SYMBOL | dot_identifier OPEN_PAR_SYMBOL ( expression_list )? CLOSE_PAR_SYMBOL )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_pure_identifier_in_function_call_expression12786);
            pure_identifier2438=pure_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulefunction_call_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, pure_identifier2438.tree);

            // MySQL.g:2504:2: ( OPEN_PAR_SYMBOL ( aliased_expression_list )? CLOSE_PAR_SYMBOL | dot_identifier OPEN_PAR_SYMBOL ( expression_list )? CLOSE_PAR_SYMBOL )
            {
                int alt683=2;
                switch ( LA(1) )
                {
                case OPEN_PAR_SYMBOL:
                	{
                		alt683=1;
                	}
                    break;
                case DOT_SYMBOL:
                	{
                		alt683=2;
                	}
                    break;

                default:
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }

                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 683;
                    EXCEPTION->state        = 0;


                    goto rulefunction_call_expressionEx;

                }

                switch (alt683)
                {
            	case 1:
            	    // MySQL.g:2505:3: OPEN_PAR_SYMBOL ( aliased_expression_list )? CLOSE_PAR_SYMBOL
            	    {
            	        OPEN_PAR_SYMBOL2439 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_function_call_expression12793);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulefunction_call_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OPEN_PAR_SYMBOL2439_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2439));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2439_tree);
            	        }

            	        // MySQL.g:2505:19: ( aliased_expression_list )?
            	        {
            	            int alt681=2;
            	            {
            	                int LA681_0 = LA(1);
            	                if ( (((LA681_0 >= ACCOUNT_SYMBOL) && (LA681_0 <= YEAR_SYMBOL)) || LA681_0 == BINARY_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 == EXISTS_SYMBOL || ((LA681_0 >= EXTRACT_SYMBOL) && (LA681_0 <= FALSE_SYMBOL)) || LA681_0 == GROUP_CONCAT_SYMBOL || LA681_0 == IF_SYMBOL || LA681_0 == INSERT_SYMBOL || LA681_0 == INTERVAL_SYMBOL || LA681_0 == LEFT_SYMBOL || LA681_0 == MATCH_SYMBOL || LA681_0 == MAX_SYMBOL || LA681_0 == MIN_SYMBOL || LA681_0 == MOD_SYMBOL || LA681_0 == NCHAR_TEXT || ((LA681_0 >= NOT2_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 <= 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 >= UTC_DATE_SYMBOL) && (LA681_0 <= UTC_TIME_SYMBOL)) || LA681_0 == VALUES_SYMBOL || LA681_0 == VARIANCE_SYMBOL || LA681_0 == VAR_SAMP_SYMBOL || ((LA681_0 >= AT_AT_SIGN_SYMBOL) && (LA681_0 <= AT_TEXT_SUFFIX)) || ((LA681_0 >= BACK_TICK_QUOTED_ID) && (LA681_0 <= BIN_NUMBER)) || LA681_0 == BITWISE_NOT_OPERATOR || ((LA681_0 >= BIT_AND_SYMBOL) && (LA681_0 <= BIT_XOR_SYMBOL)) || LA681_0 == DECIMAL_NUMBER || LA681_0 == DOT_SYMBOL || LA681_0 == DOUBLE_QUOTED_TEXT || LA681_0 == FLOAT_NUMBER || ((LA681_0 >= HEX_NUMBER) && (LA681_0 <= IDENTIFIER)) || LA681_0 == INT_NUMBER || LA681_0 == LOGICAL_NOT_OPERATOR || ((LA681_0 >= LONG_NUMBER) && (LA681_0 <= MINUS_OPERATOR)) || LA681_0 == PLUS_OPERATOR || ((LA681_0 >= ULONGLONG_NUMBER) && (LA681_0 <= UNDERSCORE_CHARSET))))
            	                {
            	                    alt681=1;
            	                }
            	            }
            	            switch (alt681)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2505:19: aliased_expression_list
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_aliased_expression_list_in_function_call_expression12795);
            	        	        aliased_expression_list2440=aliased_expression_list(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulefunction_call_expressionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, aliased_expression_list2440.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        CLOSE_PAR_SYMBOL2441 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_function_call_expression12798);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulefunction_call_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CLOSE_PAR_SYMBOL2441_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2441));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2441_tree);
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2506:5: dot_identifier OPEN_PAR_SYMBOL ( expression_list )? CLOSE_PAR_SYMBOL
            	    {
            	        FOLLOWPUSH(FOLLOW_dot_identifier_in_function_call_expression12805);
            	        dot_identifier2442=dot_identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulefunction_call_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, dot_identifier2442.tree);

            	        OPEN_PAR_SYMBOL2443 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_function_call_expression12807);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulefunction_call_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OPEN_PAR_SYMBOL2443_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2443));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2443_tree);
            	        }

            	        // MySQL.g:2506:36: ( expression_list )?
            	        {
            	            int alt682=2;
            	            {
            	                int LA682_0 = LA(1);
            	                if ( (((LA682_0 >= ACCOUNT_SYMBOL) && (LA682_0 <= YEAR_SYMBOL)) || LA682_0 == BINARY_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 == EXISTS_SYMBOL || ((LA682_0 >= EXTRACT_SYMBOL) && (LA682_0 <= FALSE_SYMBOL)) || LA682_0 == GROUP_CONCAT_SYMBOL || LA682_0 == IF_SYMBOL || LA682_0 == INSERT_SYMBOL || LA682_0 == INTERVAL_SYMBOL || LA682_0 == LEFT_SYMBOL || LA682_0 == MATCH_SYMBOL || LA682_0 == MAX_SYMBOL || LA682_0 == MIN_SYMBOL || LA682_0 == MOD_SYMBOL || LA682_0 == NCHAR_TEXT || ((LA682_0 >= NOT2_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 <= 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 >= UTC_DATE_SYMBOL) && (LA682_0 <= UTC_TIME_SYMBOL)) || LA682_0 == VALUES_SYMBOL || LA682_0 == VARIANCE_SYMBOL || LA682_0 == VAR_SAMP_SYMBOL || ((LA682_0 >= AT_AT_SIGN_SYMBOL) && (LA682_0 <= AT_TEXT_SUFFIX)) || ((LA682_0 >= BACK_TICK_QUOTED_ID) && (LA682_0 <= BIN_NUMBER)) || LA682_0 == BITWISE_NOT_OPERATOR || ((LA682_0 >= BIT_AND_SYMBOL) && (LA682_0 <= BIT_XOR_SYMBOL)) || LA682_0 == DECIMAL_NUMBER || LA682_0 == DOT_SYMBOL || LA682_0 == DOUBLE_QUOTED_TEXT || LA682_0 == FLOAT_NUMBER || ((LA682_0 >= HEX_NUMBER) && (LA682_0 <= IDENTIFIER)) || LA682_0 == INT_NUMBER || LA682_0 == LOGICAL_NOT_OPERATOR || ((LA682_0 >= LONG_NUMBER) && (LA682_0 <= MINUS_OPERATOR)) || LA682_0 == PLUS_OPERATOR || ((LA682_0 >= ULONGLONG_NUMBER) && (LA682_0 <= UNDERSCORE_CHARSET))))
            	                {
            	                    alt682=1;
            	                }
            	            }
            	            switch (alt682)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2506:36: expression_list
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_expression_list_in_function_call_expression12809);
            	        	        expression_list2444=expression_list(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulefunction_call_expressionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression_list2444.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        CLOSE_PAR_SYMBOL2445 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_function_call_expression12812);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulefunction_call_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CLOSE_PAR_SYMBOL2445_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2445));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2445_tree);
            	        }

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulefunction_call_expressionEx; /* Prevent compiler warnings */
    rulefunction_call_expressionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end function_call_expression */

/**
 * $ANTLR start aliased_expression_list
 * MySQL.g:2510: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_SYMBOL2447;
    MySQLParser_aliased_expression_return aliased_expression2446;
    #undef	RETURN_TYPE_aliased_expression2446
    #define	RETURN_TYPE_aliased_expression2446 MySQLParser_aliased_expression_return

    MySQLParser_aliased_expression_return aliased_expression2448;
    #undef	RETURN_TYPE_aliased_expression2448
    #define	RETURN_TYPE_aliased_expression2448 MySQLParser_aliased_expression_return

    pANTLR3_BASE_TREE COMMA_SYMBOL2447_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL2447       = NULL;
    aliased_expression2446.tree = NULL;

    aliased_expression2448.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL2447_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2510:24: ( aliased_expression ( COMMA_SYMBOL aliased_expression )* )
        // MySQL.g:2511:2: aliased_expression ( COMMA_SYMBOL aliased_expression )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_aliased_expression_in_aliased_expression_list12825);
            aliased_expression2446=aliased_expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulealiased_expression_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, aliased_expression2446.tree);

            // MySQL.g:2511:21: ( COMMA_SYMBOL aliased_expression )*

            for (;;)
            {
                int alt684=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt684=1;
                	}
                    break;

                }

                switch (alt684)
                {
            	case 1:
            	    // MySQL.g:2511:22: COMMA_SYMBOL aliased_expression
            	    {
            	        COMMA_SYMBOL2447 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_aliased_expression_list12828);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealiased_expression_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL2447_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2447));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2447_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_aliased_expression_in_aliased_expression_list12830);
            	        aliased_expression2448=aliased_expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealiased_expression_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, aliased_expression2448.tree);

            	    }
            	    break;

            	default:
            	    goto loop684;	/* break out of the loop */
            	    break;
                }
            }
            loop684: ; /* 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:2514: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 expression2449;
    #undef	RETURN_TYPE_expression2449
    #define	RETURN_TYPE_expression2449 MySQLParser_expression_return

    MySQLParser_select_alias_return select_alias2450;
    #undef	RETURN_TYPE_select_alias2450
    #define	RETURN_TYPE_select_alias2450 MySQLParser_select_alias_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    expression2449.tree = NULL;

    select_alias2450.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:2514:19: ( expression ( select_alias )? )
        // MySQL.g:2515:2: expression ( select_alias )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_expression_in_aliased_expression12841);
            expression2449=expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulealiased_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2449.tree);

            // MySQL.g:2515:13: ( select_alias )?
            {
                int alt685=2;
                {
                    int LA685_0 = LA(1);
                    if ( (((LA685_0 >= ACCOUNT_SYMBOL) && (LA685_0 <= YEAR_SYMBOL)) || LA685_0 == SINGLE_QUOTED_TEXT || LA685_0 == AS_SYMBOL || ((LA685_0 >= BACK_TICK_QUOTED_ID) && (LA685_0 <= BIN_NUMBER)) || LA685_0 == DOUBLE_QUOTED_TEXT || ((LA685_0 >= HEX_NUMBER) && (LA685_0 <= IDENTIFIER))))
                    {
                        alt685=1;
                    }
                }
                switch (alt685)
                {
            	case 1:
            	    // MySQL.g:2515:13: select_alias
            	    {
            	        FOLLOWPUSH(FOLLOW_select_alias_in_aliased_expression12843);
            	        select_alias2450=select_alias(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealiased_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_alias2450.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:2518: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_OPERATOR2452;
    MySQLParser_user_variable_return user_variable2451;
    #undef	RETURN_TYPE_user_variable2451
    #define	RETURN_TYPE_user_variable2451 MySQLParser_user_variable_return

    MySQLParser_expression_return expression2453;
    #undef	RETURN_TYPE_expression2453
    #define	RETURN_TYPE_expression2453 MySQLParser_expression_return

    MySQLParser_system_variable_return system_variable2454;
    #undef	RETURN_TYPE_system_variable2454
    #define	RETURN_TYPE_system_variable2454 MySQLParser_system_variable_return

    pANTLR3_BASE_TREE ASSIGN_OPERATOR2452_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ASSIGN_OPERATOR2452       = NULL;
    user_variable2451.tree = NULL;

    expression2453.tree = NULL;

    system_variable2454.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ASSIGN_OPERATOR2452_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2518:36: ( user_variable ( ASSIGN_OPERATOR ^ expression )? | system_variable )

            ANTLR3_UINT32 alt687;

            alt687=2;

            switch ( LA(1) )
            {
            case AT_SIGN_SYMBOL:
            case AT_TEXT_SUFFIX:
            	{
            		alt687=1;
            	}
                break;
            case AT_AT_SIGN_SYMBOL:
            	{
            		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 rulevariableEx;

            }

            switch (alt687)
            {
        	case 1:
        	    // MySQL.g:2519:2: user_variable ( ASSIGN_OPERATOR ^ expression )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_user_variable_in_variable12864);
        	        user_variable2451=user_variable(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulevariableEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user_variable2451.tree);

        	        // MySQL.g:2519:16: ( ASSIGN_OPERATOR ^ expression )?
        	        {
        	            int alt686=2;
        	            switch ( LA(1) )
        	            {
        	                case ASSIGN_OPERATOR:
        	                	{
        	                		alt686=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt686)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2519:17: ASSIGN_OPERATOR ^ expression
        	        	    {
        	        	        ASSIGN_OPERATOR2452 = (pANTLR3_COMMON_TOKEN) MATCHT(ASSIGN_OPERATOR, &FOLLOW_ASSIGN_OPERATOR_in_variable12867);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulevariableEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        ASSIGN_OPERATOR2452_tree = 
        	        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ASSIGN_OPERATOR2452))
        	        	        ;
        	        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, ASSIGN_OPERATOR2452_tree, root_0));
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_expression_in_variable12870);
        	        	        expression2453=expression(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulevariableEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2453.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2520:4: system_variable
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_system_variable_in_variable12877);
        	        system_variable2454=system_variable(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulevariableEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, system_variable2454.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:2523: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_SYMBOL2455;
    pANTLR3_COMMON_TOKEN    AT_TEXT_SUFFIX2457;
    MySQLParser_text_or_identifier_return text_or_identifier2456;
    #undef	RETURN_TYPE_text_or_identifier2456
    #define	RETURN_TYPE_text_or_identifier2456 MySQLParser_text_or_identifier_return

    pANTLR3_BASE_TREE AT_SIGN_SYMBOL2455_tree;
    pANTLR3_BASE_TREE AT_TEXT_SUFFIX2457_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_SYMBOL2455       = NULL;
    AT_TEXT_SUFFIX2457       = NULL;
    text_or_identifier2456.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    AT_SIGN_SYMBOL2455_tree   = NULL;
    AT_TEXT_SUFFIX2457_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:2523:14: ( ( AT_SIGN_SYMBOL text_or_identifier ) -> AT_TEXT_SUFFIX AT_SIGN_SYMBOL text_or_identifier | AT_TEXT_SUFFIX )

            ANTLR3_UINT32 alt688;

            alt688=2;

            switch ( LA(1) )
            {
            case AT_SIGN_SYMBOL:
            	{
            		alt688=1;
            	}
                break;
            case AT_TEXT_SUFFIX:
            	{
            		alt688=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 688;
                EXCEPTION->state        = 0;


                goto ruleuser_variableEx;

            }

            switch (alt688)
            {
        	case 1:
        	    // MySQL.g:2524:2: ( AT_SIGN_SYMBOL text_or_identifier )
        	    {
        	        // MySQL.g:2524:2: ( AT_SIGN_SYMBOL text_or_identifier )
        	        // MySQL.g:2524:3: AT_SIGN_SYMBOL text_or_identifier
        	        {
        	            AT_SIGN_SYMBOL2455 = (pANTLR3_COMMON_TOKEN) MATCHT(AT_SIGN_SYMBOL, &FOLLOW_AT_SIGN_SYMBOL_in_user_variable12887);
        	            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_SYMBOL2455, NULL); }


        	            FOLLOWPUSH(FOLLOW_text_or_identifier_in_user_variable12889);
        	            text_or_identifier2456=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_identifier2456.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;
        	        	// 2524: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:2525:4: AT_TEXT_SUFFIX
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        AT_TEXT_SUFFIX2457 = (pANTLR3_COMMON_TOKEN) MATCHT(AT_TEXT_SUFFIX, &FOLLOW_AT_TEXT_SUFFIX_in_user_variable12903);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleuser_variableEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        AT_TEXT_SUFFIX2457_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AT_TEXT_SUFFIX2457));
        	        ADAPTOR->addChild(ADAPTOR, root_0, AT_TEXT_SUFFIX2457_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:2529: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_SYMBOL2458;
    pANTLR3_COMMON_TOKEN    DOT_SYMBOL2460;
    MySQLParser_option_type_return option_type2459;
    #undef	RETURN_TYPE_option_type2459
    #define	RETURN_TYPE_option_type2459 MySQLParser_option_type_return

    MySQLParser_variable_name_return variable_name2461;
    #undef	RETURN_TYPE_variable_name2461
    #define	RETURN_TYPE_variable_name2461 MySQLParser_variable_name_return

    pANTLR3_BASE_TREE AT_AT_SIGN_SYMBOL2458_tree;
    pANTLR3_BASE_TREE DOT_SYMBOL2460_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    AT_AT_SIGN_SYMBOL2458       = NULL;
    DOT_SYMBOL2460       = NULL;
    option_type2459.tree = NULL;

    variable_name2461.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    AT_AT_SIGN_SYMBOL2458_tree   = NULL;
    DOT_SYMBOL2460_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2529:16: ( AT_AT_SIGN_SYMBOL ( options {greedy=true; } : option_type DOT_SYMBOL )? variable_name )
        // MySQL.g:2530: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_SYMBOL2458 = (pANTLR3_COMMON_TOKEN) MATCHT(AT_AT_SIGN_SYMBOL, &FOLLOW_AT_AT_SIGN_SYMBOL_in_system_variable12913);
            if  (HASEXCEPTION())
            {
                goto rulesystem_variableEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            AT_AT_SIGN_SYMBOL2458_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AT_AT_SIGN_SYMBOL2458));
            ADAPTOR->addChild(ADAPTOR, root_0, AT_AT_SIGN_SYMBOL2458_tree);
            }

            // MySQL.g:2530:20: ( options {greedy=true; } : option_type DOT_SYMBOL )?
            {
                int alt689=2;
                switch ( LA(1) )
                {
                    case GLOBAL_SYMBOL:
                    case LOCAL_SYMBOL:
                    case SESSION_SYMBOL:
                    	{
                    		switch ( LA(2) )
                    		{
                    		    case DOT_SYMBOL:
                    		    	{
                    		    		alt689=1;
                    		    	}
                    		        break;
                    		}

                    	}
                        break;
                }

                switch (alt689)
                {
            	case 1:
            	    // MySQL.g:2530:50: option_type DOT_SYMBOL
            	    {
            	        FOLLOWPUSH(FOLLOW_option_type_in_system_variable12929);
            	        option_type2459=option_type(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesystem_variableEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, option_type2459.tree);

            	        DOT_SYMBOL2460 = (pANTLR3_COMMON_TOKEN) MATCHT(DOT_SYMBOL, &FOLLOW_DOT_SYMBOL_in_system_variable12931);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesystem_variableEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DOT_SYMBOL2460_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DOT_SYMBOL2460));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DOT_SYMBOL2460_tree);
            	        }

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_variable_name_in_system_variable12935);
            variable_name2461=variable_name(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulesystem_variableEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, variable_name2461.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:2533:1: variable_name : ( identifier ( dot_identifier )? | DEFAULT_SYMBOL dot_identifier );
 */
static MySQLParser_variable_name_return
variable_name(pMySQLParser ctx)
{
    MySQLParser_variable_name_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    DEFAULT_SYMBOL2464;
    MySQLParser_identifier_return identifier2462;
    #undef	RETURN_TYPE_identifier2462
    #define	RETURN_TYPE_identifier2462 MySQLParser_identifier_return

    MySQLParser_dot_identifier_return dot_identifier2463;
    #undef	RETURN_TYPE_dot_identifier2463
    #define	RETURN_TYPE_dot_identifier2463 MySQLParser_dot_identifier_return

    MySQLParser_dot_identifier_return dot_identifier2465;
    #undef	RETURN_TYPE_dot_identifier2465
    #define	RETURN_TYPE_dot_identifier2465 MySQLParser_dot_identifier_return

    pANTLR3_BASE_TREE DEFAULT_SYMBOL2464_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DEFAULT_SYMBOL2464       = NULL;
    identifier2462.tree = NULL;

    dot_identifier2463.tree = NULL;

    dot_identifier2465.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DEFAULT_SYMBOL2464_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2533:14: ( identifier ( dot_identifier )? | DEFAULT_SYMBOL dot_identifier )

            ANTLR3_UINT32 alt691;

            alt691=2;

            {
                int LA691_0 = LA(1);
                if ( (((LA691_0 >= ACCOUNT_SYMBOL) && (LA691_0 <= YEAR_SYMBOL)) || LA691_0 == BACK_TICK_QUOTED_ID || LA691_0 == DOUBLE_QUOTED_TEXT || LA691_0 == IDENTIFIER))
                {
                    alt691=1;
                }
                else if ( (LA691_0 == DEFAULT_SYMBOL))
                {
                    alt691=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 691;
                    EXCEPTION->state        = 0;


                    goto rulevariable_nameEx;

                }
            }
            switch (alt691)
            {
        	case 1:
        	    // MySQL.g:2534:2: identifier ( dot_identifier )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_identifier_in_variable_name12944);
        	        identifier2462=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulevariable_nameEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2462.tree);

        	        // MySQL.g:2534:13: ( dot_identifier )?
        	        {
        	            int alt690=2;
        	            switch ( LA(1) )
        	            {
        	                case DOT_SYMBOL:
        	                	{
        	                		alt690=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt690)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2534:13: dot_identifier
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_dot_identifier_in_variable_name12946);
        	        	        dot_identifier2463=dot_identifier(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulevariable_nameEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, dot_identifier2463.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2535:4: DEFAULT_SYMBOL dot_identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DEFAULT_SYMBOL2464 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_variable_name12956);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulevariable_nameEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DEFAULT_SYMBOL2464_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL2464));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL2464_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_dot_identifier_in_variable_name12958);
        	        dot_identifier2465=dot_identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulevariable_nameEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, dot_identifier2465.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:2538: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_SYMBOL2466;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2467;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2469;
    pANTLR3_COMMON_TOKEN    AGAINST_SYMBOL2470;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2471;
    pANTLR3_COMMON_TOKEN    IN_SYMBOL2473;
    pANTLR3_COMMON_TOKEN    BOOLEAN_SYMBOL2474;
    pANTLR3_COMMON_TOKEN    MODE_SYMBOL2475;
    pANTLR3_COMMON_TOKEN    IN_SYMBOL2476;
    pANTLR3_COMMON_TOKEN    NATURAL_SYMBOL2477;
    pANTLR3_COMMON_TOKEN    LANGUAGE_SYMBOL2478;
    pANTLR3_COMMON_TOKEN    MODE_SYMBOL2479;
    pANTLR3_COMMON_TOKEN    WITH_SYMBOL2480;
    pANTLR3_COMMON_TOKEN    QUERY_SYMBOL2481;
    pANTLR3_COMMON_TOKEN    EXPANSION_SYMBOL2482;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2483;
    MySQLParser_field_name_list_return field_name_list2468;
    #undef	RETURN_TYPE_field_name_list2468
    #define	RETURN_TYPE_field_name_list2468 MySQLParser_field_name_list_return

    MySQLParser_bitwise_or_expression_return bitwise_or_expression2472;
    #undef	RETURN_TYPE_bitwise_or_expression2472
    #define	RETURN_TYPE_bitwise_or_expression2472 MySQLParser_bitwise_or_expression_return

    pANTLR3_BASE_TREE MATCH_SYMBOL2466_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2467_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2469_tree;
    pANTLR3_BASE_TREE AGAINST_SYMBOL2470_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2471_tree;
    pANTLR3_BASE_TREE IN_SYMBOL2473_tree;
    pANTLR3_BASE_TREE BOOLEAN_SYMBOL2474_tree;
    pANTLR3_BASE_TREE MODE_SYMBOL2475_tree;
    pANTLR3_BASE_TREE IN_SYMBOL2476_tree;
    pANTLR3_BASE_TREE NATURAL_SYMBOL2477_tree;
    pANTLR3_BASE_TREE LANGUAGE_SYMBOL2478_tree;
    pANTLR3_BASE_TREE MODE_SYMBOL2479_tree;
    pANTLR3_BASE_TREE WITH_SYMBOL2480_tree;
    pANTLR3_BASE_TREE QUERY_SYMBOL2481_tree;
    pANTLR3_BASE_TREE EXPANSION_SYMBOL2482_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2483_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    MATCH_SYMBOL2466       = NULL;
    OPEN_PAR_SYMBOL2467       = NULL;
    CLOSE_PAR_SYMBOL2469       = NULL;
    AGAINST_SYMBOL2470       = NULL;
    OPEN_PAR_SYMBOL2471       = NULL;
    IN_SYMBOL2473       = NULL;
    BOOLEAN_SYMBOL2474       = NULL;
    MODE_SYMBOL2475       = NULL;
    IN_SYMBOL2476       = NULL;
    NATURAL_SYMBOL2477       = NULL;
    LANGUAGE_SYMBOL2478       = NULL;
    MODE_SYMBOL2479       = NULL;
    WITH_SYMBOL2480       = NULL;
    QUERY_SYMBOL2481       = NULL;
    EXPANSION_SYMBOL2482       = NULL;
    CLOSE_PAR_SYMBOL2483       = NULL;
    field_name_list2468.tree = NULL;

    bitwise_or_expression2472.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    MATCH_SYMBOL2466_tree   = NULL;
    OPEN_PAR_SYMBOL2467_tree   = NULL;
    CLOSE_PAR_SYMBOL2469_tree   = NULL;
    AGAINST_SYMBOL2470_tree   = NULL;
    OPEN_PAR_SYMBOL2471_tree   = NULL;
    IN_SYMBOL2473_tree   = NULL;
    BOOLEAN_SYMBOL2474_tree   = NULL;
    MODE_SYMBOL2475_tree   = NULL;
    IN_SYMBOL2476_tree   = NULL;
    NATURAL_SYMBOL2477_tree   = NULL;
    LANGUAGE_SYMBOL2478_tree   = NULL;
    MODE_SYMBOL2479_tree   = NULL;
    WITH_SYMBOL2480_tree   = NULL;
    QUERY_SYMBOL2481_tree   = NULL;
    EXPANSION_SYMBOL2482_tree   = NULL;
    CLOSE_PAR_SYMBOL2483_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2538: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:2539: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_SYMBOL2466 = (pANTLR3_COMMON_TOKEN) MATCHT(MATCH_SYMBOL, &FOLLOW_MATCH_SYMBOL_in_match_expression12967);
            if  (HASEXCEPTION())
            {
                goto rulematch_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            MATCH_SYMBOL2466_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MATCH_SYMBOL2466))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, MATCH_SYMBOL2466_tree, root_0));
            }

            OPEN_PAR_SYMBOL2467 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_match_expression12970);
            if  (HASEXCEPTION())
            {
                goto rulematch_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL2467_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2467));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2467_tree);
            }

            FOLLOWPUSH(FOLLOW_field_name_list_in_match_expression12972);
            field_name_list2468=field_name_list(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulematch_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_name_list2468.tree);

            CLOSE_PAR_SYMBOL2469 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_match_expression12974);
            if  (HASEXCEPTION())
            {
                goto rulematch_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL2469_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2469));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2469_tree);
            }

            AGAINST_SYMBOL2470 = (pANTLR3_COMMON_TOKEN) MATCHT(AGAINST_SYMBOL, &FOLLOW_AGAINST_SYMBOL_in_match_expression12976);
            if  (HASEXCEPTION())
            {
                goto rulematch_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            AGAINST_SYMBOL2470_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AGAINST_SYMBOL2470));
            ADAPTOR->addChild(ADAPTOR, root_0, AGAINST_SYMBOL2470_tree);
            }

            OPEN_PAR_SYMBOL2471 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_match_expression12978);
            if  (HASEXCEPTION())
            {
                goto rulematch_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL2471_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2471));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2471_tree);
            }

            FOLLOWPUSH(FOLLOW_bitwise_or_expression_in_match_expression12980);
            bitwise_or_expression2472=bitwise_or_expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulematch_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, bitwise_or_expression2472.tree);

            // MySQL.g:2540:3: ( IN_SYMBOL BOOLEAN_SYMBOL MODE_SYMBOL | ( IN_SYMBOL NATURAL_SYMBOL LANGUAGE_SYMBOL MODE_SYMBOL )? ( WITH_SYMBOL QUERY_SYMBOL EXPANSION_SYMBOL )? )
            {
                int alt694=2;
                switch ( LA(1) )
                {
                case IN_SYMBOL:
                	{
                		switch ( LA(2) )
                		{
                		case BOOLEAN_SYMBOL:
                			{
                				alt694=1;
                			}
                		    break;
                		case NATURAL_SYMBOL:
                			{
                				alt694=2;
                			}
                		    break;

                		default:
                		    if (BACKTRACKING>0)
                		    {
                		        FAILEDFLAG = ANTLR3_TRUE;
                		        return retval;
                		    }

                		    CONSTRUCTEX();
                		    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                		    EXCEPTION->message      = (void *)"";
                		    EXCEPTION->decisionNum  = 694;
                		    EXCEPTION->state        = 1;


                		    goto rulematch_expressionEx;

                		}

                	}
                    break;
                case WITH_SYMBOL:
                case CLOSE_PAR_SYMBOL:
                	{
                		alt694=2;
                	}
                    break;

                default:
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }

                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 694;
                    EXCEPTION->state        = 0;


                    goto rulematch_expressionEx;

                }

                switch (alt694)
                {
            	case 1:
            	    // MySQL.g:2541:4: IN_SYMBOL BOOLEAN_SYMBOL MODE_SYMBOL
            	    {
            	        IN_SYMBOL2473 = (pANTLR3_COMMON_TOKEN) MATCHT(IN_SYMBOL, &FOLLOW_IN_SYMBOL_in_match_expression12989);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulematch_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        IN_SYMBOL2473_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IN_SYMBOL2473));
            	        ADAPTOR->addChild(ADAPTOR, root_0, IN_SYMBOL2473_tree);
            	        }

            	        BOOLEAN_SYMBOL2474 = (pANTLR3_COMMON_TOKEN) MATCHT(BOOLEAN_SYMBOL, &FOLLOW_BOOLEAN_SYMBOL_in_match_expression12991);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulematch_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        BOOLEAN_SYMBOL2474_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BOOLEAN_SYMBOL2474));
            	        ADAPTOR->addChild(ADAPTOR, root_0, BOOLEAN_SYMBOL2474_tree);
            	        }

            	        MODE_SYMBOL2475 = (pANTLR3_COMMON_TOKEN) MATCHT(MODE_SYMBOL, &FOLLOW_MODE_SYMBOL_in_match_expression12993);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulematch_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        MODE_SYMBOL2475_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MODE_SYMBOL2475));
            	        ADAPTOR->addChild(ADAPTOR, root_0, MODE_SYMBOL2475_tree);
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2542:6: ( IN_SYMBOL NATURAL_SYMBOL LANGUAGE_SYMBOL MODE_SYMBOL )? ( WITH_SYMBOL QUERY_SYMBOL EXPANSION_SYMBOL )?
            	    {
            	        // MySQL.g:2542:6: ( IN_SYMBOL NATURAL_SYMBOL LANGUAGE_SYMBOL MODE_SYMBOL )?
            	        {
            	            int alt692=2;
            	            switch ( LA(1) )
            	            {
            	                case IN_SYMBOL:
            	                	{
            	                		alt692=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt692)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2542:7: IN_SYMBOL NATURAL_SYMBOL LANGUAGE_SYMBOL MODE_SYMBOL
            	        	    {
            	        	        IN_SYMBOL2476 = (pANTLR3_COMMON_TOKEN) MATCHT(IN_SYMBOL, &FOLLOW_IN_SYMBOL_in_match_expression13001);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulematch_expressionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        IN_SYMBOL2476_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IN_SYMBOL2476));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, IN_SYMBOL2476_tree);
            	        	        }

            	        	        NATURAL_SYMBOL2477 = (pANTLR3_COMMON_TOKEN) MATCHT(NATURAL_SYMBOL, &FOLLOW_NATURAL_SYMBOL_in_match_expression13003);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulematch_expressionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        NATURAL_SYMBOL2477_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NATURAL_SYMBOL2477));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, NATURAL_SYMBOL2477_tree);
            	        	        }

            	        	        LANGUAGE_SYMBOL2478 = (pANTLR3_COMMON_TOKEN) MATCHT(LANGUAGE_SYMBOL, &FOLLOW_LANGUAGE_SYMBOL_in_match_expression13005);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulematch_expressionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        LANGUAGE_SYMBOL2478_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LANGUAGE_SYMBOL2478));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, LANGUAGE_SYMBOL2478_tree);
            	        	        }

            	        	        MODE_SYMBOL2479 = (pANTLR3_COMMON_TOKEN) MATCHT(MODE_SYMBOL, &FOLLOW_MODE_SYMBOL_in_match_expression13007);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulematch_expressionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        MODE_SYMBOL2479_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MODE_SYMBOL2479));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, MODE_SYMBOL2479_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:2542:62: ( WITH_SYMBOL QUERY_SYMBOL EXPANSION_SYMBOL )?
            	        {
            	            int alt693=2;
            	            switch ( LA(1) )
            	            {
            	                case WITH_SYMBOL:
            	                	{
            	                		alt693=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt693)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2542:63: WITH_SYMBOL QUERY_SYMBOL EXPANSION_SYMBOL
            	        	    {
            	        	        WITH_SYMBOL2480 = (pANTLR3_COMMON_TOKEN) MATCHT(WITH_SYMBOL, &FOLLOW_WITH_SYMBOL_in_match_expression13012);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulematch_expressionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        WITH_SYMBOL2480_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WITH_SYMBOL2480));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, WITH_SYMBOL2480_tree);
            	        	        }

            	        	        QUERY_SYMBOL2481 = (pANTLR3_COMMON_TOKEN) MATCHT(QUERY_SYMBOL, &FOLLOW_QUERY_SYMBOL_in_match_expression13014);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulematch_expressionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        QUERY_SYMBOL2481_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, QUERY_SYMBOL2481));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, QUERY_SYMBOL2481_tree);
            	        	        }

            	        	        EXPANSION_SYMBOL2482 = (pANTLR3_COMMON_TOKEN) MATCHT(EXPANSION_SYMBOL, &FOLLOW_EXPANSION_SYMBOL_in_match_expression13016);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulematch_expressionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        EXPANSION_SYMBOL2482_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EXPANSION_SYMBOL2482));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, EXPANSION_SYMBOL2482_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

                }
            }

            CLOSE_PAR_SYMBOL2483 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_match_expression13026);
            if  (HASEXCEPTION())
            {
                goto rulematch_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL2483_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2483));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2483_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:2548: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_SYMBOL2484;
    pANTLR3_COMMON_TOKEN    END_SYMBOL2489;
    MySQLParser_expression_return expression2485;
    #undef	RETURN_TYPE_expression2485
    #define	RETURN_TYPE_expression2485 MySQLParser_expression_return

    MySQLParser_when_expression_return when_expression2486;
    #undef	RETURN_TYPE_when_expression2486
    #define	RETURN_TYPE_when_expression2486 MySQLParser_when_expression_return

    MySQLParser_then_expression_return then_expression2487;
    #undef	RETURN_TYPE_then_expression2487
    #define	RETURN_TYPE_then_expression2487 MySQLParser_then_expression_return

    MySQLParser_else_expression_return else_expression2488;
    #undef	RETURN_TYPE_else_expression2488
    #define	RETURN_TYPE_else_expression2488 MySQLParser_else_expression_return

    pANTLR3_BASE_TREE CASE_SYMBOL2484_tree;
    pANTLR3_BASE_TREE END_SYMBOL2489_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CASE_SYMBOL2484       = NULL;
    END_SYMBOL2489       = NULL;
    expression2485.tree = NULL;

    when_expression2486.tree = NULL;

    then_expression2487.tree = NULL;

    else_expression2488.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CASE_SYMBOL2484_tree   = NULL;
    END_SYMBOL2489_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2548:16: ( CASE_SYMBOL ( expression )? ( when_expression then_expression )+ ( else_expression )? END_SYMBOL )
        // MySQL.g:2549:2: CASE_SYMBOL ( expression )? ( when_expression then_expression )+ ( else_expression )? END_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            CASE_SYMBOL2484 = (pANTLR3_COMMON_TOKEN) MATCHT(CASE_SYMBOL, &FOLLOW_CASE_SYMBOL_in_case_expression13036);
            if  (HASEXCEPTION())
            {
                goto rulecase_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CASE_SYMBOL2484_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CASE_SYMBOL2484));
            ADAPTOR->addChild(ADAPTOR, root_0, CASE_SYMBOL2484_tree);
            }

            // MySQL.g:2549:14: ( expression )?
            {
                int alt695=2;
                {
                    int LA695_0 = LA(1);
                    if ( (((LA695_0 >= ACCOUNT_SYMBOL) && (LA695_0 <= YEAR_SYMBOL)) || LA695_0 == BINARY_SYMBOL || ((LA695_0 >= CASE_SYMBOL) && (LA695_0 <= CAST_SYMBOL)) || LA695_0 == CHAR_SYMBOL || ((LA695_0 >= CONVERT_SYMBOL) && (LA695_0 <= COUNT_SYMBOL)) || LA695_0 == CURDATE_SYMBOL || LA695_0 == CURRENT_USER_SYMBOL || LA695_0 == CURTIME_SYMBOL || LA695_0 == DATABASE_SYMBOL || LA695_0 == DATE_ADD_SYMBOL || LA695_0 == DATE_SUB_SYMBOL || LA695_0 == EXISTS_SYMBOL || ((LA695_0 >= EXTRACT_SYMBOL) && (LA695_0 <= FALSE_SYMBOL)) || LA695_0 == GROUP_CONCAT_SYMBOL || LA695_0 == IF_SYMBOL || LA695_0 == INSERT_SYMBOL || LA695_0 == INTERVAL_SYMBOL || LA695_0 == LEFT_SYMBOL || LA695_0 == MATCH_SYMBOL || LA695_0 == MAX_SYMBOL || LA695_0 == MIN_SYMBOL || LA695_0 == MOD_SYMBOL || LA695_0 == NCHAR_TEXT || ((LA695_0 >= NOT2_SYMBOL) && (LA695_0 <= NOW_SYMBOL)) || ((LA695_0 >= NULL2_SYMBOL) && (LA695_0 <= NULL_SYMBOL)) || ((LA695_0 >= OPEN_CURLY_SYMBOL) && (LA695_0 <= OPEN_PAR_SYMBOL)) || ((LA695_0 >= PARAM_MARKER) && (LA695_0 <= POSITION_SYMBOL)) || ((LA695_0 >= REPEAT_SYMBOL) && (LA695_0 <= REPLACE_SYMBOL)) || LA695_0 == RIGHT_SYMBOL || LA695_0 == SINGLE_QUOTED_TEXT || LA695_0 == STDDEV_SAMP_SYMBOL || LA695_0 == STD_SYMBOL || LA695_0 == SUBSTRING_SYMBOL || ((LA695_0 >= SUM_SYMBOL) && (LA695_0 <= SYSDATE_SYMBOL)) || ((LA695_0 >= TRIM_SYMBOL) && (LA695_0 <= TRUE_SYMBOL)) || ((LA695_0 >= UTC_DATE_SYMBOL) && (LA695_0 <= UTC_TIME_SYMBOL)) || LA695_0 == VALUES_SYMBOL || LA695_0 == VARIANCE_SYMBOL || LA695_0 == VAR_SAMP_SYMBOL || ((LA695_0 >= AT_AT_SIGN_SYMBOL) && (LA695_0 <= AT_TEXT_SUFFIX)) || ((LA695_0 >= BACK_TICK_QUOTED_ID) && (LA695_0 <= BIN_NUMBER)) || LA695_0 == BITWISE_NOT_OPERATOR || ((LA695_0 >= BIT_AND_SYMBOL) && (LA695_0 <= BIT_XOR_SYMBOL)) || LA695_0 == DECIMAL_NUMBER || LA695_0 == DOT_SYMBOL || LA695_0 == DOUBLE_QUOTED_TEXT || LA695_0 == FLOAT_NUMBER || ((LA695_0 >= HEX_NUMBER) && (LA695_0 <= IDENTIFIER)) || LA695_0 == INT_NUMBER || LA695_0 == LOGICAL_NOT_OPERATOR || ((LA695_0 >= LONG_NUMBER) && (LA695_0 <= MINUS_OPERATOR)) || LA695_0 == PLUS_OPERATOR || ((LA695_0 >= ULONGLONG_NUMBER) && (LA695_0 <= UNDERSCORE_CHARSET))))
                    {
                        alt695=1;
                    }
                }
                switch (alt695)
                {
            	case 1:
            	    // MySQL.g:2549:14: expression
            	    {
            	        FOLLOWPUSH(FOLLOW_expression_in_case_expression13038);
            	        expression2485=expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecase_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2485.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:2549:26: ( when_expression then_expression )+
            {
                int cnt696=0;

                for (;;)
                {
                    int alt696=2;
            	switch ( LA(1) )
            	{
            	case WHEN_SYMBOL:
            		{
            			alt696=1;
            		}
            	    break;

            	}

            	switch (alt696)
            	{
            	    case 1:
            	        // MySQL.g:2549:27: when_expression then_expression
            	        {
            	            FOLLOWPUSH(FOLLOW_when_expression_in_case_expression13042);
            	            when_expression2486=when_expression(ctx);

            	            FOLLOWPOP();
            	            if  (HASEXCEPTION())
            	            {
            	                goto rulecase_expressionEx;
            	            }
            	            if (HASFAILED())
            	            {
            	                return retval;
            	            }

            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, when_expression2486.tree);

            	            FOLLOWPUSH(FOLLOW_then_expression_in_case_expression13044);
            	            then_expression2487=then_expression(ctx);

            	            FOLLOWPOP();
            	            if  (HASEXCEPTION())
            	            {
            	                goto rulecase_expressionEx;
            	            }
            	            if (HASFAILED())
            	            {
            	                return retval;
            	            }

            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, then_expression2487.tree);

            	        }
            	        break;

            	    default:

            		if ( cnt696 >= 1 )
            		{
            		    goto loop696;
            		}
            		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;
            	}
            	cnt696++;
                }
                loop696: ;	/* Jump to here if this rule does not match */
            }

            // MySQL.g:2549:61: ( else_expression )?
            {
                int alt697=2;
                switch ( LA(1) )
                {
                    case ELSE_SYMBOL:
                    	{
                    		alt697=1;
                    	}
                        break;
                }

                switch (alt697)
                {
            	case 1:
            	    // MySQL.g:2549:61: else_expression
            	    {
            	        FOLLOWPUSH(FOLLOW_else_expression_in_case_expression13048);
            	        else_expression2488=else_expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecase_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, else_expression2488.tree);

            	    }
            	    break;

                }
            }

            END_SYMBOL2489 = (pANTLR3_COMMON_TOKEN) MATCHT(END_SYMBOL, &FOLLOW_END_SYMBOL_in_case_expression13051);
            if  (HASEXCEPTION())
            {
                goto rulecase_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            END_SYMBOL2489_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, END_SYMBOL2489));
            ADAPTOR->addChild(ADAPTOR, root_0, END_SYMBOL2489_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:2552: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_SYMBOL2490;
    MySQLParser_expression_return expression2491;
    #undef	RETURN_TYPE_expression2491
    #define	RETURN_TYPE_expression2491 MySQLParser_expression_return

    pANTLR3_BASE_TREE WHEN_SYMBOL2490_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    WHEN_SYMBOL2490       = NULL;
    expression2491.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    WHEN_SYMBOL2490_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2552:16: ( WHEN_SYMBOL ^ expression )
        // MySQL.g:2553:2: WHEN_SYMBOL ^ expression
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            WHEN_SYMBOL2490 = (pANTLR3_COMMON_TOKEN) MATCHT(WHEN_SYMBOL, &FOLLOW_WHEN_SYMBOL_in_when_expression13060);
            if  (HASEXCEPTION())
            {
                goto rulewhen_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            WHEN_SYMBOL2490_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WHEN_SYMBOL2490))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, WHEN_SYMBOL2490_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_expression_in_when_expression13063);
            expression2491=expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulewhen_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2491.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:2556: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_SYMBOL2492;
    MySQLParser_expression_return expression2493;
    #undef	RETURN_TYPE_expression2493
    #define	RETURN_TYPE_expression2493 MySQLParser_expression_return

    pANTLR3_BASE_TREE THEN_SYMBOL2492_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    THEN_SYMBOL2492       = NULL;
    expression2493.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    THEN_SYMBOL2492_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2556:16: ( THEN_SYMBOL ^ expression )
        // MySQL.g:2557:2: THEN_SYMBOL ^ expression
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            THEN_SYMBOL2492 = (pANTLR3_COMMON_TOKEN) MATCHT(THEN_SYMBOL, &FOLLOW_THEN_SYMBOL_in_then_expression13072);
            if  (HASEXCEPTION())
            {
                goto rulethen_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            THEN_SYMBOL2492_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, THEN_SYMBOL2492))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, THEN_SYMBOL2492_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_expression_in_then_expression13075);
            expression2493=expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulethen_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2493.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:2560: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_SYMBOL2494;
    MySQLParser_expression_return expression2495;
    #undef	RETURN_TYPE_expression2495
    #define	RETURN_TYPE_expression2495 MySQLParser_expression_return

    pANTLR3_BASE_TREE ELSE_SYMBOL2494_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ELSE_SYMBOL2494       = NULL;
    expression2495.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ELSE_SYMBOL2494_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2560:16: ( ELSE_SYMBOL ^ expression )
        // MySQL.g:2561:2: ELSE_SYMBOL ^ expression
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            ELSE_SYMBOL2494 = (pANTLR3_COMMON_TOKEN) MATCHT(ELSE_SYMBOL, &FOLLOW_ELSE_SYMBOL_in_else_expression13084);
            if  (HASEXCEPTION())
            {
                goto ruleelse_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ELSE_SYMBOL2494_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ELSE_SYMBOL2494))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, ELSE_SYMBOL2494_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_expression_in_else_expression13087);
            expression2495=expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleelse_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2495.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:2564: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_SYMBOL2496;
    pANTLR3_COMMON_TOKEN    CAST_SYMBOL2498;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2499;
    pANTLR3_COMMON_TOKEN    AS_SYMBOL2501;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2503;
    pANTLR3_COMMON_TOKEN    CONVERT_SYMBOL2504;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2505;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2507;
    pANTLR3_COMMON_TOKEN    USING_SYMBOL2509;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2511;
    MySQLParser_primary_return primary2497;
    #undef	RETURN_TYPE_primary2497
    #define	RETURN_TYPE_primary2497 MySQLParser_primary_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_expression_return expression2506;
    #undef	RETURN_TYPE_expression2506
    #define	RETURN_TYPE_expression2506 MySQLParser_expression_return

    MySQLParser_cast_type_return cast_type2508;
    #undef	RETURN_TYPE_cast_type2508
    #define	RETURN_TYPE_cast_type2508 MySQLParser_cast_type_return

    MySQLParser_charset_name_return charset_name2510;
    #undef	RETURN_TYPE_charset_name2510
    #define	RETURN_TYPE_charset_name2510 MySQLParser_charset_name_return

    pANTLR3_BASE_TREE BINARY_SYMBOL2496_tree;
    pANTLR3_BASE_TREE CAST_SYMBOL2498_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2499_tree;
    pANTLR3_BASE_TREE AS_SYMBOL2501_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2503_tree;
    pANTLR3_BASE_TREE CONVERT_SYMBOL2504_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2505_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2507_tree;
    pANTLR3_BASE_TREE USING_SYMBOL2509_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2511_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    BINARY_SYMBOL2496       = NULL;
    CAST_SYMBOL2498       = NULL;
    OPEN_PAR_SYMBOL2499       = NULL;
    AS_SYMBOL2501       = NULL;
    CLOSE_PAR_SYMBOL2503       = NULL;
    CONVERT_SYMBOL2504       = NULL;
    OPEN_PAR_SYMBOL2505       = NULL;
    COMMA_SYMBOL2507       = NULL;
    USING_SYMBOL2509       = NULL;
    CLOSE_PAR_SYMBOL2511       = NULL;
    primary2497.tree = NULL;

    expression2500.tree = NULL;

    cast_type2502.tree = NULL;

    expression2506.tree = NULL;

    cast_type2508.tree = NULL;

    charset_name2510.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    BINARY_SYMBOL2496_tree   = NULL;
    CAST_SYMBOL2498_tree   = NULL;
    OPEN_PAR_SYMBOL2499_tree   = NULL;
    AS_SYMBOL2501_tree   = NULL;
    CLOSE_PAR_SYMBOL2503_tree   = NULL;
    CONVERT_SYMBOL2504_tree   = NULL;
    OPEN_PAR_SYMBOL2505_tree   = NULL;
    COMMA_SYMBOL2507_tree   = NULL;
    USING_SYMBOL2509_tree   = NULL;
    CLOSE_PAR_SYMBOL2511_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2564: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 alt699;

            alt699=3;

            switch ( LA(1) )
            {
            case BINARY_SYMBOL:
            	{
            		alt699=1;
            	}
                break;
            case CAST_SYMBOL:
            	{
            		alt699=2;
            	}
                break;
            case CONVERT_SYMBOL:
            	{
            		alt699=3;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 699;
                EXCEPTION->state        = 0;


                goto rulecast_expressionEx;

            }

            switch (alt699)
            {
        	case 1:
        	    // MySQL.g:2565:2: BINARY_SYMBOL primary
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BINARY_SYMBOL2496 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_cast_expression13096);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BINARY_SYMBOL2496_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL2496));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL2496_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_primary_in_cast_expression13098);
        	        primary2497=primary(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, primary2497.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2566:4: CAST_SYMBOL OPEN_PAR_SYMBOL expression AS_SYMBOL cast_type CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CAST_SYMBOL2498 = (pANTLR3_COMMON_TOKEN) MATCHT(CAST_SYMBOL, &FOLLOW_CAST_SYMBOL_in_cast_expression13103);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CAST_SYMBOL2498_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CAST_SYMBOL2498));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CAST_SYMBOL2498_tree);
        	        }

        	        OPEN_PAR_SYMBOL2499 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_cast_expression13105);
        	        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_expression13107);
        	        expression2500=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2500.tree);

        	        AS_SYMBOL2501 = (pANTLR3_COMMON_TOKEN) MATCHT(AS_SYMBOL, &FOLLOW_AS_SYMBOL_in_cast_expression13109);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        AS_SYMBOL2501_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AS_SYMBOL2501));
        	        ADAPTOR->addChild(ADAPTOR, root_0, AS_SYMBOL2501_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_cast_type_in_cast_expression13111);
        	        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);

        	        CLOSE_PAR_SYMBOL2503 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_cast_expression13113);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2503_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2503));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2503_tree);
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2567: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_SYMBOL2504 = (pANTLR3_COMMON_TOKEN) MATCHT(CONVERT_SYMBOL, &FOLLOW_CONVERT_SYMBOL_in_cast_expression13118);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CONVERT_SYMBOL2504_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CONVERT_SYMBOL2504));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CONVERT_SYMBOL2504_tree);
        	        }

        	        OPEN_PAR_SYMBOL2505 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_cast_expression13120);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2505_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2505));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2505_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_cast_expression13122);
        	        expression2506=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2506.tree);

        	        // MySQL.g:2567:46: ( COMMA_SYMBOL cast_type | USING_SYMBOL charset_name )
        	        {
        	            int alt698=2;
        	            switch ( LA(1) )
        	            {
        	            case COMMA_SYMBOL:
        	            	{
        	            		alt698=1;
        	            	}
        	                break;
        	            case USING_SYMBOL:
        	            	{
        	            		alt698=2;
        	            	}
        	                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:2567:47: COMMA_SYMBOL cast_type
        	        	    {
        	        	        COMMA_SYMBOL2507 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_cast_expression13125);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecast_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        COMMA_SYMBOL2507_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2507));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2507_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_cast_type_in_cast_expression13127);
        	        	        cast_type2508=cast_type(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecast_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, cast_type2508.tree);

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:2567:72: USING_SYMBOL charset_name
        	        	    {
        	        	        USING_SYMBOL2509 = (pANTLR3_COMMON_TOKEN) MATCHT(USING_SYMBOL, &FOLLOW_USING_SYMBOL_in_cast_expression13131);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecast_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        USING_SYMBOL2509_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USING_SYMBOL2509));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, USING_SYMBOL2509_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_charset_name_in_cast_expression13133);
        	        	        charset_name2510=charset_name(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecast_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset_name2510.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        CLOSE_PAR_SYMBOL2511 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_cast_expression13136);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2511_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2511));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2511_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:2570: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_SYMBOL2512;
    pANTLR3_COMMON_TOKEN    CHAR_SYMBOL2514;
    pANTLR3_COMMON_TOKEN    NCHAR_SYMBOL2517;
    pANTLR3_COMMON_TOKEN    SIGNED_SYMBOL2519;
    pANTLR3_COMMON_TOKEN    INT_SYMBOL2520;
    pANTLR3_COMMON_TOKEN    UNSIGNED_SYMBOL2521;
    pANTLR3_COMMON_TOKEN    INT_SYMBOL2522;
    pANTLR3_COMMON_TOKEN    DATE_SYMBOL2523;
    pANTLR3_COMMON_TOKEN    TIME_SYMBOL2524;
    pANTLR3_COMMON_TOKEN    DATETIME_SYMBOL2526;
    pANTLR3_COMMON_TOKEN    DECIMAL_SYMBOL2528;
    pANTLR3_COMMON_TOKEN    JSON_SYMBOL2530;
    MySQLParser_field_length_return field_length2513;
    #undef	RETURN_TYPE_field_length2513
    #define	RETURN_TYPE_field_length2513 MySQLParser_field_length_return

    MySQLParser_field_length_return field_length2515;
    #undef	RETURN_TYPE_field_length2515
    #define	RETURN_TYPE_field_length2515 MySQLParser_field_length_return

    MySQLParser_encoding_return encoding2516;
    #undef	RETURN_TYPE_encoding2516
    #define	RETURN_TYPE_encoding2516 MySQLParser_encoding_return

    MySQLParser_field_length_return field_length2518;
    #undef	RETURN_TYPE_field_length2518
    #define	RETURN_TYPE_field_length2518 MySQLParser_field_length_return

    MySQLParser_type_datetime_precision_return type_datetime_precision2525;
    #undef	RETURN_TYPE_type_datetime_precision2525
    #define	RETURN_TYPE_type_datetime_precision2525 MySQLParser_type_datetime_precision_return

    MySQLParser_type_datetime_precision_return type_datetime_precision2527;
    #undef	RETURN_TYPE_type_datetime_precision2527
    #define	RETURN_TYPE_type_datetime_precision2527 MySQLParser_type_datetime_precision_return

    MySQLParser_float_options_return float_options2529;
    #undef	RETURN_TYPE_float_options2529
    #define	RETURN_TYPE_float_options2529 MySQLParser_float_options_return

    pANTLR3_BASE_TREE BINARY_SYMBOL2512_tree;
    pANTLR3_BASE_TREE CHAR_SYMBOL2514_tree;
    pANTLR3_BASE_TREE NCHAR_SYMBOL2517_tree;
    pANTLR3_BASE_TREE SIGNED_SYMBOL2519_tree;
    pANTLR3_BASE_TREE INT_SYMBOL2520_tree;
    pANTLR3_BASE_TREE UNSIGNED_SYMBOL2521_tree;
    pANTLR3_BASE_TREE INT_SYMBOL2522_tree;
    pANTLR3_BASE_TREE DATE_SYMBOL2523_tree;
    pANTLR3_BASE_TREE TIME_SYMBOL2524_tree;
    pANTLR3_BASE_TREE DATETIME_SYMBOL2526_tree;
    pANTLR3_BASE_TREE DECIMAL_SYMBOL2528_tree;
    pANTLR3_BASE_TREE JSON_SYMBOL2530_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    BINARY_SYMBOL2512       = NULL;
    CHAR_SYMBOL2514       = NULL;
    NCHAR_SYMBOL2517       = NULL;
    SIGNED_SYMBOL2519       = NULL;
    INT_SYMBOL2520       = NULL;
    UNSIGNED_SYMBOL2521       = NULL;
    INT_SYMBOL2522       = NULL;
    DATE_SYMBOL2523       = NULL;
    TIME_SYMBOL2524       = NULL;
    DATETIME_SYMBOL2526       = NULL;
    DECIMAL_SYMBOL2528       = NULL;
    JSON_SYMBOL2530       = NULL;
    field_length2513.tree = NULL;

    field_length2515.tree = NULL;

    encoding2516.tree = NULL;

    field_length2518.tree = NULL;

    type_datetime_precision2525.tree = NULL;

    type_datetime_precision2527.tree = NULL;

    float_options2529.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    BINARY_SYMBOL2512_tree   = NULL;
    CHAR_SYMBOL2514_tree   = NULL;
    NCHAR_SYMBOL2517_tree   = NULL;
    SIGNED_SYMBOL2519_tree   = NULL;
    INT_SYMBOL2520_tree   = NULL;
    UNSIGNED_SYMBOL2521_tree   = NULL;
    INT_SYMBOL2522_tree   = NULL;
    DATE_SYMBOL2523_tree   = NULL;
    TIME_SYMBOL2524_tree   = NULL;
    DATETIME_SYMBOL2526_tree   = NULL;
    DECIMAL_SYMBOL2528_tree   = NULL;
    JSON_SYMBOL2530_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2570: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 alt709;

            alt709=10;

            switch ( LA(1) )
            {
            case BINARY_SYMBOL:
            	{
            		alt709=1;
            	}
                break;
            case CHAR_SYMBOL:
            	{
            		alt709=2;
            	}
                break;
            case NCHAR_SYMBOL:
            	{
            		alt709=3;
            	}
                break;
            case SIGNED_SYMBOL:
            	{
            		alt709=4;
            	}
                break;
            case UNSIGNED_SYMBOL:
            	{
            		alt709=5;
            	}
                break;
            case DATE_SYMBOL:
            	{
            		alt709=6;
            	}
                break;
            case TIME_SYMBOL:
            	{
            		alt709=7;
            	}
                break;
            case DATETIME_SYMBOL:
            	{
            		alt709=8;
            	}
                break;
            case DECIMAL_SYMBOL:
            	{
            		alt709=9;
            	}
                break;
            case JSON_SYMBOL:
            	{
            		alt709=10;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 709;
                EXCEPTION->state        = 0;


                goto rulecast_typeEx;

            }

            switch (alt709)
            {
        	case 1:
        	    // MySQL.g:2571:2: BINARY_SYMBOL ( field_length )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BINARY_SYMBOL2512 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_cast_type13145);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BINARY_SYMBOL2512_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL2512));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL2512_tree);
        	        }

        	        // MySQL.g:2571:16: ( field_length )?
        	        {
        	            int alt700=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt700=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt700)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2571:16: field_length
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_length_in_cast_type13147);
        	        	        field_length2513=field_length(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecast_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_length2513.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2572:4: CHAR_SYMBOL ( field_length )? ( encoding )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CHAR_SYMBOL2514 = (pANTLR3_COMMON_TOKEN) MATCHT(CHAR_SYMBOL, &FOLLOW_CHAR_SYMBOL_in_cast_type13153);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CHAR_SYMBOL2514_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHAR_SYMBOL2514));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CHAR_SYMBOL2514_tree);
        	        }

        	        // MySQL.g:2572:16: ( field_length )?
        	        {
        	            int alt701=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt701=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt701)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2572:16: field_length
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_length_in_cast_type13155);
        	        	        field_length2515=field_length(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecast_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_length2515.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:2572:30: ( encoding )?
        	        {
        	            int alt702=2;
        	            switch ( LA(1) )
        	            {
        	                case ASCII_SYMBOL:
        	                case BYTE_SYMBOL:
        	                case CHARSET_SYMBOL:
        	                case UNICODE_SYMBOL:
        	                case BINARY_SYMBOL:
        	                case CHAR_SYMBOL:
        	                	{
        	                		alt702=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt702)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2572:30: encoding
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_encoding_in_cast_type13158);
        	        	        encoding2516=encoding(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecast_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, encoding2516.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2573:4: NCHAR_SYMBOL ( field_length )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NCHAR_SYMBOL2517 = (pANTLR3_COMMON_TOKEN) MATCHT(NCHAR_SYMBOL, &FOLLOW_NCHAR_SYMBOL_in_cast_type13164);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NCHAR_SYMBOL2517_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NCHAR_SYMBOL2517));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NCHAR_SYMBOL2517_tree);
        	        }

        	        // MySQL.g:2573:17: ( field_length )?
        	        {
        	            int alt703=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt703=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt703)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2573:17: field_length
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_length_in_cast_type13166);
        	        	        field_length2518=field_length(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecast_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_length2518.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:2574:4: SIGNED_SYMBOL ( INT_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SIGNED_SYMBOL2519 = (pANTLR3_COMMON_TOKEN) MATCHT(SIGNED_SYMBOL, &FOLLOW_SIGNED_SYMBOL_in_cast_type13172);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SIGNED_SYMBOL2519_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SIGNED_SYMBOL2519));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SIGNED_SYMBOL2519_tree);
        	        }

        	        // MySQL.g:2574:18: ( INT_SYMBOL )?
        	        {
        	            int alt704=2;
        	            switch ( LA(1) )
        	            {
        	                case INT_SYMBOL:
        	                	{
        	                		alt704=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt704)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2574:18: INT_SYMBOL
        	        	    {
        	        	        INT_SYMBOL2520 = (pANTLR3_COMMON_TOKEN) MATCHT(INT_SYMBOL, &FOLLOW_INT_SYMBOL_in_cast_type13174);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecast_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        INT_SYMBOL2520_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INT_SYMBOL2520));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, INT_SYMBOL2520_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:2575:4: UNSIGNED_SYMBOL ( INT_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        UNSIGNED_SYMBOL2521 = (pANTLR3_COMMON_TOKEN) MATCHT(UNSIGNED_SYMBOL, &FOLLOW_UNSIGNED_SYMBOL_in_cast_type13180);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        UNSIGNED_SYMBOL2521_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNSIGNED_SYMBOL2521));
        	        ADAPTOR->addChild(ADAPTOR, root_0, UNSIGNED_SYMBOL2521_tree);
        	        }

        	        // MySQL.g:2575:20: ( INT_SYMBOL )?
        	        {
        	            int alt705=2;
        	            switch ( LA(1) )
        	            {
        	                case INT_SYMBOL:
        	                	{
        	                		alt705=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt705)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2575:20: INT_SYMBOL
        	        	    {
        	        	        INT_SYMBOL2522 = (pANTLR3_COMMON_TOKEN) MATCHT(INT_SYMBOL, &FOLLOW_INT_SYMBOL_in_cast_type13182);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecast_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        INT_SYMBOL2522_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INT_SYMBOL2522));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, INT_SYMBOL2522_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:2576:4: DATE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DATE_SYMBOL2523 = (pANTLR3_COMMON_TOKEN) MATCHT(DATE_SYMBOL, &FOLLOW_DATE_SYMBOL_in_cast_type13188);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DATE_SYMBOL2523_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATE_SYMBOL2523));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DATE_SYMBOL2523_tree);
        	        }

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:2577:4: TIME_SYMBOL ( type_datetime_precision )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        TIME_SYMBOL2524 = (pANTLR3_COMMON_TOKEN) MATCHT(TIME_SYMBOL, &FOLLOW_TIME_SYMBOL_in_cast_type13193);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TIME_SYMBOL2524_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TIME_SYMBOL2524));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TIME_SYMBOL2524_tree);
        	        }

        	        // MySQL.g:2577:16: ( type_datetime_precision )?
        	        {
        	            int alt706=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt706=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt706)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2577:16: type_datetime_precision
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_type_datetime_precision_in_cast_type13195);
        	        	        type_datetime_precision2525=type_datetime_precision(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecast_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, type_datetime_precision2525.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 8:
        	    // MySQL.g:2578:4: DATETIME_SYMBOL ( type_datetime_precision )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DATETIME_SYMBOL2526 = (pANTLR3_COMMON_TOKEN) MATCHT(DATETIME_SYMBOL, &FOLLOW_DATETIME_SYMBOL_in_cast_type13201);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DATETIME_SYMBOL2526_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATETIME_SYMBOL2526));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DATETIME_SYMBOL2526_tree);
        	        }

        	        // MySQL.g:2578:20: ( type_datetime_precision )?
        	        {
        	            int alt707=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt707=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt707)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2578:20: type_datetime_precision
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_type_datetime_precision_in_cast_type13203);
        	        	        type_datetime_precision2527=type_datetime_precision(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecast_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, type_datetime_precision2527.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 9:
        	    // MySQL.g:2579:4: DECIMAL_SYMBOL ( float_options )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DECIMAL_SYMBOL2528 = (pANTLR3_COMMON_TOKEN) MATCHT(DECIMAL_SYMBOL, &FOLLOW_DECIMAL_SYMBOL_in_cast_type13209);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DECIMAL_SYMBOL2528_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DECIMAL_SYMBOL2528));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DECIMAL_SYMBOL2528_tree);
        	        }

        	        // MySQL.g:2579:19: ( float_options )?
        	        {
        	            int alt708=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt708=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt708)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2579:19: float_options
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_float_options_in_cast_type13211);
        	        	        float_options2529=float_options(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecast_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, float_options2529.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 10:
        	    // MySQL.g:2580: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_SYMBOL2530 = (pANTLR3_COMMON_TOKEN) MATCHT(JSON_SYMBOL, &FOLLOW_JSON_SYMBOL_in_cast_type13219);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        JSON_SYMBOL2530_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, JSON_SYMBOL2530));
        	        ADAPTOR->addChild(ADAPTOR, root_0, JSON_SYMBOL2530_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:2583: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_SYMBOL2531;
    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL2532;
    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL2533;
    pANTLR3_COMMON_TOKEN    ASCII_SYMBOL2534;
    pANTLR3_COMMON_TOKEN    UNICODE_SYMBOL2535;
    pANTLR3_COMMON_TOKEN    UNICODE_SYMBOL2538;
    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL2539;
    pANTLR3_COMMON_TOKEN    BYTE_SYMBOL2540;
    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL2543;
    MySQLParser_charset_return charset2536;
    #undef	RETURN_TYPE_charset2536
    #define	RETURN_TYPE_charset2536 MySQLParser_charset_return

    MySQLParser_charset_name_return charset_name2537;
    #undef	RETURN_TYPE_charset_name2537
    #define	RETURN_TYPE_charset_name2537 MySQLParser_charset_name_return

    MySQLParser_charset_return charset2541;
    #undef	RETURN_TYPE_charset2541
    #define	RETURN_TYPE_charset2541 MySQLParser_charset_return

    MySQLParser_charset_name_return charset_name2542;
    #undef	RETURN_TYPE_charset_name2542
    #define	RETURN_TYPE_charset_name2542 MySQLParser_charset_name_return

    pANTLR3_BASE_TREE ASCII_SYMBOL2531_tree;
    pANTLR3_BASE_TREE BINARY_SYMBOL2532_tree;
    pANTLR3_BASE_TREE BINARY_SYMBOL2533_tree;
    pANTLR3_BASE_TREE ASCII_SYMBOL2534_tree;
    pANTLR3_BASE_TREE UNICODE_SYMBOL2535_tree;
    pANTLR3_BASE_TREE UNICODE_SYMBOL2538_tree;
    pANTLR3_BASE_TREE BINARY_SYMBOL2539_tree;
    pANTLR3_BASE_TREE BYTE_SYMBOL2540_tree;
    pANTLR3_BASE_TREE BINARY_SYMBOL2543_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ASCII_SYMBOL2531       = NULL;
    BINARY_SYMBOL2532       = NULL;
    BINARY_SYMBOL2533       = NULL;
    ASCII_SYMBOL2534       = NULL;
    UNICODE_SYMBOL2535       = NULL;
    UNICODE_SYMBOL2538       = NULL;
    BINARY_SYMBOL2539       = NULL;
    BYTE_SYMBOL2540       = NULL;
    BINARY_SYMBOL2543       = NULL;
    charset2536.tree = NULL;

    charset_name2537.tree = NULL;

    charset2541.tree = NULL;

    charset_name2542.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ASCII_SYMBOL2531_tree   = NULL;
    BINARY_SYMBOL2532_tree   = NULL;
    BINARY_SYMBOL2533_tree   = NULL;
    ASCII_SYMBOL2534_tree   = NULL;
    UNICODE_SYMBOL2535_tree   = NULL;
    UNICODE_SYMBOL2538_tree   = NULL;
    BINARY_SYMBOL2539_tree   = NULL;
    BYTE_SYMBOL2540_tree   = NULL;
    BINARY_SYMBOL2543_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2583: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 alt714;

            alt714=5;

            switch ( LA(1) )
            {
            case ASCII_SYMBOL:
            	{
            		alt714=1;
            	}
                break;
            case BINARY_SYMBOL:
            	{
            		alt714=2;
            	}
                break;
            case UNICODE_SYMBOL:
            	{
            		alt714=3;
            	}
                break;
            case BYTE_SYMBOL:
            	{
            		alt714=4;
            	}
                break;
            case CHARSET_SYMBOL:
            case CHAR_SYMBOL:
            	{
            		alt714=5;
            	}
                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 ruleencodingEx;

            }

            switch (alt714)
            {
        	case 1:
        	    // MySQL.g:2584:2: ASCII_SYMBOL ( BINARY_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ASCII_SYMBOL2531 = (pANTLR3_COMMON_TOKEN) MATCHT(ASCII_SYMBOL, &FOLLOW_ASCII_SYMBOL_in_encoding13228);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleencodingEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ASCII_SYMBOL2531_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ASCII_SYMBOL2531));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ASCII_SYMBOL2531_tree);
        	        }

        	        // MySQL.g:2584:15: ( BINARY_SYMBOL )?
        	        {
        	            int alt710=2;
        	            switch ( LA(1) )
        	            {
        	                case BINARY_SYMBOL:
        	                	{
        	                		alt710=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt710)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2584:15: BINARY_SYMBOL
        	        	    {
        	        	        BINARY_SYMBOL2532 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_encoding13230);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleencodingEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        BINARY_SYMBOL2532_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL2532));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL2532_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2585:4: BINARY_SYMBOL ( ASCII_SYMBOL | UNICODE_SYMBOL | charset charset_name )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BINARY_SYMBOL2533 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_encoding13236);
        	        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);
        	        }

        	        // MySQL.g:2585:18: ( ASCII_SYMBOL | UNICODE_SYMBOL | charset charset_name )?
        	        {
        	            int alt711=4;
        	            switch ( LA(1) )
        	            {
        	                case ASCII_SYMBOL:
        	                	{
        	                		alt711=1;
        	                	}
        	                    break;
        	                case UNICODE_SYMBOL:
        	                	{
        	                		alt711=2;
        	                	}
        	                    break;
        	                case CHARSET_SYMBOL:
        	                case CHAR_SYMBOL:
        	                	{
        	                		alt711=3;
        	                	}
        	                    break;
        	            }

        	            switch (alt711)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2585:19: ASCII_SYMBOL
        	        	    {
        	        	        ASCII_SYMBOL2534 = (pANTLR3_COMMON_TOKEN) MATCHT(ASCII_SYMBOL, &FOLLOW_ASCII_SYMBOL_in_encoding13239);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleencodingEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        ASCII_SYMBOL2534_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ASCII_SYMBOL2534));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, ASCII_SYMBOL2534_tree);
        	        	        }

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:2585:34: UNICODE_SYMBOL
        	        	    {
        	        	        UNICODE_SYMBOL2535 = (pANTLR3_COMMON_TOKEN) MATCHT(UNICODE_SYMBOL, &FOLLOW_UNICODE_SYMBOL_in_encoding13243);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleencodingEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        UNICODE_SYMBOL2535_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNICODE_SYMBOL2535));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, UNICODE_SYMBOL2535_tree);
        	        	        }

        	        	    }
        	        	    break;
        	        	case 3:
        	        	    // MySQL.g:2585:51: charset charset_name
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_charset_in_encoding13247);
        	        	        charset2536=charset(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleencodingEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset2536.tree);

        	        	        FOLLOWPUSH(FOLLOW_charset_name_in_encoding13249);
        	        	        charset_name2537=charset_name(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleencodingEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset_name2537.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2586:4: UNICODE_SYMBOL ( BINARY_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        UNICODE_SYMBOL2538 = (pANTLR3_COMMON_TOKEN) MATCHT(UNICODE_SYMBOL, &FOLLOW_UNICODE_SYMBOL_in_encoding13256);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleencodingEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        UNICODE_SYMBOL2538_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNICODE_SYMBOL2538));
        	        ADAPTOR->addChild(ADAPTOR, root_0, UNICODE_SYMBOL2538_tree);
        	        }

        	        // MySQL.g:2586:19: ( BINARY_SYMBOL )?
        	        {
        	            int alt712=2;
        	            switch ( LA(1) )
        	            {
        	                case BINARY_SYMBOL:
        	                	{
        	                		alt712=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt712)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2586:19: BINARY_SYMBOL
        	        	    {
        	        	        BINARY_SYMBOL2539 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_encoding13258);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleencodingEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        BINARY_SYMBOL2539_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL2539));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL2539_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:2587:4: BYTE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BYTE_SYMBOL2540 = (pANTLR3_COMMON_TOKEN) MATCHT(BYTE_SYMBOL, &FOLLOW_BYTE_SYMBOL_in_encoding13264);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleencodingEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BYTE_SYMBOL2540_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BYTE_SYMBOL2540));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BYTE_SYMBOL2540_tree);
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:2588:4: charset charset_name ( BINARY_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_charset_in_encoding13269);
        	        charset2541=charset(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleencodingEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset2541.tree);

        	        FOLLOWPUSH(FOLLOW_charset_name_in_encoding13271);
        	        charset_name2542=charset_name(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleencodingEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset_name2542.tree);

        	        // MySQL.g:2588:25: ( BINARY_SYMBOL )?
        	        {
        	            int alt713=2;
        	            switch ( LA(1) )
        	            {
        	                case BINARY_SYMBOL:
        	                	{
        	                		alt713=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt713)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2588:25: BINARY_SYMBOL
        	        	    {
        	        	        BINARY_SYMBOL2543 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_encoding13273);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleencodingEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        BINARY_SYMBOL2543_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL2543));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL2543_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:2591: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_SYMBOL2544;
    pANTLR3_COMMON_TOKEN    SET_SYMBOL2545;
    pANTLR3_COMMON_TOKEN    CHARSET_SYMBOL2546;

    pANTLR3_BASE_TREE CHAR_SYMBOL2544_tree;
    pANTLR3_BASE_TREE SET_SYMBOL2545_tree;
    pANTLR3_BASE_TREE CHARSET_SYMBOL2546_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CHAR_SYMBOL2544       = NULL;
    SET_SYMBOL2545       = NULL;
    CHARSET_SYMBOL2546       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CHAR_SYMBOL2544_tree   = NULL;
    SET_SYMBOL2545_tree   = NULL;
    CHARSET_SYMBOL2546_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2591:8: ( CHAR_SYMBOL SET_SYMBOL | CHARSET_SYMBOL )

            ANTLR3_UINT32 alt715;

            alt715=2;

            switch ( LA(1) )
            {
            case CHAR_SYMBOL:
            	{
            		alt715=1;
            	}
                break;
            case CHARSET_SYMBOL:
            	{
            		alt715=2;
            	}
                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 rulecharsetEx;

            }

            switch (alt715)
            {
        	case 1:
        	    // MySQL.g:2592:2: CHAR_SYMBOL SET_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CHAR_SYMBOL2544 = (pANTLR3_COMMON_TOKEN) MATCHT(CHAR_SYMBOL, &FOLLOW_CHAR_SYMBOL_in_charset13283);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecharsetEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CHAR_SYMBOL2544_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHAR_SYMBOL2544));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CHAR_SYMBOL2544_tree);
        	        }

        	        SET_SYMBOL2545 = (pANTLR3_COMMON_TOKEN) MATCHT(SET_SYMBOL, &FOLLOW_SET_SYMBOL_in_charset13285);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecharsetEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SET_SYMBOL2545_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SET_SYMBOL2545));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SET_SYMBOL2545_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2592:27: CHARSET_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CHARSET_SYMBOL2546 = (pANTLR3_COMMON_TOKEN) MATCHT(CHARSET_SYMBOL, &FOLLOW_CHARSET_SYMBOL_in_charset13289);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecharsetEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CHARSET_SYMBOL2546_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHARSET_SYMBOL2546));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CHARSET_SYMBOL2546_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:2595: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    set2547;

    pANTLR3_BASE_TREE set2547_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2547       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2547_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2595:9: ( NOT_SYMBOL | NOT2_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set2547=(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, set2547))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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:2600: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    set2548;

    pANTLR3_BASE_TREE set2548_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2548       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2548_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2600:10: ( LOGICAL_NOT_OPERATOR | NOT2_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set2548=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == NOT2_SYMBOL || LA(1) == LOGICAL_NOT_OPERATOR )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set2548))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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:2605: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    set2549;

    pANTLR3_BASE_TREE set2549_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2549       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2549_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2605:8: ( OR_SYMBOL | LOGICAL_OR_OPERATOR )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set2549=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == OR_SYMBOL || LA(1) == LOGICAL_OR_OPERATOR )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set2549))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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:2610: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    set2550;

    pANTLR3_BASE_TREE set2550_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2550       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2550_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2610:9: ( XOR_SYMBOL | BITWISE_XOR_OPERATOR )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set2550=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == XOR_SYMBOL || LA(1) == BITWISE_XOR_OPERATOR )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set2550))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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:2615: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    set2551;

    pANTLR3_BASE_TREE set2551_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2551       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2551_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2615:9: ( AND_SYMBOL | LOGICAL_AND_OPERATOR )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set2551=(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, set2551))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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:2620:1: interval : expression interval_unit ;
 */
static MySQLParser_interval_return
interval(pMySQLParser ctx)
{
    MySQLParser_interval_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_expression_return expression2552;
    #undef	RETURN_TYPE_expression2552
    #define	RETURN_TYPE_expression2552 MySQLParser_expression_return

    MySQLParser_interval_unit_return interval_unit2553;
    #undef	RETURN_TYPE_interval_unit2553
    #define	RETURN_TYPE_interval_unit2553 MySQLParser_interval_unit_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    expression2552.tree = NULL;

    interval_unit2553.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:2620:9: ( expression interval_unit )
        // MySQL.g:2621:3: expression interval_unit
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_expression_in_interval13370);
            expression2552=expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleintervalEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2552.tree);

            FOLLOWPUSH(FOLLOW_interval_unit_in_interval13372);
            interval_unit2553=interval_unit(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleintervalEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, interval_unit2553.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:2625: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_SYMBOL2555;
    pANTLR3_COMMON_TOKEN    MINUTE_MICROSECOND_SYMBOL2556;
    pANTLR3_COMMON_TOKEN    MINUTE_SECOND_SYMBOL2557;
    pANTLR3_COMMON_TOKEN    HOUR_MICROSECOND_SYMBOL2558;
    pANTLR3_COMMON_TOKEN    HOUR_SECOND_SYMBOL2559;
    pANTLR3_COMMON_TOKEN    HOUR_MINUTE_SYMBOL2560;
    pANTLR3_COMMON_TOKEN    DAY_MICROSECOND_SYMBOL2561;
    pANTLR3_COMMON_TOKEN    DAY_SECOND_SYMBOL2562;
    pANTLR3_COMMON_TOKEN    DAY_MINUTE_SYMBOL2563;
    pANTLR3_COMMON_TOKEN    DAY_HOUR_SYMBOL2564;
    pANTLR3_COMMON_TOKEN    YEAR_MONTH_SYMBOL2565;
    MySQLParser_interval_timestamp_unit_return interval_timestamp_unit2554;
    #undef	RETURN_TYPE_interval_timestamp_unit2554
    #define	RETURN_TYPE_interval_timestamp_unit2554 MySQLParser_interval_timestamp_unit_return

    pANTLR3_BASE_TREE SECOND_MICROSECOND_SYMBOL2555_tree;
    pANTLR3_BASE_TREE MINUTE_MICROSECOND_SYMBOL2556_tree;
    pANTLR3_BASE_TREE MINUTE_SECOND_SYMBOL2557_tree;
    pANTLR3_BASE_TREE HOUR_MICROSECOND_SYMBOL2558_tree;
    pANTLR3_BASE_TREE HOUR_SECOND_SYMBOL2559_tree;
    pANTLR3_BASE_TREE HOUR_MINUTE_SYMBOL2560_tree;
    pANTLR3_BASE_TREE DAY_MICROSECOND_SYMBOL2561_tree;
    pANTLR3_BASE_TREE DAY_SECOND_SYMBOL2562_tree;
    pANTLR3_BASE_TREE DAY_MINUTE_SYMBOL2563_tree;
    pANTLR3_BASE_TREE DAY_HOUR_SYMBOL2564_tree;
    pANTLR3_BASE_TREE YEAR_MONTH_SYMBOL2565_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SECOND_MICROSECOND_SYMBOL2555       = NULL;
    MINUTE_MICROSECOND_SYMBOL2556       = NULL;
    MINUTE_SECOND_SYMBOL2557       = NULL;
    HOUR_MICROSECOND_SYMBOL2558       = NULL;
    HOUR_SECOND_SYMBOL2559       = NULL;
    HOUR_MINUTE_SYMBOL2560       = NULL;
    DAY_MICROSECOND_SYMBOL2561       = NULL;
    DAY_SECOND_SYMBOL2562       = NULL;
    DAY_MINUTE_SYMBOL2563       = NULL;
    DAY_HOUR_SYMBOL2564       = NULL;
    YEAR_MONTH_SYMBOL2565       = NULL;
    interval_timestamp_unit2554.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SECOND_MICROSECOND_SYMBOL2555_tree   = NULL;
    MINUTE_MICROSECOND_SYMBOL2556_tree   = NULL;
    MINUTE_SECOND_SYMBOL2557_tree   = NULL;
    HOUR_MICROSECOND_SYMBOL2558_tree   = NULL;
    HOUR_SECOND_SYMBOL2559_tree   = NULL;
    HOUR_MINUTE_SYMBOL2560_tree   = NULL;
    DAY_MICROSECOND_SYMBOL2561_tree   = NULL;
    DAY_SECOND_SYMBOL2562_tree   = NULL;
    DAY_MINUTE_SYMBOL2563_tree   = NULL;
    DAY_HOUR_SYMBOL2564_tree   = NULL;
    YEAR_MONTH_SYMBOL2565_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2625: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 alt716;

            alt716=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:
            	{
            		alt716=1;
            	}
                break;
            case SECOND_MICROSECOND_SYMBOL:
            	{
            		alt716=2;
            	}
                break;
            case MINUTE_MICROSECOND_SYMBOL:
            	{
            		alt716=3;
            	}
                break;
            case MINUTE_SECOND_SYMBOL:
            	{
            		alt716=4;
            	}
                break;
            case HOUR_MICROSECOND_SYMBOL:
            	{
            		alt716=5;
            	}
                break;
            case HOUR_SECOND_SYMBOL:
            	{
            		alt716=6;
            	}
                break;
            case HOUR_MINUTE_SYMBOL:
            	{
            		alt716=7;
            	}
                break;
            case DAY_MICROSECOND_SYMBOL:
            	{
            		alt716=8;
            	}
                break;
            case DAY_SECOND_SYMBOL:
            	{
            		alt716=9;
            	}
                break;
            case DAY_MINUTE_SYMBOL:
            	{
            		alt716=10;
            	}
                break;
            case DAY_HOUR_SYMBOL:
            	{
            		alt716=11;
            	}
                break;
            case YEAR_MONTH_SYMBOL:
            	{
            		alt716=12;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 716;
                EXCEPTION->state        = 0;


                goto ruleinterval_unitEx;

            }

            switch (alt716)
            {
        	case 1:
        	    // MySQL.g:2626:2: interval_timestamp_unit
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_interval_timestamp_unit_in_interval_unit13382);
        	        interval_timestamp_unit2554=interval_timestamp_unit(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_unitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, interval_timestamp_unit2554.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2627:4: SECOND_MICROSECOND_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SECOND_MICROSECOND_SYMBOL2555 = (pANTLR3_COMMON_TOKEN) MATCHT(SECOND_MICROSECOND_SYMBOL, &FOLLOW_SECOND_MICROSECOND_SYMBOL_in_interval_unit13387);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_unitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SECOND_MICROSECOND_SYMBOL2555_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SECOND_MICROSECOND_SYMBOL2555));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SECOND_MICROSECOND_SYMBOL2555_tree);
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2628:4: MINUTE_MICROSECOND_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MINUTE_MICROSECOND_SYMBOL2556 = (pANTLR3_COMMON_TOKEN) MATCHT(MINUTE_MICROSECOND_SYMBOL, &FOLLOW_MINUTE_MICROSECOND_SYMBOL_in_interval_unit13392);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_unitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MINUTE_MICROSECOND_SYMBOL2556_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MINUTE_MICROSECOND_SYMBOL2556));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MINUTE_MICROSECOND_SYMBOL2556_tree);
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:2629:4: MINUTE_SECOND_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MINUTE_SECOND_SYMBOL2557 = (pANTLR3_COMMON_TOKEN) MATCHT(MINUTE_SECOND_SYMBOL, &FOLLOW_MINUTE_SECOND_SYMBOL_in_interval_unit13397);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_unitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MINUTE_SECOND_SYMBOL2557_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MINUTE_SECOND_SYMBOL2557));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MINUTE_SECOND_SYMBOL2557_tree);
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:2630:4: HOUR_MICROSECOND_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        HOUR_MICROSECOND_SYMBOL2558 = (pANTLR3_COMMON_TOKEN) MATCHT(HOUR_MICROSECOND_SYMBOL, &FOLLOW_HOUR_MICROSECOND_SYMBOL_in_interval_unit13402);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_unitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        HOUR_MICROSECOND_SYMBOL2558_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, HOUR_MICROSECOND_SYMBOL2558));
        	        ADAPTOR->addChild(ADAPTOR, root_0, HOUR_MICROSECOND_SYMBOL2558_tree);
        	        }

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:2631:4: HOUR_SECOND_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        HOUR_SECOND_SYMBOL2559 = (pANTLR3_COMMON_TOKEN) MATCHT(HOUR_SECOND_SYMBOL, &FOLLOW_HOUR_SECOND_SYMBOL_in_interval_unit13407);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_unitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        HOUR_SECOND_SYMBOL2559_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, HOUR_SECOND_SYMBOL2559));
        	        ADAPTOR->addChild(ADAPTOR, root_0, HOUR_SECOND_SYMBOL2559_tree);
        	        }

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:2632:4: HOUR_MINUTE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        HOUR_MINUTE_SYMBOL2560 = (pANTLR3_COMMON_TOKEN) MATCHT(HOUR_MINUTE_SYMBOL, &FOLLOW_HOUR_MINUTE_SYMBOL_in_interval_unit13412);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_unitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        HOUR_MINUTE_SYMBOL2560_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, HOUR_MINUTE_SYMBOL2560));
        	        ADAPTOR->addChild(ADAPTOR, root_0, HOUR_MINUTE_SYMBOL2560_tree);
        	        }

        	    }
        	    break;
        	case 8:
        	    // MySQL.g:2633:4: DAY_MICROSECOND_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DAY_MICROSECOND_SYMBOL2561 = (pANTLR3_COMMON_TOKEN) MATCHT(DAY_MICROSECOND_SYMBOL, &FOLLOW_DAY_MICROSECOND_SYMBOL_in_interval_unit13417);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_unitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DAY_MICROSECOND_SYMBOL2561_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DAY_MICROSECOND_SYMBOL2561));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DAY_MICROSECOND_SYMBOL2561_tree);
        	        }

        	    }
        	    break;
        	case 9:
        	    // MySQL.g:2634:4: DAY_SECOND_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DAY_SECOND_SYMBOL2562 = (pANTLR3_COMMON_TOKEN) MATCHT(DAY_SECOND_SYMBOL, &FOLLOW_DAY_SECOND_SYMBOL_in_interval_unit13422);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_unitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DAY_SECOND_SYMBOL2562_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DAY_SECOND_SYMBOL2562));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DAY_SECOND_SYMBOL2562_tree);
        	        }

        	    }
        	    break;
        	case 10:
        	    // MySQL.g:2635:4: DAY_MINUTE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DAY_MINUTE_SYMBOL2563 = (pANTLR3_COMMON_TOKEN) MATCHT(DAY_MINUTE_SYMBOL, &FOLLOW_DAY_MINUTE_SYMBOL_in_interval_unit13427);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_unitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DAY_MINUTE_SYMBOL2563_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DAY_MINUTE_SYMBOL2563));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DAY_MINUTE_SYMBOL2563_tree);
        	        }

        	    }
        	    break;
        	case 11:
        	    // MySQL.g:2636:4: DAY_HOUR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DAY_HOUR_SYMBOL2564 = (pANTLR3_COMMON_TOKEN) MATCHT(DAY_HOUR_SYMBOL, &FOLLOW_DAY_HOUR_SYMBOL_in_interval_unit13432);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_unitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DAY_HOUR_SYMBOL2564_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DAY_HOUR_SYMBOL2564));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DAY_HOUR_SYMBOL2564_tree);
        	        }

        	    }
        	    break;
        	case 12:
        	    // MySQL.g:2637:4: YEAR_MONTH_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        YEAR_MONTH_SYMBOL2565 = (pANTLR3_COMMON_TOKEN) MATCHT(YEAR_MONTH_SYMBOL, &FOLLOW_YEAR_MONTH_SYMBOL_in_interval_unit13437);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_unitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        YEAR_MONTH_SYMBOL2565_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, YEAR_MONTH_SYMBOL2565));
        	        ADAPTOR->addChild(ADAPTOR, root_0, YEAR_MONTH_SYMBOL2565_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:2641: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    set2566;

    pANTLR3_BASE_TREE set2566_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2566       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2566_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2641: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));


            set2566=(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, set2566))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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:2654: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_SYMBOL2567;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2569;
    MySQLParser_expression_list_return expression_list2568;
    #undef	RETURN_TYPE_expression_list2568
    #define	RETURN_TYPE_expression_list2568 MySQLParser_expression_list_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2567_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2569_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_SYMBOL2567       = NULL;
    CLOSE_PAR_SYMBOL2569       = NULL;
    expression_list2568.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL2567_tree   = NULL;
    CLOSE_PAR_SYMBOL2569_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:2654:33: ( OPEN_PAR_SYMBOL expression_list CLOSE_PAR_SYMBOL -> ^( PAR_EXPRESSION_TOKEN OPEN_PAR_SYMBOL expression_list CLOSE_PAR_SYMBOL ) )
        // MySQL.g:2655:2: OPEN_PAR_SYMBOL expression_list CLOSE_PAR_SYMBOL
        {
            OPEN_PAR_SYMBOL2567 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_expression_list_with_parentheses13505);
            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_SYMBOL2567, NULL); }


            FOLLOWPUSH(FOLLOW_expression_list_in_expression_list_with_parentheses13507);
            expression_list2568=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_list2568.tree, NULL); }

            CLOSE_PAR_SYMBOL2569 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_expression_list_with_parentheses13509);
            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_SYMBOL2569, NULL); }


            /* AST REWRITE
             * elements          : OPEN_PAR_SYMBOL, CLOSE_PAR_SYMBOL, expression_list
             * token labels      : 
             * rule labels       : retval
             * token list labels : 
             * rule list labels  : 
             */
            if ( BACKTRACKING==0 ) 

            {
            	pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_retval;

            	stream_retval=antlr3RewriteRuleSubtreeStreamNewAEE(ADAPTOR,  RECOGNIZER, (pANTLR3_UINT8)"token retval", retval.tree != NULL ? retval.tree : NULL);

            	root_0			    = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));
            	retval.tree    = root_0;
            	// 2655:51: -> ^( PAR_EXPRESSION_TOKEN OPEN_PAR_SYMBOL expression_list CLOSE_PAR_SYMBOL )
            	{
            	    // MySQL.g:2655: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:2658: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_SYMBOL2570;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2572;
    MySQLParser_expression_list_return expression_list2571;
    #undef	RETURN_TYPE_expression_list2571
    #define	RETURN_TYPE_expression_list2571 MySQLParser_expression_list_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2570_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2572_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_SYMBOL2570       = NULL;
    CLOSE_PAR_SYMBOL2572       = NULL;
    expression_list2571.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL2570_tree   = NULL;
    CLOSE_PAR_SYMBOL2572_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:2658:42: ( OPEN_PAR_SYMBOL ( expression_list )? CLOSE_PAR_SYMBOL -> ^( PAR_EXPRESSION_TOKEN OPEN_PAR_SYMBOL ( expression_list )? CLOSE_PAR_SYMBOL ) )
        // MySQL.g:2659:2: OPEN_PAR_SYMBOL ( expression_list )? CLOSE_PAR_SYMBOL
        {
            OPEN_PAR_SYMBOL2570 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_optional_expression_list_with_parentheses13530);
            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_SYMBOL2570, NULL); }


            // MySQL.g:2659:18: ( expression_list )?
            {
                int alt717=2;
                {
                    int LA717_0 = LA(1);
                    if ( (((LA717_0 >= ACCOUNT_SYMBOL) && (LA717_0 <= YEAR_SYMBOL)) || LA717_0 == BINARY_SYMBOL || ((LA717_0 >= CASE_SYMBOL) && (LA717_0 <= CAST_SYMBOL)) || LA717_0 == CHAR_SYMBOL || ((LA717_0 >= CONVERT_SYMBOL) && (LA717_0 <= COUNT_SYMBOL)) || LA717_0 == CURDATE_SYMBOL || LA717_0 == CURRENT_USER_SYMBOL || LA717_0 == CURTIME_SYMBOL || LA717_0 == DATABASE_SYMBOL || LA717_0 == DATE_ADD_SYMBOL || LA717_0 == DATE_SUB_SYMBOL || LA717_0 == EXISTS_SYMBOL || ((LA717_0 >= EXTRACT_SYMBOL) && (LA717_0 <= FALSE_SYMBOL)) || LA717_0 == GROUP_CONCAT_SYMBOL || LA717_0 == IF_SYMBOL || LA717_0 == INSERT_SYMBOL || LA717_0 == INTERVAL_SYMBOL || LA717_0 == LEFT_SYMBOL || LA717_0 == MATCH_SYMBOL || LA717_0 == MAX_SYMBOL || LA717_0 == MIN_SYMBOL || LA717_0 == MOD_SYMBOL || LA717_0 == NCHAR_TEXT || ((LA717_0 >= NOT2_SYMBOL) && (LA717_0 <= NOW_SYMBOL)) || ((LA717_0 >= NULL2_SYMBOL) && (LA717_0 <= NULL_SYMBOL)) || ((LA717_0 >= OPEN_CURLY_SYMBOL) && (LA717_0 <= OPEN_PAR_SYMBOL)) || ((LA717_0 >= PARAM_MARKER) && (LA717_0 <= POSITION_SYMBOL)) || ((LA717_0 >= REPEAT_SYMBOL) && (LA717_0 <= REPLACE_SYMBOL)) || LA717_0 == RIGHT_SYMBOL || LA717_0 == SINGLE_QUOTED_TEXT || LA717_0 == STDDEV_SAMP_SYMBOL || LA717_0 == STD_SYMBOL || LA717_0 == SUBSTRING_SYMBOL || ((LA717_0 >= SUM_SYMBOL) && (LA717_0 <= SYSDATE_SYMBOL)) || ((LA717_0 >= TRIM_SYMBOL) && (LA717_0 <= TRUE_SYMBOL)) || ((LA717_0 >= UTC_DATE_SYMBOL) && (LA717_0 <= UTC_TIME_SYMBOL)) || LA717_0 == VALUES_SYMBOL || LA717_0 == VARIANCE_SYMBOL || LA717_0 == VAR_SAMP_SYMBOL || ((LA717_0 >= AT_AT_SIGN_SYMBOL) && (LA717_0 <= AT_TEXT_SUFFIX)) || ((LA717_0 >= BACK_TICK_QUOTED_ID) && (LA717_0 <= BIN_NUMBER)) || LA717_0 == BITWISE_NOT_OPERATOR || ((LA717_0 >= BIT_AND_SYMBOL) && (LA717_0 <= BIT_XOR_SYMBOL)) || LA717_0 == DECIMAL_NUMBER || LA717_0 == DOT_SYMBOL || LA717_0 == DOUBLE_QUOTED_TEXT || LA717_0 == FLOAT_NUMBER || ((LA717_0 >= HEX_NUMBER) && (LA717_0 <= IDENTIFIER)) || LA717_0 == INT_NUMBER || LA717_0 == LOGICAL_NOT_OPERATOR || ((LA717_0 >= LONG_NUMBER) && (LA717_0 <= MINUS_OPERATOR)) || LA717_0 == PLUS_OPERATOR || ((LA717_0 >= ULONGLONG_NUMBER) && (LA717_0 <= UNDERSCORE_CHARSET))))
                    {
                        alt717=1;
                    }
                }
                switch (alt717)
                {
            	case 1:
            	    // MySQL.g:2659:18: expression_list
            	    {
            	        FOLLOWPUSH(FOLLOW_expression_list_in_optional_expression_list_with_parentheses13532);
            	        expression_list2571=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_list2571.tree, NULL); }

            	    }
            	    break;

                }
            }

            CLOSE_PAR_SYMBOL2572 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_optional_expression_list_with_parentheses13535);
            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_SYMBOL2572, NULL); }


            /* AST REWRITE
             * elements          : CLOSE_PAR_SYMBOL, OPEN_PAR_SYMBOL, expression_list
             * token labels      : 
             * rule labels       : retval
             * token list labels : 
             * rule list labels  : 
             */
            if ( BACKTRACKING==0 ) 

            {
            	pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_retval;

            	stream_retval=antlr3RewriteRuleSubtreeStreamNewAEE(ADAPTOR,  RECOGNIZER, (pANTLR3_UINT8)"token retval", retval.tree != NULL ? retval.tree : NULL);

            	root_0			    = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));
            	retval.tree    = root_0;
            	// 2659:52: -> ^( PAR_EXPRESSION_TOKEN OPEN_PAR_SYMBOL ( expression_list )? CLOSE_PAR_SYMBOL )
            	{
            	    // MySQL.g:2659: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:2659: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:2662: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_SYMBOL2574;
    MySQLParser_expression_return expression2573;
    #undef	RETURN_TYPE_expression2573
    #define	RETURN_TYPE_expression2573 MySQLParser_expression_return

    MySQLParser_expression_return expression2575;
    #undef	RETURN_TYPE_expression2575
    #define	RETURN_TYPE_expression2575 MySQLParser_expression_return

    pANTLR3_BASE_TREE COMMA_SYMBOL2574_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL2574       = NULL;
    expression2573.tree = NULL;

    expression2575.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL2574_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2662:16: ( expression ( COMMA_SYMBOL expression )* )
        // MySQL.g:2663:2: expression ( COMMA_SYMBOL expression )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_expression_in_expression_list13557);
            expression2573=expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleexpression_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2573.tree);

            // MySQL.g:2663:13: ( COMMA_SYMBOL expression )*

            for (;;)
            {
                int alt718=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt718=1;
                	}
                    break;

                }

                switch (alt718)
                {
            	case 1:
            	    // MySQL.g:2663:14: COMMA_SYMBOL expression
            	    {
            	        COMMA_SYMBOL2574 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_expression_list13560);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleexpression_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL2574_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2574));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2574_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_expression_in_expression_list13562);
            	        expression2575=expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleexpression_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2575.tree);

            	    }
            	    break;

            	default:
            	    goto loop718;	/* break out of the loop */
            	    break;
                }
            }
            loop718: ; /* 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:2666: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_SYMBOL2578;
    MySQLParser_expression_return expression2576;
    #undef	RETURN_TYPE_expression2576
    #define	RETURN_TYPE_expression2576 MySQLParser_expression_return

    MySQLParser_direction_return direction2577;
    #undef	RETURN_TYPE_direction2577
    #define	RETURN_TYPE_direction2577 MySQLParser_direction_return

    MySQLParser_expression_return expression2579;
    #undef	RETURN_TYPE_expression2579
    #define	RETURN_TYPE_expression2579 MySQLParser_expression_return

    MySQLParser_direction_return direction2580;
    #undef	RETURN_TYPE_direction2580
    #define	RETURN_TYPE_direction2580 MySQLParser_direction_return

    pANTLR3_BASE_TREE COMMA_SYMBOL2578_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL2578       = NULL;
    expression2576.tree = NULL;

    direction2577.tree = NULL;

    expression2579.tree = NULL;

    direction2580.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL2578_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2666:31: ( expression ( direction )? ( options {greedy=true; } : COMMA_SYMBOL expression ( direction )? )* )
        // MySQL.g:2667: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_direction13573);
            expression2576=expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleexpression_list_with_directionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2576.tree);

            // MySQL.g:2667:13: ( direction )?
            {
                int alt719=2;
                switch ( LA(1) )
                {
                    case ASC_SYMBOL:
                    case DESC_SYMBOL:
                    	{
                    		alt719=1;
                    	}
                        break;
                }

                switch (alt719)
                {
            	case 1:
            	    // MySQL.g:2667:13: direction
            	    {
            	        FOLLOWPUSH(FOLLOW_direction_in_expression_list_with_direction13575);
            	        direction2577=direction(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleexpression_list_with_directionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, direction2577.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:2667:24: ( options {greedy=true; } : COMMA_SYMBOL expression ( direction )? )*

            for (;;)
            {
                int alt721=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		{
                		   /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		    */
                		    int LA721_19 = LA(2);
                		    if ( (LA721_19 == OPEN_PAR_SYMBOL))
                		    {
                		        alt721=1;
                		    }
                		    else if ( (LA721_19 == IDENTIFIER))
                		    {
                		        alt721=1;
                		    }
                		    else if ( (LA721_19 == BACK_TICK_QUOTED_ID))
                		    {
                		        alt721=1;
                		    }
                		    else if ( (LA721_19 == DOUBLE_QUOTED_TEXT))
                		    {
                		        alt721=1;
                		    }
                		    else if ( (LA721_19 == DATE_SYMBOL))
                		    {
                		        alt721=1;
                		    }
                		    else if ( (LA721_19 == ASCII_SYMBOL || LA721_19 == INTERVAL_SYMBOL || LA721_19 == NCHAR_TEXT || ((LA721_19 >= NOT2_SYMBOL) && (LA721_19 <= NOT_SYMBOL)) || LA721_19 == SINGLE_QUOTED_TEXT || LA721_19 == BITWISE_NOT_OPERATOR || LA721_19 == DECIMAL_NUMBER || LA721_19 == FLOAT_NUMBER || LA721_19 == INT_NUMBER || LA721_19 == LOGICAL_NOT_OPERATOR || ((LA721_19 >= LONG_NUMBER) && (LA721_19 <= MINUS_OPERATOR)) || LA721_19 == PLUS_OPERATOR || ((LA721_19 >= ULONGLONG_NUMBER) && (LA721_19 <= UNDERSCORE_CHARSET))))
                		    {
                		        alt721=1;
                		    }
                		    else if ( (LA721_19 == DOT_SYMBOL))
                		    {
                		        alt721=1;
                		    }
                		    else if ( (LA721_19 == OPEN_CURLY_SYMBOL))
                		    {
                		        alt721=1;
                		    }
                		    else if ( (LA721_19 == TIME_SYMBOL))
                		    {
                		        alt721=1;
                		    }
                		    else if ( (LA721_19 == TIMESTAMP_SYMBOL))
                		    {
                		        alt721=1;
                		    }
                		    else if ( (LA721_19 == DAY_SYMBOL || LA721_19 == CHAR_SYMBOL || LA721_19 == CURRENT_USER_SYMBOL || LA721_19 == FALSE_SYMBOL || ((LA721_19 >= NULL2_SYMBOL) && (LA721_19 <= NULL_SYMBOL)) || LA721_19 == TRUE_SYMBOL || LA721_19 == BIN_NUMBER || LA721_19 == HEX_NUMBER))
                		    {
                		        alt721=1;
                		    }
                		    else if ( (LA721_19 == HOUR_SYMBOL))
                		    {
                		        alt721=1;
                		    }
                		    else if ( (LA721_19 == MINUTE_SYMBOL || LA721_19 == INSERT_SYMBOL || LA721_19 == LEFT_SYMBOL))
                		    {
                		        alt721=1;
                		    }
                		    else if ( (LA721_19 == MONTH_SYMBOL))
                		    {
                		        alt721=1;
                		    }
                		    else if ( (LA721_19 == SECOND_SYMBOL || LA721_19 == RIGHT_SYMBOL))
                		    {
                		        alt721=1;
                		    }
                		    else if ( (LA721_19 == USER_SYMBOL || LA721_19 == TRIM_SYMBOL))
                		    {
                		        alt721=1;
                		    }
                		    else if ( (LA721_19 == YEAR_SYMBOL || LA721_19 == VALUES_SYMBOL))
                		    {
                		        alt721=1;
                		    }
                		    else if ( (LA721_19 == ADDDATE_SYMBOL || LA721_19 == SUBDATE_SYMBOL))
                		    {
                		        alt721=1;
                		    }
                		    else if ( (LA721_19 == GET_FORMAT_SYMBOL || LA721_19 == CURDATE_SYMBOL || LA721_19 == CURTIME_SYMBOL || LA721_19 == DATE_ADD_SYMBOL || LA721_19 == DATE_SUB_SYMBOL || LA721_19 == EXTRACT_SYMBOL))
                		    {
                		        alt721=1;
                		    }
                		    else if ( (((LA721_19 >= TIMESTAMP_ADD_SYMBOL) && (LA721_19 <= TIMESTAMP_DIFF_SYMBOL)) || LA721_19 == NOW_SYMBOL || LA721_19 == POSITION_SYMBOL || LA721_19 == SUBSTRING_SYMBOL || LA721_19 == SYSDATE_SYMBOL))
                		    {
                		        alt721=1;
                		    }
                		    else if ( (LA721_19 == COALESCE_SYMBOL || ((LA721_19 >= UTC_DATE_SYMBOL) && (LA721_19 <= UTC_TIME_SYMBOL))))
                		    {
                		        alt721=1;
                		    }
                		    else if ( (LA721_19 == CHARSET_SYMBOL))
                		    {
                		        alt721=1;
                		    }
                		    else if ( (LA721_19 == FORMAT_SYMBOL))
                		    {
                		        alt721=1;
                		    }
                		    else if ( (LA721_19 == COLLATION_SYMBOL))
                		    {
                		        alt721=1;
                		    }
                		    else if ( (LA721_19 == MICROSECOND_SYMBOL || LA721_19 == DATABASE_SYMBOL || LA721_19 == IF_SYMBOL))
                		    {
                		        alt721=1;
                		    }
                		    else if ( (LA721_19 == TRUNCATE_SYMBOL))
                		    {
                		        alt721=1;
                		    }
                		    else if ( (LA721_19 == OLD_PASSWORD_SYMBOL || LA721_19 == MOD_SYMBOL))
                		    {
                		        alt721=1;
                		    }
                		    else if ( (LA721_19 == PASSWORD_SYMBOL))
                		    {
                		        alt721=1;
                		    }
                		    else if ( (LA721_19 == QUARTER_SYMBOL))
                		    {
                		        alt721=1;
                		    }
                		    else if ( (LA721_19 == REVERSE_SYMBOL || ((LA721_19 >= REPEAT_SYMBOL) && (LA721_19 <= REPLACE_SYMBOL))))
                		    {
                		        alt721=1;
                		    }
                		    else if ( (LA721_19 == ROW_COUNT_SYMBOL))
                		    {
                		        alt721=1;
                		    }
                		    else if ( (LA721_19 == WEEK_SYMBOL))
                		    {
                		        alt721=1;
                		    }
                		    else if ( (LA721_19 == CONTAINS_SYMBOL))
                		    {
                		        alt721=1;
                		    }
                		    else if ( (LA721_19 == WEIGHT_STRING_SYMBOL))
                		    {
                		        alt721=1;
                		    }
                		    else if ( (LA721_19 == GEOMETRYCOLLECTION_SYMBOL))
                		    {
                		        alt721=1;
                		    }
                		    else if ( (LA721_19 == LINESTRING_SYMBOL))
                		    {
                		        alt721=1;
                		    }
                		    else if ( (LA721_19 == MULTILINESTRING_SYMBOL))
                		    {
                		        alt721=1;
                		    }
                		    else if ( (LA721_19 == MULTIPOINT_SYMBOL))
                		    {
                		        alt721=1;
                		    }
                		    else if ( (LA721_19 == MULTIPOLYGON_SYMBOL))
                		    {
                		        alt721=1;
                		    }
                		    else if ( (LA721_19 == POINT_SYMBOL))
                		    {
                		        alt721=1;
                		    }
                		    else if ( (LA721_19 == POLYGON_SYMBOL))
                		    {
                		        alt721=1;
                		    }
                		    else if ( (LA721_19 == AVG_SYMBOL))
                		    {
                		        alt721=1;
                		    }
                		    else if ( (LA721_19 == ACCOUNT_SYMBOL || ((LA721_19 >= ALWAYS_SYMBOL) && (LA721_19 <= CACHE_SYMBOL)) || ((LA721_19 >= CHECKSUM_SYMBOL) && (LA721_19 <= COMMIT_SYMBOL)) || ((LA721_19 >= DEALLOCATE_SYMBOL) && (LA721_19 <= FOLLOWS_SYMBOL)) || ((LA721_19 >= GROUP_REPLICATION_SYMBOL) && (LA721_19 <= STOP_SYMBOL)) || ((LA721_19 >= UNICODE_SYMBOL) && (LA721_19 <= XA_SYMBOL)) || LA721_19 == SHUTDOWN_SYMBOL))
                		    {
                		        alt721=1;
                		    }
                		    else if ( (LA721_19 == ROW_SYMBOL || LA721_19 == COUNT_SYMBOL || LA721_19 == EXISTS_SYMBOL || LA721_19 == GROUP_CONCAT_SYMBOL || LA721_19 == MAX_SYMBOL || LA721_19 == MIN_SYMBOL || LA721_19 == PARAM_MARKER || LA721_19 == STDDEV_SAMP_SYMBOL || LA721_19 == STD_SYMBOL || LA721_19 == SUM_SYMBOL || LA721_19 == VARIANCE_SYMBOL || LA721_19 == VAR_SAMP_SYMBOL || ((LA721_19 >= AT_AT_SIGN_SYMBOL) && (LA721_19 <= AT_TEXT_SUFFIX)) || ((LA721_19 >= BIT_AND_SYMBOL) && (LA721_19 <= BIT_XOR_SYMBOL))))
                		    {
                		        alt721=1;
                		    }
                		    else if ( (LA721_19 == ACTION_SYMBOL || ((LA721_19 >= AFTER_SYMBOL) && (LA721_19 <= AVG_ROW_LENGTH_SYMBOL)) || ((LA721_19 >= BINLOG_SYMBOL) && (LA721_19 <= CLASS_ORIGIN_SYMBOL)) || LA721_19 == CODE_SYMBOL || ((LA721_19 >= COLUMN_NAME_SYMBOL) && (LA721_19 <= DATETIME_SYMBOL)) || ((LA721_19 >= DEFAULT_AUTH_SYMBOL) && (LA721_19 <= GEOMETRY_SYMBOL)) || ((LA721_19 >= GRANTS_SYMBOL) && (LA721_19 <= HOSTS_SYMBOL)) || ((LA721_19 >= IDENTIFIED_SYMBOL) && (LA721_19 <= LEVEL_SYMBOL)) || ((LA721_19 >= LIST_SYMBOL) && (LA721_19 <= MESSAGE_TEXT_SYMBOL)) || LA721_19 == MIGRATE_SYMBOL || ((LA721_19 >= MIN_ROWS_SYMBOL) && (LA721_19 <= MODE_SYMBOL)) || ((LA721_19 >= MUTEX_SYMBOL) && (LA721_19 <= OFFSET_SYMBOL)) || ((LA721_19 >= ONE_SHOT_SYMBOL) && (LA721_19 <= PARTITIONS_SYMBOL)) || ((LA721_19 >= PHASE_SYMBOL) && (LA721_19 <= PLUGINS_SYMBOL)) || ((LA721_19 >= PRESERVE_SYMBOL) && (LA721_19 <= PROXY_SYMBOL)) || ((LA721_19 >= QUERY_SYMBOL) && (LA721_19 <= RETURNS_SYMBOL)) || ((LA721_19 >= ROLLUP_SYMBOL) && (LA721_19 <= ROWS_SYMBOL)) || LA721_19 == ROW_FORMAT_SYMBOL || ((LA721_19 >= RTREE_SYMBOL) && (LA721_19 <= SCHEMA_NAME_SYMBOL)) || ((LA721_19 >= SERIAL_SYMBOL) && (LA721_19 <= SHARE_SYMBOL)) || ((LA721_19 >= SLOW_SYMBOL) && (LA721_19 <= SUBCLASS_ORIGIN_SYMBOL)) || ((LA721_19 >= SUBJECT_SYMBOL) && (LA721_19 <= TRIGGERS_SYMBOL)) || ((LA721_19 >= TYPES_SYMBOL) && (LA721_19 <= USER_RESOURCES_SYMBOL)) || ((LA721_19 >= USE_FRM_SYMBOL) && (LA721_19 <= WAIT_SYMBOL)) || LA721_19 == WORK_SYMBOL || ((LA721_19 >= X509_SYMBOL) && (LA721_19 <= XML_SYMBOL)) || LA721_19 == BINARY_SYMBOL || ((LA721_19 >= CASE_SYMBOL) && (LA721_19 <= CAST_SYMBOL)) || LA721_19 == CONVERT_SYMBOL || LA721_19 == MATCH_SYMBOL))
                		    {
                		        alt721=1;
                		    }

                		}
                	}
                    break;

                }

                switch (alt721)
                {
            	case 1:
            	    // MySQL.g:2667:54: COMMA_SYMBOL expression ( direction )?
            	    {
            	        COMMA_SYMBOL2578 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_expression_list_with_direction13592);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleexpression_list_with_directionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL2578_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2578));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2578_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_expression_in_expression_list_with_direction13594);
            	        expression2579=expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleexpression_list_with_directionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2579.tree);

            	        // MySQL.g:2667:78: ( direction )?
            	        {
            	            int alt720=2;
            	            switch ( LA(1) )
            	            {
            	                case ASC_SYMBOL:
            	                case DESC_SYMBOL:
            	                	{
            	                		alt720=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt720)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2667:78: direction
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_direction_in_expression_list_with_direction13596);
            	        	        direction2580=direction(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleexpression_list_with_directionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, direction2580.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

            	default:
            	    goto loop721;	/* break out of the loop */
            	    break;
                }
            }
            loop721: ; /* 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:2670: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_SYMBOL2581;
    pANTLR3_COMMON_TOKEN    CHANNEL_SYMBOL2582;
    MySQLParser_text_string_no_linebreak_return text_string_no_linebreak2583;
    #undef	RETURN_TYPE_text_string_no_linebreak2583
    #define	RETURN_TYPE_text_string_no_linebreak2583 MySQLParser_text_string_no_linebreak_return

    pANTLR3_BASE_TREE FOR_SYMBOL2581_tree;
    pANTLR3_BASE_TREE CHANNEL_SYMBOL2582_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    FOR_SYMBOL2581       = NULL;
    CHANNEL_SYMBOL2582       = NULL;
    text_string_no_linebreak2583.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    FOR_SYMBOL2581_tree   = NULL;
    CHANNEL_SYMBOL2582_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2670:8: ({...}? => FOR_SYMBOL CHANNEL_SYMBOL text_string_no_linebreak )
        // MySQL.g:2671: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_SYMBOL2581 = (pANTLR3_COMMON_TOKEN) MATCHT(FOR_SYMBOL, &FOLLOW_FOR_SYMBOL_in_channel13612);
            if  (HASEXCEPTION())
            {
                goto rulechannelEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            FOR_SYMBOL2581_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOR_SYMBOL2581));
            ADAPTOR->addChild(ADAPTOR, root_0, FOR_SYMBOL2581_tree);
            }

            CHANNEL_SYMBOL2582 = (pANTLR3_COMMON_TOKEN) MATCHT(CHANNEL_SYMBOL, &FOLLOW_CHANNEL_SYMBOL_in_channel13614);
            if  (HASEXCEPTION())
            {
                goto rulechannelEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CHANNEL_SYMBOL2582_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHANNEL_SYMBOL2582));
            ADAPTOR->addChild(ADAPTOR, root_0, CHANNEL_SYMBOL2582_tree);
            }

            FOLLOWPUSH(FOLLOW_text_string_no_linebreak_in_channel13616);
            text_string_no_linebreak2583=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_linebreak2583.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:2678:1: compound_statement options {k=3; } : ( statement | return_statement | if_statement | case_statement | labeled_block | unlabeled_block | labeled_control | unlabeled_control | leave_statement | iterate_statement | cursor_open | cursor_fetch | cursor_close );
 */
static MySQLParser_compound_statement_return
compound_statement(pMySQLParser ctx)
{
    MySQLParser_compound_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_statement_return statement2584;
    #undef	RETURN_TYPE_statement2584
    #define	RETURN_TYPE_statement2584 MySQLParser_statement_return

    MySQLParser_return_statement_return return_statement2585;
    #undef	RETURN_TYPE_return_statement2585
    #define	RETURN_TYPE_return_statement2585 MySQLParser_return_statement_return

    MySQLParser_if_statement_return if_statement2586;
    #undef	RETURN_TYPE_if_statement2586
    #define	RETURN_TYPE_if_statement2586 MySQLParser_if_statement_return

    MySQLParser_case_statement_return case_statement2587;
    #undef	RETURN_TYPE_case_statement2587
    #define	RETURN_TYPE_case_statement2587 MySQLParser_case_statement_return

    MySQLParser_labeled_block_return labeled_block2588;
    #undef	RETURN_TYPE_labeled_block2588
    #define	RETURN_TYPE_labeled_block2588 MySQLParser_labeled_block_return

    MySQLParser_unlabeled_block_return unlabeled_block2589;
    #undef	RETURN_TYPE_unlabeled_block2589
    #define	RETURN_TYPE_unlabeled_block2589 MySQLParser_unlabeled_block_return

    MySQLParser_labeled_control_return labeled_control2590;
    #undef	RETURN_TYPE_labeled_control2590
    #define	RETURN_TYPE_labeled_control2590 MySQLParser_labeled_control_return

    MySQLParser_unlabeled_control_return unlabeled_control2591;
    #undef	RETURN_TYPE_unlabeled_control2591
    #define	RETURN_TYPE_unlabeled_control2591 MySQLParser_unlabeled_control_return

    MySQLParser_leave_statement_return leave_statement2592;
    #undef	RETURN_TYPE_leave_statement2592
    #define	RETURN_TYPE_leave_statement2592 MySQLParser_leave_statement_return

    MySQLParser_iterate_statement_return iterate_statement2593;
    #undef	RETURN_TYPE_iterate_statement2593
    #define	RETURN_TYPE_iterate_statement2593 MySQLParser_iterate_statement_return

    MySQLParser_cursor_open_return cursor_open2594;
    #undef	RETURN_TYPE_cursor_open2594
    #define	RETURN_TYPE_cursor_open2594 MySQLParser_cursor_open_return

    MySQLParser_cursor_fetch_return cursor_fetch2595;
    #undef	RETURN_TYPE_cursor_fetch2595
    #define	RETURN_TYPE_cursor_fetch2595 MySQLParser_cursor_fetch_return

    MySQLParser_cursor_close_return cursor_close2596;
    #undef	RETURN_TYPE_cursor_close2596
    #define	RETURN_TYPE_cursor_close2596 MySQLParser_cursor_close_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    statement2584.tree = NULL;

    return_statement2585.tree = NULL;

    if_statement2586.tree = NULL;

    case_statement2587.tree = NULL;

    labeled_block2588.tree = NULL;

    unlabeled_block2589.tree = NULL;

    labeled_control2590.tree = NULL;

    unlabeled_control2591.tree = NULL;

    leave_statement2592.tree = NULL;

    iterate_statement2593.tree = NULL;

    cursor_open2594.tree = NULL;

    cursor_fetch2595.tree = NULL;

    cursor_close2596.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2678:38: ( statement | return_statement | if_statement | case_statement | labeled_block | unlabeled_block | labeled_control | unlabeled_control | leave_statement | iterate_statement | cursor_open | cursor_fetch | cursor_close )

            ANTLR3_UINT32 alt722;

            alt722=13;

            {
                int LA722_0 = LA(1);
                if ( (LA722_0 == BACKUP_SYMBOL || LA722_0 == CACHE_SYMBOL || LA722_0 == CHECKSUM_SYMBOL || LA722_0 == COMMIT_SYMBOL || ((LA722_0 >= DEALLOCATE_SYMBOL) && (LA722_0 <= DO_SYMBOL)) || ((LA722_0 >= EXECUTE_SYMBOL) && (LA722_0 <= FLUSH_SYMBOL)) || ((LA722_0 >= HANDLER_SYMBOL) && (LA722_0 <= HELP_SYMBOL)) || LA722_0 == INSTALL_SYMBOL || LA722_0 == PARTITION_SYMBOL || LA722_0 == PREPARE_SYMBOL || ((LA722_0 >= REPAIR_SYMBOL) && (LA722_0 <= SAVEPOINT_SYMBOL)) || ((LA722_0 >= START_SYMBOL) && (LA722_0 <= TRUNCATE_SYMBOL)) || LA722_0 == UNINSTALL_SYMBOL || LA722_0 == XA_SYMBOL || LA722_0 == SHUTDOWN_SYMBOL || LA722_0 == ALTER_SYMBOL || LA722_0 == CALL_SYMBOL || LA722_0 == CHANGE_SYMBOL || LA722_0 == CHECK_SYMBOL || LA722_0 == CREATE_SYMBOL || ((LA722_0 >= DELETE_SYMBOL) && (LA722_0 <= DESC_SYMBOL)) || LA722_0 == DROP_SYMBOL || ((LA722_0 >= GET_SYMBOL) && (LA722_0 <= GRANT_SYMBOL)) || LA722_0 == INSERT_SYMBOL || LA722_0 == KILL_SYMBOL || LA722_0 == LOAD_SYMBOL || LA722_0 == LOCK_SYMBOL || LA722_0 == OPEN_PAR_SYMBOL || LA722_0 == OPTIMIZE_SYMBOL || LA722_0 == PURGE_SYMBOL || ((LA722_0 >= RELEASE_SYMBOL) && (LA722_0 <= RENAME_SYMBOL)) || LA722_0 == REPLACE_SYMBOL || LA722_0 == RESIGNAL_SYMBOL || LA722_0 == REVOKE_SYMBOL || LA722_0 == SELECT_SYMBOL || LA722_0 == SET_SYMBOL || ((LA722_0 >= SHOW_SYMBOL) && (LA722_0 <= SIGNAL_SYMBOL)) || LA722_0 == UNLOCK_SYMBOL || LA722_0 == UPDATE_SYMBOL || LA722_0 == USE_SYMBOL))
                {
                    alt722=1;
                }
                else if ( (LA722_0 == ANALYZE_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case LOCAL_SYMBOL:
                    case NO_WRITE_TO_BINLOG_SYMBOL:
                    case TABLE_SYMBOL:
                    	{
                    		alt722=1;
                    	}
                        break;
                    case COLON_SYMBOL:
                    	{
                    		switch ( LA(3) )
                    		{
                    		case BEGIN_SYMBOL:
                    			{
                    				alt722=5;
                    			}
                    		    break;
                    		case LOOP_SYMBOL:
                    		case REPEAT_SYMBOL:
                    		case WHILE_SYMBOL:
                    			{
                    				alt722=7;
                    			}
                    		    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        = 76;


                    		    goto rulecompound_statementEx;

                    		}

                    	}
                        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        = 34;


                        goto rulecompound_statementEx;

                    }

                }
                else if ( (LA722_0 == BINLOG_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case NCHAR_TEXT:
                    case SINGLE_QUOTED_TEXT:
                    case DOUBLE_QUOTED_TEXT:
                    case UNDERSCORE_CHARSET:
                    	{
                    		alt722=1;
                    	}
                        break;
                    case COLON_SYMBOL:
                    	{
                    		switch ( LA(3) )
                    		{
                    		case BEGIN_SYMBOL:
                    			{
                    				alt722=5;
                    			}
                    		    break;
                    		case LOOP_SYMBOL:
                    		case REPEAT_SYMBOL:
                    		case WHILE_SYMBOL:
                    			{
                    				alt722=7;
                    			}
                    		    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        = 81;


                    		    goto rulecompound_statementEx;

                    		}

                    	}
                        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        = 44;


                        goto rulecompound_statementEx;

                    }

                }
                else if ( (LA722_0 == RETURN_SYMBOL))
                {
                    alt722=2;
                }
                else if ( (LA722_0 == IF_SYMBOL))
                {
                    alt722=3;
                }
                else if ( (LA722_0 == CASE_SYMBOL))
                {
                    alt722=4;
                }
                else if ( (LA722_0 == IDENTIFIER))
                {
                    switch ( LA(2) )
                    {
                    case COLON_SYMBOL:
                    	{
                    		switch ( LA(3) )
                    		{
                    		case BEGIN_SYMBOL:
                    			{
                    				alt722=5;
                    			}
                    		    break;
                    		case LOOP_SYMBOL:
                    		case REPEAT_SYMBOL:
                    		case WHILE_SYMBOL:
                    			{
                    				alt722=7;
                    			}
                    		    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        = 82;


                    		    goto rulecompound_statementEx;

                    		}

                    	}
                        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        = 60;


                        goto rulecompound_statementEx;

                    }

                }
                else if ( (LA722_0 == BACK_TICK_QUOTED_ID))
                {
                    switch ( LA(2) )
                    {
                    case COLON_SYMBOL:
                    	{
                    		switch ( LA(3) )
                    		{
                    		case BEGIN_SYMBOL:
                    			{
                    				alt722=5;
                    			}
                    		    break;
                    		case LOOP_SYMBOL:
                    		case REPEAT_SYMBOL:
                    		case WHILE_SYMBOL:
                    			{
                    				alt722=7;
                    			}
                    		    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        = 83;


                    		    goto rulecompound_statementEx;

                    		}

                    	}
                        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        = 61;


                        goto rulecompound_statementEx;

                    }

                }
                else if ( (LA722_0 == DOUBLE_QUOTED_TEXT))
                {
                    switch ( LA(2) )
                    {
                    case COLON_SYMBOL:
                    	{
                    		switch ( LA(3) )
                    		{
                    		case BEGIN_SYMBOL:
                    			{
                    				alt722=5;
                    			}
                    		    break;
                    		case LOOP_SYMBOL:
                    		case REPEAT_SYMBOL:
                    		case WHILE_SYMBOL:
                    			{
                    				alt722=7;
                    			}
                    		    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        = 84;


                    		    goto rulecompound_statementEx;

                    		}

                    	}
                        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        = 62;


                        goto rulecompound_statementEx;

                    }

                }
                else if ( (((LA722_0 >= ACTION_SYMBOL) && (LA722_0 <= ALGORITHM_SYMBOL)) || ((LA722_0 >= ANY_SYMBOL) && (LA722_0 <= AVG_SYMBOL)) || ((LA722_0 >= BIT_SYMBOL) && (LA722_0 <= SHARE_SYMBOL)) || ((LA722_0 >= SLOW_SYMBOL) && (LA722_0 <= YEAR_SYMBOL))))
                {
                    switch ( LA(2) )
                    {
                    case COLON_SYMBOL:
                    	{
                    		switch ( LA(3) )
                    		{
                    		case BEGIN_SYMBOL:
                    			{
                    				alt722=5;
                    			}
                    		    break;
                    		case LOOP_SYMBOL:
                    		case REPEAT_SYMBOL:
                    		case WHILE_SYMBOL:
                    			{
                    				alt722=7;
                    			}
                    		    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        = 85;


                    		    goto rulecompound_statementEx;

                    		}

                    	}
                        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        = 63;


                        goto rulecompound_statementEx;

                    }

                }
                else if ( (LA722_0 == BEGIN_SYMBOL))
                {
                    alt722=6;
                }
                else if ( (LA722_0 == LOOP_SYMBOL || LA722_0 == REPEAT_SYMBOL || LA722_0 == WHILE_SYMBOL))
                {
                    alt722=8;
                }
                else if ( (LA722_0 == LEAVE_SYMBOL))
                {
                    alt722=9;
                }
                else if ( (LA722_0 == ITERATE_SYMBOL))
                {
                    alt722=10;
                }
                else if ( (LA722_0 == OPEN_SYMBOL))
                {
                    alt722=11;
                }
                else if ( (LA722_0 == FETCH_SYMBOL))
                {
                    alt722=12;
                }
                else if ( (LA722_0 == CLOSE_SYMBOL))
                {
                    alt722=13;
                }
                else
                {
                    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:2679:2: statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_statement_in_compound_statement13640);
        	        statement2584=statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecompound_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, statement2584.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2680:4: return_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_return_statement_in_compound_statement13645);
        	        return_statement2585=return_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecompound_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, return_statement2585.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2681:4: if_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_if_statement_in_compound_statement13650);
        	        if_statement2586=if_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecompound_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, if_statement2586.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:2682:4: case_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_case_statement_in_compound_statement13655);
        	        case_statement2587=case_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecompound_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, case_statement2587.tree);

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:2683:4: labeled_block
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_labeled_block_in_compound_statement13660);
        	        labeled_block2588=labeled_block(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecompound_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, labeled_block2588.tree);

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:2684:4: unlabeled_block
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_unlabeled_block_in_compound_statement13665);
        	        unlabeled_block2589=unlabeled_block(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecompound_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, unlabeled_block2589.tree);

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:2685:4: labeled_control
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_labeled_control_in_compound_statement13670);
        	        labeled_control2590=labeled_control(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecompound_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, labeled_control2590.tree);

        	    }
        	    break;
        	case 8:
        	    // MySQL.g:2686:4: unlabeled_control
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_unlabeled_control_in_compound_statement13675);
        	        unlabeled_control2591=unlabeled_control(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecompound_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, unlabeled_control2591.tree);

        	    }
        	    break;
        	case 9:
        	    // MySQL.g:2687:4: leave_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_leave_statement_in_compound_statement13680);
        	        leave_statement2592=leave_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecompound_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, leave_statement2592.tree);

        	    }
        	    break;
        	case 10:
        	    // MySQL.g:2688:4: iterate_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_iterate_statement_in_compound_statement13685);
        	        iterate_statement2593=iterate_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecompound_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, iterate_statement2593.tree);

        	    }
        	    break;
        	case 11:
        	    // MySQL.g:2690:4: cursor_open
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_cursor_open_in_compound_statement13691);
        	        cursor_open2594=cursor_open(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecompound_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, cursor_open2594.tree);

        	    }
        	    break;
        	case 12:
        	    // MySQL.g:2691:4: cursor_fetch
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_cursor_fetch_in_compound_statement13696);
        	        cursor_fetch2595=cursor_fetch(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecompound_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, cursor_fetch2595.tree);

        	    }
        	    break;
        	case 13:
        	    // MySQL.g:2692:4: cursor_close
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_cursor_close_in_compound_statement13701);
        	        cursor_close2596=cursor_close(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecompound_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, cursor_close2596.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 return_statement
 * MySQL.g:2695: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_SYMBOL2597;
    MySQLParser_expression_return expression2598;
    #undef	RETURN_TYPE_expression2598
    #define	RETURN_TYPE_expression2598 MySQLParser_expression_return

    pANTLR3_BASE_TREE RETURN_SYMBOL2597_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    RETURN_SYMBOL2597       = NULL;
    expression2598.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    RETURN_SYMBOL2597_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2695:17: ( RETURN_SYMBOL expression )
        // MySQL.g:2696:2: RETURN_SYMBOL expression
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            RETURN_SYMBOL2597 = (pANTLR3_COMMON_TOKEN) MATCHT(RETURN_SYMBOL, &FOLLOW_RETURN_SYMBOL_in_return_statement13710);
            if  (HASEXCEPTION())
            {
                goto rulereturn_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            RETURN_SYMBOL2597_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RETURN_SYMBOL2597));
            ADAPTOR->addChild(ADAPTOR, root_0, RETURN_SYMBOL2597_tree);
            }

            FOLLOWPUSH(FOLLOW_expression_in_return_statement13712);
            expression2598=expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulereturn_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2598.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 if_statement
 * MySQL.g:2699: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_SYMBOL2599;
    pANTLR3_COMMON_TOKEN    END_SYMBOL2601;
    pANTLR3_COMMON_TOKEN    IF_SYMBOL2602;
    MySQLParser_if_body_return if_body2600;
    #undef	RETURN_TYPE_if_body2600
    #define	RETURN_TYPE_if_body2600 MySQLParser_if_body_return

    pANTLR3_BASE_TREE IF_SYMBOL2599_tree;
    pANTLR3_BASE_TREE END_SYMBOL2601_tree;
    pANTLR3_BASE_TREE IF_SYMBOL2602_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    IF_SYMBOL2599       = NULL;
    END_SYMBOL2601       = NULL;
    IF_SYMBOL2602       = NULL;
    if_body2600.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    IF_SYMBOL2599_tree   = NULL;
    END_SYMBOL2601_tree   = NULL;
    IF_SYMBOL2602_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2699:13: ( IF_SYMBOL ^ if_body END_SYMBOL IF_SYMBOL )
        // MySQL.g:2700:2: IF_SYMBOL ^ if_body END_SYMBOL IF_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            IF_SYMBOL2599 = (pANTLR3_COMMON_TOKEN) MATCHT(IF_SYMBOL, &FOLLOW_IF_SYMBOL_in_if_statement13721);
            if  (HASEXCEPTION())
            {
                goto ruleif_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            IF_SYMBOL2599_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IF_SYMBOL2599))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, IF_SYMBOL2599_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_if_body_in_if_statement13724);
            if_body2600=if_body(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleif_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, if_body2600.tree);

            END_SYMBOL2601 = (pANTLR3_COMMON_TOKEN) MATCHT(END_SYMBOL, &FOLLOW_END_SYMBOL_in_if_statement13726);
            if  (HASEXCEPTION())
            {
                goto ruleif_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            END_SYMBOL2601_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, END_SYMBOL2601));
            ADAPTOR->addChild(ADAPTOR, root_0, END_SYMBOL2601_tree);
            }

            IF_SYMBOL2602 = (pANTLR3_COMMON_TOKEN) MATCHT(IF_SYMBOL, &FOLLOW_IF_SYMBOL_in_if_statement13728);
            if  (HASEXCEPTION())
            {
                goto ruleif_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            IF_SYMBOL2602_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IF_SYMBOL2602));
            ADAPTOR->addChild(ADAPTOR, root_0, IF_SYMBOL2602_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:2703: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_SYMBOL2605;
    pANTLR3_COMMON_TOKEN    ELSE_SYMBOL2607;
    MySQLParser_expression_return expression2603;
    #undef	RETURN_TYPE_expression2603
    #define	RETURN_TYPE_expression2603 MySQLParser_expression_return

    MySQLParser_then_statement_return then_statement2604;
    #undef	RETURN_TYPE_then_statement2604
    #define	RETURN_TYPE_then_statement2604 MySQLParser_then_statement_return

    MySQLParser_if_body_return if_body2606;
    #undef	RETURN_TYPE_if_body2606
    #define	RETURN_TYPE_if_body2606 MySQLParser_if_body_return

    MySQLParser_compound_statement_list_return compound_statement_list2608;
    #undef	RETURN_TYPE_compound_statement_list2608
    #define	RETURN_TYPE_compound_statement_list2608 MySQLParser_compound_statement_list_return

    pANTLR3_BASE_TREE ELSEIF_SYMBOL2605_tree;
    pANTLR3_BASE_TREE ELSE_SYMBOL2607_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ELSEIF_SYMBOL2605       = NULL;
    ELSE_SYMBOL2607       = NULL;
    expression2603.tree = NULL;

    then_statement2604.tree = NULL;

    if_body2606.tree = NULL;

    compound_statement_list2608.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ELSEIF_SYMBOL2605_tree   = NULL;
    ELSE_SYMBOL2607_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2703:8: ( expression then_statement ( ELSEIF_SYMBOL if_body | ELSE_SYMBOL compound_statement_list )? )
        // MySQL.g:2704: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_body13737);
            expression2603=expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleif_bodyEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2603.tree);

            FOLLOWPUSH(FOLLOW_then_statement_in_if_body13739);
            then_statement2604=then_statement(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleif_bodyEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, then_statement2604.tree);

            // MySQL.g:2704:28: ( ELSEIF_SYMBOL if_body | ELSE_SYMBOL compound_statement_list )?
            {
                int alt723=3;
                switch ( LA(1) )
                {
                    case ELSEIF_SYMBOL:
                    	{
                    		alt723=1;
                    	}
                        break;
                    case ELSE_SYMBOL:
                    	{
                    		alt723=2;
                    	}
                        break;
                }

                switch (alt723)
                {
            	case 1:
            	    // MySQL.g:2704:29: ELSEIF_SYMBOL if_body
            	    {
            	        ELSEIF_SYMBOL2605 = (pANTLR3_COMMON_TOKEN) MATCHT(ELSEIF_SYMBOL, &FOLLOW_ELSEIF_SYMBOL_in_if_body13742);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleif_bodyEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ELSEIF_SYMBOL2605_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ELSEIF_SYMBOL2605));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ELSEIF_SYMBOL2605_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_if_body_in_if_body13744);
            	        if_body2606=if_body(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleif_bodyEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, if_body2606.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2704:53: ELSE_SYMBOL compound_statement_list
            	    {
            	        ELSE_SYMBOL2607 = (pANTLR3_COMMON_TOKEN) MATCHT(ELSE_SYMBOL, &FOLLOW_ELSE_SYMBOL_in_if_body13748);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleif_bodyEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ELSE_SYMBOL2607_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ELSE_SYMBOL2607));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ELSE_SYMBOL2607_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_compound_statement_list_in_if_body13750);
            	        compound_statement_list2608=compound_statement_list(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleif_bodyEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, compound_statement_list2608.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 then_statement
 * MySQL.g:2707: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_SYMBOL2609;
    MySQLParser_compound_statement_list_return compound_statement_list2610;
    #undef	RETURN_TYPE_compound_statement_list2610
    #define	RETURN_TYPE_compound_statement_list2610 MySQLParser_compound_statement_list_return

    pANTLR3_BASE_TREE THEN_SYMBOL2609_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    THEN_SYMBOL2609       = NULL;
    compound_statement_list2610.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    THEN_SYMBOL2609_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2707:15: ( THEN_SYMBOL ^ compound_statement_list )
        // MySQL.g:2708:2: THEN_SYMBOL ^ compound_statement_list
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            THEN_SYMBOL2609 = (pANTLR3_COMMON_TOKEN) MATCHT(THEN_SYMBOL, &FOLLOW_THEN_SYMBOL_in_then_statement13761);
            if  (HASEXCEPTION())
            {
                goto rulethen_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            THEN_SYMBOL2609_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, THEN_SYMBOL2609))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, THEN_SYMBOL2609_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_compound_statement_list_in_then_statement13764);
            compound_statement_list2610=compound_statement_list(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulethen_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, compound_statement_list2610.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 compound_statement_list
 * MySQL.g:2711: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_SYMBOL2612;
    MySQLParser_compound_statement_return compound_statement2611;
    #undef	RETURN_TYPE_compound_statement2611
    #define	RETURN_TYPE_compound_statement2611 MySQLParser_compound_statement_return

    pANTLR3_BASE_TREE SEMICOLON_SYMBOL2612_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SEMICOLON_SYMBOL2612       = NULL;
    compound_statement2611.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SEMICOLON_SYMBOL2612_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2711:24: ( ( compound_statement SEMICOLON_SYMBOL )+ )
        // MySQL.g:2712:2: ( compound_statement SEMICOLON_SYMBOL )+
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:2712: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 == 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 == DROP_SYMBOL || LA724_0 == FETCH_SYMBOL || ((LA724_0 >= GET_SYMBOL) && (LA724_0 <= GRANT_SYMBOL)) || 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 || LA724_0 == BACK_TICK_QUOTED_ID || LA724_0 == DOUBLE_QUOTED_TEXT || LA724_0 == IDENTIFIER))
            	    {
            	        alt724=1;
            	    }

            	}
            	switch (alt724)
            	{
            	    case 1:
            	        // MySQL.g:2712:3: compound_statement SEMICOLON_SYMBOL
            	        {
            	            FOLLOWPUSH(FOLLOW_compound_statement_in_compound_statement_list13774);
            	            compound_statement2611=compound_statement(ctx);

            	            FOLLOWPOP();
            	            if  (HASEXCEPTION())
            	            {
            	                goto rulecompound_statement_listEx;
            	            }
            	            if (HASFAILED())
            	            {
            	                return retval;
            	            }

            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, compound_statement2611.tree);

            	            SEMICOLON_SYMBOL2612 = (pANTLR3_COMMON_TOKEN) MATCHT(SEMICOLON_SYMBOL, &FOLLOW_SEMICOLON_SYMBOL_in_compound_statement_list13776);
            	            if  (HASEXCEPTION())
            	            {
            	                goto rulecompound_statement_listEx;
            	            }
            	            if (HASFAILED())
            	            {
            	                return retval;
            	            }

            	            if ( BACKTRACKING==0 ) {
            	            SEMICOLON_SYMBOL2612_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SEMICOLON_SYMBOL2612));
            	            ADAPTOR->addChild(ADAPTOR, root_0, SEMICOLON_SYMBOL2612_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 case_statement
 * MySQL.g:2716: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_SYMBOL2613;
    pANTLR3_COMMON_TOKEN    END_SYMBOL2618;
    pANTLR3_COMMON_TOKEN    CASE_SYMBOL2619;
    MySQLParser_expression_return expression2614;
    #undef	RETURN_TYPE_expression2614
    #define	RETURN_TYPE_expression2614 MySQLParser_expression_return

    MySQLParser_when_expression_return when_expression2615;
    #undef	RETURN_TYPE_when_expression2615
    #define	RETURN_TYPE_when_expression2615 MySQLParser_when_expression_return

    MySQLParser_then_statement_return then_statement2616;
    #undef	RETURN_TYPE_then_statement2616
    #define	RETURN_TYPE_then_statement2616 MySQLParser_then_statement_return

    MySQLParser_else_statement_return else_statement2617;
    #undef	RETURN_TYPE_else_statement2617
    #define	RETURN_TYPE_else_statement2617 MySQLParser_else_statement_return

    pANTLR3_BASE_TREE CASE_SYMBOL2613_tree;
    pANTLR3_BASE_TREE END_SYMBOL2618_tree;
    pANTLR3_BASE_TREE CASE_SYMBOL2619_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CASE_SYMBOL2613       = NULL;
    END_SYMBOL2618       = NULL;
    CASE_SYMBOL2619       = NULL;
    expression2614.tree = NULL;

    when_expression2615.tree = NULL;

    then_statement2616.tree = NULL;

    else_statement2617.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CASE_SYMBOL2613_tree   = NULL;
    END_SYMBOL2618_tree   = NULL;
    CASE_SYMBOL2619_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2716:15: ( CASE_SYMBOL ^ ( expression )? ( when_expression then_statement )+ ( else_statement )? END_SYMBOL CASE_SYMBOL )
        // MySQL.g:2717:2: CASE_SYMBOL ^ ( expression )? ( when_expression then_statement )+ ( else_statement )? END_SYMBOL CASE_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            CASE_SYMBOL2613 = (pANTLR3_COMMON_TOKEN) MATCHT(CASE_SYMBOL, &FOLLOW_CASE_SYMBOL_in_case_statement13788);
            if  (HASEXCEPTION())
            {
                goto rulecase_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CASE_SYMBOL2613_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CASE_SYMBOL2613))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, CASE_SYMBOL2613_tree, root_0));
            }

            // MySQL.g:2717:15: ( expression )?
            {
                int alt725=2;
                {
                    int LA725_0 = LA(1);
                    if ( (((LA725_0 >= ACCOUNT_SYMBOL) && (LA725_0 <= YEAR_SYMBOL)) || LA725_0 == BINARY_SYMBOL || ((LA725_0 >= CASE_SYMBOL) && (LA725_0 <= CAST_SYMBOL)) || LA725_0 == CHAR_SYMBOL || ((LA725_0 >= CONVERT_SYMBOL) && (LA725_0 <= COUNT_SYMBOL)) || LA725_0 == CURDATE_SYMBOL || LA725_0 == CURRENT_USER_SYMBOL || LA725_0 == CURTIME_SYMBOL || LA725_0 == DATABASE_SYMBOL || LA725_0 == DATE_ADD_SYMBOL || LA725_0 == DATE_SUB_SYMBOL || LA725_0 == EXISTS_SYMBOL || ((LA725_0 >= EXTRACT_SYMBOL) && (LA725_0 <= FALSE_SYMBOL)) || LA725_0 == GROUP_CONCAT_SYMBOL || LA725_0 == IF_SYMBOL || LA725_0 == INSERT_SYMBOL || LA725_0 == INTERVAL_SYMBOL || LA725_0 == LEFT_SYMBOL || LA725_0 == MATCH_SYMBOL || LA725_0 == MAX_SYMBOL || LA725_0 == MIN_SYMBOL || LA725_0 == MOD_SYMBOL || LA725_0 == NCHAR_TEXT || ((LA725_0 >= NOT2_SYMBOL) && (LA725_0 <= NOW_SYMBOL)) || ((LA725_0 >= NULL2_SYMBOL) && (LA725_0 <= NULL_SYMBOL)) || ((LA725_0 >= OPEN_CURLY_SYMBOL) && (LA725_0 <= OPEN_PAR_SYMBOL)) || ((LA725_0 >= PARAM_MARKER) && (LA725_0 <= POSITION_SYMBOL)) || ((LA725_0 >= REPEAT_SYMBOL) && (LA725_0 <= REPLACE_SYMBOL)) || LA725_0 == RIGHT_SYMBOL || LA725_0 == SINGLE_QUOTED_TEXT || LA725_0 == STDDEV_SAMP_SYMBOL || LA725_0 == STD_SYMBOL || LA725_0 == SUBSTRING_SYMBOL || ((LA725_0 >= SUM_SYMBOL) && (LA725_0 <= SYSDATE_SYMBOL)) || ((LA725_0 >= TRIM_SYMBOL) && (LA725_0 <= TRUE_SYMBOL)) || ((LA725_0 >= UTC_DATE_SYMBOL) && (LA725_0 <= UTC_TIME_SYMBOL)) || LA725_0 == VALUES_SYMBOL || LA725_0 == VARIANCE_SYMBOL || LA725_0 == VAR_SAMP_SYMBOL || ((LA725_0 >= AT_AT_SIGN_SYMBOL) && (LA725_0 <= AT_TEXT_SUFFIX)) || ((LA725_0 >= BACK_TICK_QUOTED_ID) && (LA725_0 <= BIN_NUMBER)) || LA725_0 == BITWISE_NOT_OPERATOR || ((LA725_0 >= BIT_AND_SYMBOL) && (LA725_0 <= BIT_XOR_SYMBOL)) || LA725_0 == DECIMAL_NUMBER || LA725_0 == DOT_SYMBOL || LA725_0 == DOUBLE_QUOTED_TEXT || LA725_0 == FLOAT_NUMBER || ((LA725_0 >= HEX_NUMBER) && (LA725_0 <= IDENTIFIER)) || LA725_0 == INT_NUMBER || LA725_0 == LOGICAL_NOT_OPERATOR || ((LA725_0 >= LONG_NUMBER) && (LA725_0 <= MINUS_OPERATOR)) || LA725_0 == PLUS_OPERATOR || ((LA725_0 >= ULONGLONG_NUMBER) && (LA725_0 <= UNDERSCORE_CHARSET))))
                    {
                        alt725=1;
                    }
                }
                switch (alt725)
                {
            	case 1:
            	    // MySQL.g:2717:15: expression
            	    {
            	        FOLLOWPUSH(FOLLOW_expression_in_case_statement13791);
            	        expression2614=expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecase_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2614.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:2717:27: ( when_expression then_statement )+
            {
                int cnt726=0;

                for (;;)
                {
                    int alt726=2;
            	switch ( LA(1) )
            	{
            	case WHEN_SYMBOL:
            		{
            			alt726=1;
            		}
            	    break;

            	}

            	switch (alt726)
            	{
            	    case 1:
            	        // MySQL.g:2717:28: when_expression then_statement
            	        {
            	            FOLLOWPUSH(FOLLOW_when_expression_in_case_statement13795);
            	            when_expression2615=when_expression(ctx);

            	            FOLLOWPOP();
            	            if  (HASEXCEPTION())
            	            {
            	                goto rulecase_statementEx;
            	            }
            	            if (HASFAILED())
            	            {
            	                return retval;
            	            }

            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, when_expression2615.tree);

            	            FOLLOWPUSH(FOLLOW_then_statement_in_case_statement13797);
            	            then_statement2616=then_statement(ctx);

            	            FOLLOWPOP();
            	            if  (HASEXCEPTION())
            	            {
            	                goto rulecase_statementEx;
            	            }
            	            if (HASFAILED())
            	            {
            	                return retval;
            	            }

            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, then_statement2616.tree);

            	        }
            	        break;

            	    default:

            		if ( cnt726 >= 1 )
            		{
            		    goto loop726;
            		}
            		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;
            	}
            	cnt726++;
                }
                loop726: ;	/* Jump to here if this rule does not match */
            }

            // MySQL.g:2717:61: ( else_statement )?
            {
                int alt727=2;
                switch ( LA(1) )
                {
                    case ELSE_SYMBOL:
                    	{
                    		alt727=1;
                    	}
                        break;
                }

                switch (alt727)
                {
            	case 1:
            	    // MySQL.g:2717:61: else_statement
            	    {
            	        FOLLOWPUSH(FOLLOW_else_statement_in_case_statement13801);
            	        else_statement2617=else_statement(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecase_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, else_statement2617.tree);

            	    }
            	    break;

                }
            }

            END_SYMBOL2618 = (pANTLR3_COMMON_TOKEN) MATCHT(END_SYMBOL, &FOLLOW_END_SYMBOL_in_case_statement13804);
            if  (HASEXCEPTION())
            {
                goto rulecase_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            END_SYMBOL2618_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, END_SYMBOL2618));
            ADAPTOR->addChild(ADAPTOR, root_0, END_SYMBOL2618_tree);
            }

            CASE_SYMBOL2619 = (pANTLR3_COMMON_TOKEN) MATCHT(CASE_SYMBOL, &FOLLOW_CASE_SYMBOL_in_case_statement13806);
            if  (HASEXCEPTION())
            {
                goto rulecase_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CASE_SYMBOL2619_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CASE_SYMBOL2619));
            ADAPTOR->addChild(ADAPTOR, root_0, CASE_SYMBOL2619_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 else_statement
 * MySQL.g:2720: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_SYMBOL2620;
    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

    pANTLR3_BASE_TREE ELSE_SYMBOL2620_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ELSE_SYMBOL2620       = NULL;
    compound_statement_list2621.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ELSE_SYMBOL2620_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2720:15: ( ELSE_SYMBOL ^ compound_statement_list )
        // MySQL.g:2721:2: ELSE_SYMBOL ^ compound_statement_list
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            ELSE_SYMBOL2620 = (pANTLR3_COMMON_TOKEN) MATCHT(ELSE_SYMBOL, &FOLLOW_ELSE_SYMBOL_in_else_statement13815);
            if  (HASEXCEPTION())
            {
                goto ruleelse_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ELSE_SYMBOL2620_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ELSE_SYMBOL2620))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, ELSE_SYMBOL2620_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_compound_statement_list_in_else_statement13818);
            compound_statement_list2621=compound_statement_list(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleelse_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, compound_statement_list2621.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 labeled_block
 * MySQL.g:2724:1: labeled_block : label begin_end_block ( label_identifier )? ;
 */
static MySQLParser_labeled_block_return
labeled_block(pMySQLParser ctx)
{
    MySQLParser_labeled_block_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_label_return label2622;
    #undef	RETURN_TYPE_label2622
    #define	RETURN_TYPE_label2622 MySQLParser_label_return

    MySQLParser_begin_end_block_return begin_end_block2623;
    #undef	RETURN_TYPE_begin_end_block2623
    #define	RETURN_TYPE_begin_end_block2623 MySQLParser_begin_end_block_return

    MySQLParser_label_identifier_return label_identifier2624;
    #undef	RETURN_TYPE_label_identifier2624
    #define	RETURN_TYPE_label_identifier2624 MySQLParser_label_identifier_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    label2622.tree = NULL;

    begin_end_block2623.tree = NULL;

    label_identifier2624.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:2724:14: ( label begin_end_block ( label_identifier )? )
        // MySQL.g:2725:2: label begin_end_block ( label_identifier )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_label_in_labeled_block13827);
            label2622=label(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulelabeled_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, label2622.tree);

            FOLLOWPUSH(FOLLOW_begin_end_block_in_labeled_block13829);
            begin_end_block2623=begin_end_block(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulelabeled_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, begin_end_block2623.tree);

            // MySQL.g:2725:24: ( 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:2725:24: label_identifier
            	    {
            	        FOLLOWPUSH(FOLLOW_label_identifier_in_labeled_block13831);
            	        label_identifier2624=label_identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulelabeled_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 rulelabeled_blockEx; /* Prevent compiler warnings */
    rulelabeled_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 labeled_block */

/**
 * $ANTLR start unlabeled_block
 * MySQL.g:2728:1: unlabeled_block : begin_end_block ;
 */
static MySQLParser_unlabeled_block_return
unlabeled_block(pMySQLParser ctx)
{
    MySQLParser_unlabeled_block_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_begin_end_block_return begin_end_block2625;
    #undef	RETURN_TYPE_begin_end_block2625
    #define	RETURN_TYPE_begin_end_block2625 MySQLParser_begin_end_block_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    begin_end_block2625.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:2728:16: ( begin_end_block )
        // MySQL.g:2729:2: begin_end_block
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_begin_end_block_in_unlabeled_block13842);
            begin_end_block2625=begin_end_block(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleunlabeled_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, begin_end_block2625.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleunlabeled_blockEx; /* Prevent compiler warnings */
    ruleunlabeled_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 unlabeled_block */

/**
 * $ANTLR start label
 * MySQL.g:2732: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_SYMBOL2627;
    MySQLParser_label_identifier_return label_identifier2626;
    #undef	RETURN_TYPE_label_identifier2626
    #define	RETURN_TYPE_label_identifier2626 MySQLParser_label_identifier_return

    pANTLR3_BASE_TREE COLON_SYMBOL2627_tree;
    pANTLR3_REWRITE_RULE_TOKEN_STREAM stream_COLON_SYMBOL;
    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_label_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    COLON_SYMBOL2627       = NULL;
    label_identifier2626.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COLON_SYMBOL2627_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:2732:6: ( label_identifier COLON_SYMBOL -> ^( LABEL_TOKEN label_identifier COLON_SYMBOL ) )
        // MySQL.g:2734:2: label_identifier COLON_SYMBOL
        {
            FOLLOWPUSH(FOLLOW_label_identifier_in_label13854);
            label_identifier2626=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_identifier2626.tree, NULL); }

            COLON_SYMBOL2627 = (pANTLR3_COMMON_TOKEN) MATCHT(COLON_SYMBOL, &FOLLOW_COLON_SYMBOL_in_label13856);
            if  (HASEXCEPTION())
            {
                goto rulelabelEx;
            }
            if (HASFAILED())
            {
                return retval;
            }
             
            if ( BACKTRACKING==0 ) { CREATE_stream_COLON_SYMBOL; stream_COLON_SYMBOL->add(stream_COLON_SYMBOL, COLON_SYMBOL2627, NULL); }


            /* AST REWRITE
             * elements          : COLON_SYMBOL, label_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;
            	// 2734:32: -> ^( LABEL_TOKEN label_identifier COLON_SYMBOL )
            	{
            	    // MySQL.g:2734: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:2737: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_identifier2628;
    #undef	RETURN_TYPE_pure_identifier2628
    #define	RETURN_TYPE_pure_identifier2628 MySQLParser_pure_identifier_return

    MySQLParser_keyword_sp_return keyword_sp2629;
    #undef	RETURN_TYPE_keyword_sp2629
    #define	RETURN_TYPE_keyword_sp2629 MySQLParser_keyword_sp_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    pure_identifier2628.tree = NULL;

    keyword_sp2629.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2737:17: ( pure_identifier | keyword_sp )

            ANTLR3_UINT32 alt729;

            alt729=2;

            {
                int LA729_0 = LA(1);
                if ( (LA729_0 == BACK_TICK_QUOTED_ID || LA729_0 == DOUBLE_QUOTED_TEXT || LA729_0 == IDENTIFIER))
                {
                    alt729=1;
                }
                else if ( (((LA729_0 >= ACTION_SYMBOL) && (LA729_0 <= SHARE_SYMBOL)) || ((LA729_0 >= SLOW_SYMBOL) && (LA729_0 <= YEAR_SYMBOL))))
                {
                    alt729=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 729;
                    EXCEPTION->state        = 0;


                    goto rulelabel_identifierEx;

                }
            }
            switch (alt729)
            {
        	case 1:
        	    // MySQL.g:2738:2: pure_identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_pure_identifier_in_label_identifier13875);
        	        pure_identifier2628=pure_identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelabel_identifierEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, pure_identifier2628.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2738:20: keyword_sp
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_keyword_sp_in_label_identifier13879);
        	        keyword_sp2629=keyword_sp(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelabel_identifierEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, keyword_sp2629.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:2741:1: begin_end_block : BEGIN_SYMBOL ^ ( sp_declarations )? ( compound_statement_list )? END_SYMBOL ;
 */
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_SYMBOL2630;
    pANTLR3_COMMON_TOKEN    END_SYMBOL2633;
    MySQLParser_sp_declarations_return sp_declarations2631;
    #undef	RETURN_TYPE_sp_declarations2631
    #define	RETURN_TYPE_sp_declarations2631 MySQLParser_sp_declarations_return

    MySQLParser_compound_statement_list_return compound_statement_list2632;
    #undef	RETURN_TYPE_compound_statement_list2632
    #define	RETURN_TYPE_compound_statement_list2632 MySQLParser_compound_statement_list_return

    pANTLR3_BASE_TREE BEGIN_SYMBOL2630_tree;
    pANTLR3_BASE_TREE END_SYMBOL2633_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    BEGIN_SYMBOL2630       = NULL;
    END_SYMBOL2633       = NULL;
    sp_declarations2631.tree = NULL;

    compound_statement_list2632.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    BEGIN_SYMBOL2630_tree   = NULL;
    END_SYMBOL2633_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2741:16: ( BEGIN_SYMBOL ^ ( sp_declarations )? ( compound_statement_list )? END_SYMBOL )
        // MySQL.g:2742:2: BEGIN_SYMBOL ^ ( sp_declarations )? ( compound_statement_list )? END_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            BEGIN_SYMBOL2630 = (pANTLR3_COMMON_TOKEN) MATCHT(BEGIN_SYMBOL, &FOLLOW_BEGIN_SYMBOL_in_begin_end_block13889);
            if  (HASEXCEPTION())
            {
                goto rulebegin_end_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            BEGIN_SYMBOL2630_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BEGIN_SYMBOL2630))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, BEGIN_SYMBOL2630_tree, root_0));
            }

            // MySQL.g:2742:16: ( sp_declarations )?
            {
                int alt730=2;
                switch ( LA(1) )
                {
                    case DECLARE_SYMBOL:
                    	{
                    		alt730=1;
                    	}
                        break;
                }

                switch (alt730)
                {
            	case 1:
            	    // MySQL.g:2742:16: sp_declarations
            	    {
            	        FOLLOWPUSH(FOLLOW_sp_declarations_in_begin_end_block13892);
            	        sp_declarations2631=sp_declarations(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulebegin_end_blockEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, sp_declarations2631.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:2742:33: ( compound_statement_list )?
            {
                int alt731=2;
                {
                    int LA731_0 = LA(1);
                    if ( (((LA731_0 >= BACKUP_SYMBOL) && (LA731_0 <= BEGIN_SYMBOL)) || LA731_0 == CACHE_SYMBOL || ((LA731_0 >= CHECKSUM_SYMBOL) && (LA731_0 <= CLOSE_SYMBOL)) || LA731_0 == COMMIT_SYMBOL || ((LA731_0 >= DEALLOCATE_SYMBOL) && (LA731_0 <= DO_SYMBOL)) || ((LA731_0 >= EXECUTE_SYMBOL) && (LA731_0 <= FLUSH_SYMBOL)) || ((LA731_0 >= HANDLER_SYMBOL) && (LA731_0 <= HELP_SYMBOL)) || LA731_0 == INSTALL_SYMBOL || LA731_0 == OPEN_SYMBOL || LA731_0 == PARTITION_SYMBOL || LA731_0 == PREPARE_SYMBOL || ((LA731_0 >= REPAIR_SYMBOL) && (LA731_0 <= SAVEPOINT_SYMBOL)) || ((LA731_0 >= START_SYMBOL) && (LA731_0 <= TRUNCATE_SYMBOL)) || LA731_0 == UNINSTALL_SYMBOL || ((LA731_0 >= XA_SYMBOL) && (LA731_0 <= YEAR_SYMBOL)) || LA731_0 == ALTER_SYMBOL || LA731_0 == CALL_SYMBOL || LA731_0 == CASE_SYMBOL || LA731_0 == CHANGE_SYMBOL || LA731_0 == CHECK_SYMBOL || LA731_0 == CREATE_SYMBOL || ((LA731_0 >= DELETE_SYMBOL) && (LA731_0 <= DESC_SYMBOL)) || LA731_0 == DROP_SYMBOL || LA731_0 == FETCH_SYMBOL || ((LA731_0 >= GET_SYMBOL) && (LA731_0 <= GRANT_SYMBOL)) || LA731_0 == IF_SYMBOL || LA731_0 == INSERT_SYMBOL || LA731_0 == ITERATE_SYMBOL || LA731_0 == KILL_SYMBOL || LA731_0 == LEAVE_SYMBOL || LA731_0 == LOAD_SYMBOL || LA731_0 == LOCK_SYMBOL || LA731_0 == LOOP_SYMBOL || LA731_0 == OPEN_PAR_SYMBOL || LA731_0 == OPTIMIZE_SYMBOL || LA731_0 == PURGE_SYMBOL || ((LA731_0 >= RELEASE_SYMBOL) && (LA731_0 <= REPLACE_SYMBOL)) || LA731_0 == RESIGNAL_SYMBOL || ((LA731_0 >= RETURN_SYMBOL) && (LA731_0 <= REVOKE_SYMBOL)) || LA731_0 == SELECT_SYMBOL || LA731_0 == SET_SYMBOL || ((LA731_0 >= SHOW_SYMBOL) && (LA731_0 <= SIGNAL_SYMBOL)) || LA731_0 == UNLOCK_SYMBOL || LA731_0 == UPDATE_SYMBOL || LA731_0 == USE_SYMBOL || LA731_0 == WHILE_SYMBOL || LA731_0 == BACK_TICK_QUOTED_ID || LA731_0 == DOUBLE_QUOTED_TEXT || LA731_0 == IDENTIFIER))
                    {
                        alt731=1;
                    }
                }
                switch (alt731)
                {
            	case 1:
            	    // MySQL.g:2742:33: compound_statement_list
            	    {
            	        FOLLOWPUSH(FOLLOW_compound_statement_list_in_begin_end_block13895);
            	        compound_statement_list2632=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_list2632.tree);

            	    }
            	    break;

                }
            }

            END_SYMBOL2633 = (pANTLR3_COMMON_TOKEN) MATCHT(END_SYMBOL, &FOLLOW_END_SYMBOL_in_begin_end_block13898);
            if  (HASEXCEPTION())
            {
                goto rulebegin_end_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            END_SYMBOL2633_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, END_SYMBOL2633));
            ADAPTOR->addChild(ADAPTOR, root_0, END_SYMBOL2633_tree);
            }

        }

    }

    // 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 labeled_control
 * MySQL.g:2745:1: labeled_control : label unlabeled_control ( label_identifier )? ;
 */
static MySQLParser_labeled_control_return
labeled_control(pMySQLParser ctx)
{
    MySQLParser_labeled_control_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_label_return label2634;
    #undef	RETURN_TYPE_label2634
    #define	RETURN_TYPE_label2634 MySQLParser_label_return

    MySQLParser_unlabeled_control_return unlabeled_control2635;
    #undef	RETURN_TYPE_unlabeled_control2635
    #define	RETURN_TYPE_unlabeled_control2635 MySQLParser_unlabeled_control_return

    MySQLParser_label_identifier_return label_identifier2636;
    #undef	RETURN_TYPE_label_identifier2636
    #define	RETURN_TYPE_label_identifier2636 MySQLParser_label_identifier_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    label2634.tree = NULL;

    unlabeled_control2635.tree = NULL;

    label_identifier2636.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:2745:16: ( label unlabeled_control ( label_identifier )? )
        // MySQL.g:2746:2: label unlabeled_control ( label_identifier )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_label_in_labeled_control13907);
            label2634=label(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulelabeled_controlEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, label2634.tree);

            FOLLOWPUSH(FOLLOW_unlabeled_control_in_labeled_control13909);
            unlabeled_control2635=unlabeled_control(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulelabeled_controlEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, unlabeled_control2635.tree);

            // MySQL.g:2746:26: ( label_identifier )?
            {
                int alt732=2;
                {
                    int LA732_0 = LA(1);
                    if ( (((LA732_0 >= ACTION_SYMBOL) && (LA732_0 <= SHARE_SYMBOL)) || ((LA732_0 >= SLOW_SYMBOL) && (LA732_0 <= YEAR_SYMBOL)) || LA732_0 == BACK_TICK_QUOTED_ID || LA732_0 == DOUBLE_QUOTED_TEXT || LA732_0 == IDENTIFIER))
                    {
                        alt732=1;
                    }
                }
                switch (alt732)
                {
            	case 1:
            	    // MySQL.g:2746:26: label_identifier
            	    {
            	        FOLLOWPUSH(FOLLOW_label_identifier_in_labeled_control13911);
            	        label_identifier2636=label_identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulelabeled_controlEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, label_identifier2636.tree);

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulelabeled_controlEx; /* Prevent compiler warnings */
    rulelabeled_controlEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end labeled_control */

/**
 * $ANTLR start unlabeled_control
 * MySQL.g:2749:1: unlabeled_control : ( loop_block | while_do_block | repeat_until_block );
 */
static MySQLParser_unlabeled_control_return
unlabeled_control(pMySQLParser ctx)
{
    MySQLParser_unlabeled_control_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_loop_block_return loop_block2637;
    #undef	RETURN_TYPE_loop_block2637
    #define	RETURN_TYPE_loop_block2637 MySQLParser_loop_block_return

    MySQLParser_while_do_block_return while_do_block2638;
    #undef	RETURN_TYPE_while_do_block2638
    #define	RETURN_TYPE_while_do_block2638 MySQLParser_while_do_block_return

    MySQLParser_repeat_until_block_return repeat_until_block2639;
    #undef	RETURN_TYPE_repeat_until_block2639
    #define	RETURN_TYPE_repeat_until_block2639 MySQLParser_repeat_until_block_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    loop_block2637.tree = NULL;

    while_do_block2638.tree = NULL;

    repeat_until_block2639.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2749:18: ( loop_block | while_do_block | repeat_until_block )

            ANTLR3_UINT32 alt733;

            alt733=3;

            switch ( LA(1) )
            {
            case LOOP_SYMBOL:
            	{
            		alt733=1;
            	}
                break;
            case WHILE_SYMBOL:
            	{
            		alt733=2;
            	}
                break;
            case REPEAT_SYMBOL:
            	{
            		alt733=3;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 733;
                EXCEPTION->state        = 0;


                goto ruleunlabeled_controlEx;

            }

            switch (alt733)
            {
        	case 1:
        	    // MySQL.g:2750:2: loop_block
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_loop_block_in_unlabeled_control13921);
        	        loop_block2637=loop_block(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleunlabeled_controlEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, loop_block2637.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2751:4: while_do_block
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_while_do_block_in_unlabeled_control13926);
        	        while_do_block2638=while_do_block(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleunlabeled_controlEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, while_do_block2638.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2752:4: repeat_until_block
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_repeat_until_block_in_unlabeled_control13931);
        	        repeat_until_block2639=repeat_until_block(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleunlabeled_controlEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, repeat_until_block2639.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleunlabeled_controlEx; /* Prevent compiler warnings */
    ruleunlabeled_controlEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end unlabeled_control */

/**
 * $ANTLR start loop_block
 * MySQL.g:2755:1: loop_block : LOOP_SYMBOL ^ compound_statement_list END_SYMBOL LOOP_SYMBOL ;
 */
static MySQLParser_loop_block_return
loop_block(pMySQLParser ctx)
{
    MySQLParser_loop_block_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    LOOP_SYMBOL2640;
    pANTLR3_COMMON_TOKEN    END_SYMBOL2642;
    pANTLR3_COMMON_TOKEN    LOOP_SYMBOL2643;
    MySQLParser_compound_statement_list_return compound_statement_list2641;
    #undef	RETURN_TYPE_compound_statement_list2641
    #define	RETURN_TYPE_compound_statement_list2641 MySQLParser_compound_statement_list_return

    pANTLR3_BASE_TREE LOOP_SYMBOL2640_tree;
    pANTLR3_BASE_TREE END_SYMBOL2642_tree;
    pANTLR3_BASE_TREE LOOP_SYMBOL2643_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    LOOP_SYMBOL2640       = NULL;
    END_SYMBOL2642       = NULL;
    LOOP_SYMBOL2643       = NULL;
    compound_statement_list2641.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    LOOP_SYMBOL2640_tree   = NULL;
    END_SYMBOL2642_tree   = NULL;
    LOOP_SYMBOL2643_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2755:11: ( LOOP_SYMBOL ^ compound_statement_list END_SYMBOL LOOP_SYMBOL )
        // MySQL.g:2756:2: LOOP_SYMBOL ^ compound_statement_list END_SYMBOL LOOP_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            LOOP_SYMBOL2640 = (pANTLR3_COMMON_TOKEN) MATCHT(LOOP_SYMBOL, &FOLLOW_LOOP_SYMBOL_in_loop_block13940);
            if  (HASEXCEPTION())
            {
                goto ruleloop_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            LOOP_SYMBOL2640_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOOP_SYMBOL2640))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, LOOP_SYMBOL2640_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_compound_statement_list_in_loop_block13943);
            compound_statement_list2641=compound_statement_list(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleloop_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, compound_statement_list2641.tree);

            END_SYMBOL2642 = (pANTLR3_COMMON_TOKEN) MATCHT(END_SYMBOL, &FOLLOW_END_SYMBOL_in_loop_block13945);
            if  (HASEXCEPTION())
            {
                goto ruleloop_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            END_SYMBOL2642_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, END_SYMBOL2642));
            ADAPTOR->addChild(ADAPTOR, root_0, END_SYMBOL2642_tree);
            }

            LOOP_SYMBOL2643 = (pANTLR3_COMMON_TOKEN) MATCHT(LOOP_SYMBOL, &FOLLOW_LOOP_SYMBOL_in_loop_block13947);
            if  (HASEXCEPTION())
            {
                goto ruleloop_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            LOOP_SYMBOL2643_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOOP_SYMBOL2643));
            ADAPTOR->addChild(ADAPTOR, root_0, LOOP_SYMBOL2643_tree);
            }

        }

    }

    // 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 while_do_block
 * MySQL.g:2759:1: while_do_block : WHILE_SYMBOL ^ expression DO_SYMBOL compound_statement_list END_SYMBOL WHILE_SYMBOL ;
 */
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_SYMBOL2644;
    pANTLR3_COMMON_TOKEN    DO_SYMBOL2646;
    pANTLR3_COMMON_TOKEN    END_SYMBOL2648;
    pANTLR3_COMMON_TOKEN    WHILE_SYMBOL2649;
    MySQLParser_expression_return expression2645;
    #undef	RETURN_TYPE_expression2645
    #define	RETURN_TYPE_expression2645 MySQLParser_expression_return

    MySQLParser_compound_statement_list_return compound_statement_list2647;
    #undef	RETURN_TYPE_compound_statement_list2647
    #define	RETURN_TYPE_compound_statement_list2647 MySQLParser_compound_statement_list_return

    pANTLR3_BASE_TREE WHILE_SYMBOL2644_tree;
    pANTLR3_BASE_TREE DO_SYMBOL2646_tree;
    pANTLR3_BASE_TREE END_SYMBOL2648_tree;
    pANTLR3_BASE_TREE WHILE_SYMBOL2649_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    WHILE_SYMBOL2644       = NULL;
    DO_SYMBOL2646       = NULL;
    END_SYMBOL2648       = NULL;
    WHILE_SYMBOL2649       = NULL;
    expression2645.tree = NULL;

    compound_statement_list2647.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    WHILE_SYMBOL2644_tree   = NULL;
    DO_SYMBOL2646_tree   = NULL;
    END_SYMBOL2648_tree   = NULL;
    WHILE_SYMBOL2649_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2759:15: ( WHILE_SYMBOL ^ expression DO_SYMBOL compound_statement_list END_SYMBOL WHILE_SYMBOL )
        // MySQL.g:2760:2: WHILE_SYMBOL ^ expression DO_SYMBOL compound_statement_list END_SYMBOL WHILE_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            WHILE_SYMBOL2644 = (pANTLR3_COMMON_TOKEN) MATCHT(WHILE_SYMBOL, &FOLLOW_WHILE_SYMBOL_in_while_do_block13956);
            if  (HASEXCEPTION())
            {
                goto rulewhile_do_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            WHILE_SYMBOL2644_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WHILE_SYMBOL2644))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, WHILE_SYMBOL2644_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_expression_in_while_do_block13959);
            expression2645=expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulewhile_do_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2645.tree);

            DO_SYMBOL2646 = (pANTLR3_COMMON_TOKEN) MATCHT(DO_SYMBOL, &FOLLOW_DO_SYMBOL_in_while_do_block13961);
            if  (HASEXCEPTION())
            {
                goto rulewhile_do_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            DO_SYMBOL2646_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DO_SYMBOL2646));
            ADAPTOR->addChild(ADAPTOR, root_0, DO_SYMBOL2646_tree);
            }

            FOLLOWPUSH(FOLLOW_compound_statement_list_in_while_do_block13963);
            compound_statement_list2647=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_list2647.tree);

            END_SYMBOL2648 = (pANTLR3_COMMON_TOKEN) MATCHT(END_SYMBOL, &FOLLOW_END_SYMBOL_in_while_do_block13965);
            if  (HASEXCEPTION())
            {
                goto rulewhile_do_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            END_SYMBOL2648_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, END_SYMBOL2648));
            ADAPTOR->addChild(ADAPTOR, root_0, END_SYMBOL2648_tree);
            }

            WHILE_SYMBOL2649 = (pANTLR3_COMMON_TOKEN) MATCHT(WHILE_SYMBOL, &FOLLOW_WHILE_SYMBOL_in_while_do_block13967);
            if  (HASEXCEPTION())
            {
                goto rulewhile_do_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            WHILE_SYMBOL2649_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WHILE_SYMBOL2649));
            ADAPTOR->addChild(ADAPTOR, root_0, WHILE_SYMBOL2649_tree);
            }

        }

    }

    // 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 repeat_until_block
 * MySQL.g:2763:1: repeat_until_block : REPEAT_SYMBOL ^ compound_statement_list UNTIL_SYMBOL expression END_SYMBOL REPEAT_SYMBOL ;
 */
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_SYMBOL2650;
    pANTLR3_COMMON_TOKEN    UNTIL_SYMBOL2652;
    pANTLR3_COMMON_TOKEN    END_SYMBOL2654;
    pANTLR3_COMMON_TOKEN    REPEAT_SYMBOL2655;
    MySQLParser_compound_statement_list_return compound_statement_list2651;
    #undef	RETURN_TYPE_compound_statement_list2651
    #define	RETURN_TYPE_compound_statement_list2651 MySQLParser_compound_statement_list_return

    MySQLParser_expression_return expression2653;
    #undef	RETURN_TYPE_expression2653
    #define	RETURN_TYPE_expression2653 MySQLParser_expression_return

    pANTLR3_BASE_TREE REPEAT_SYMBOL2650_tree;
    pANTLR3_BASE_TREE UNTIL_SYMBOL2652_tree;
    pANTLR3_BASE_TREE END_SYMBOL2654_tree;
    pANTLR3_BASE_TREE REPEAT_SYMBOL2655_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    REPEAT_SYMBOL2650       = NULL;
    UNTIL_SYMBOL2652       = NULL;
    END_SYMBOL2654       = NULL;
    REPEAT_SYMBOL2655       = NULL;
    compound_statement_list2651.tree = NULL;

    expression2653.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    REPEAT_SYMBOL2650_tree   = NULL;
    UNTIL_SYMBOL2652_tree   = NULL;
    END_SYMBOL2654_tree   = NULL;
    REPEAT_SYMBOL2655_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2763:19: ( REPEAT_SYMBOL ^ compound_statement_list UNTIL_SYMBOL expression END_SYMBOL REPEAT_SYMBOL )
        // MySQL.g:2764:2: REPEAT_SYMBOL ^ compound_statement_list UNTIL_SYMBOL expression END_SYMBOL REPEAT_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            REPEAT_SYMBOL2650 = (pANTLR3_COMMON_TOKEN) MATCHT(REPEAT_SYMBOL, &FOLLOW_REPEAT_SYMBOL_in_repeat_until_block13976);
            if  (HASEXCEPTION())
            {
                goto rulerepeat_until_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            REPEAT_SYMBOL2650_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REPEAT_SYMBOL2650))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, REPEAT_SYMBOL2650_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_compound_statement_list_in_repeat_until_block13979);
            compound_statement_list2651=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_list2651.tree);

            UNTIL_SYMBOL2652 = (pANTLR3_COMMON_TOKEN) MATCHT(UNTIL_SYMBOL, &FOLLOW_UNTIL_SYMBOL_in_repeat_until_block13981);
            if  (HASEXCEPTION())
            {
                goto rulerepeat_until_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            UNTIL_SYMBOL2652_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNTIL_SYMBOL2652));
            ADAPTOR->addChild(ADAPTOR, root_0, UNTIL_SYMBOL2652_tree);
            }

            FOLLOWPUSH(FOLLOW_expression_in_repeat_until_block13983);
            expression2653=expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulerepeat_until_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2653.tree);

            END_SYMBOL2654 = (pANTLR3_COMMON_TOKEN) MATCHT(END_SYMBOL, &FOLLOW_END_SYMBOL_in_repeat_until_block13985);
            if  (HASEXCEPTION())
            {
                goto rulerepeat_until_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            END_SYMBOL2654_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, END_SYMBOL2654));
            ADAPTOR->addChild(ADAPTOR, root_0, END_SYMBOL2654_tree);
            }

            REPEAT_SYMBOL2655 = (pANTLR3_COMMON_TOKEN) MATCHT(REPEAT_SYMBOL, &FOLLOW_REPEAT_SYMBOL_in_repeat_until_block13987);
            if  (HASEXCEPTION())
            {
                goto rulerepeat_until_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            REPEAT_SYMBOL2655_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REPEAT_SYMBOL2655));
            ADAPTOR->addChild(ADAPTOR, root_0, REPEAT_SYMBOL2655_tree);
            }

        }

    }

    // 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 sp_declarations
 * MySQL.g:2767:1: sp_declarations : ( sp_declaration SEMICOLON_SYMBOL )+ ;
 */
static MySQLParser_sp_declarations_return
sp_declarations(pMySQLParser ctx)
{
    MySQLParser_sp_declarations_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    SEMICOLON_SYMBOL2657;
    MySQLParser_sp_declaration_return sp_declaration2656;
    #undef	RETURN_TYPE_sp_declaration2656
    #define	RETURN_TYPE_sp_declaration2656 MySQLParser_sp_declaration_return

    pANTLR3_BASE_TREE SEMICOLON_SYMBOL2657_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SEMICOLON_SYMBOL2657       = NULL;
    sp_declaration2656.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SEMICOLON_SYMBOL2657_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2767:16: ( ( sp_declaration SEMICOLON_SYMBOL )+ )
        // MySQL.g:2768:2: ( sp_declaration SEMICOLON_SYMBOL )+
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:2768:2: ( sp_declaration SEMICOLON_SYMBOL )+
            {
                int cnt734=0;

                for (;;)
                {
                    int alt734=2;
            	switch ( LA(1) )
            	{
            	case DECLARE_SYMBOL:
            		{
            			alt734=1;
            		}
            	    break;

            	}

            	switch (alt734)
            	{
            	    case 1:
            	        // MySQL.g:2768:3: sp_declaration SEMICOLON_SYMBOL
            	        {
            	            FOLLOWPUSH(FOLLOW_sp_declaration_in_sp_declarations13997);
            	            sp_declaration2656=sp_declaration(ctx);

            	            FOLLOWPOP();
            	            if  (HASEXCEPTION())
            	            {
            	                goto rulesp_declarationsEx;
            	            }
            	            if (HASFAILED())
            	            {
            	                return retval;
            	            }

            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, sp_declaration2656.tree);

            	            SEMICOLON_SYMBOL2657 = (pANTLR3_COMMON_TOKEN) MATCHT(SEMICOLON_SYMBOL, &FOLLOW_SEMICOLON_SYMBOL_in_sp_declarations13999);
            	            if  (HASEXCEPTION())
            	            {
            	                goto rulesp_declarationsEx;
            	            }
            	            if (HASFAILED())
            	            {
            	                return retval;
            	            }

            	            if ( BACKTRACKING==0 ) {
            	            SEMICOLON_SYMBOL2657_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SEMICOLON_SYMBOL2657));
            	            ADAPTOR->addChild(ADAPTOR, root_0, SEMICOLON_SYMBOL2657_tree);
            	            }

            	        }
            	        break;

            	    default:

            		if ( cnt734 >= 1 )
            		{
            		    goto loop734;
            		}
            		if (BACKTRACKING>0)
            		{
            		    FAILEDFLAG = ANTLR3_TRUE;
            		    return retval;
            		}

            		/* mismatchedSetEx()
            		 */
            		CONSTRUCTEX();
            		EXCEPTION->type = ANTLR3_EARLY_EXIT_EXCEPTION;
            		EXCEPTION->name = (void *)ANTLR3_EARLY_EXIT_NAME;


            		goto rulesp_declarationsEx;
            	}
            	cnt734++;
                }
                loop734: ;	/* Jump to here if this rule does not match */
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulesp_declarationsEx; /* Prevent compiler warnings */
    rulesp_declarationsEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, 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_declarations */

/**
 * $ANTLR start sp_declaration
 * MySQL.g:2771:1: sp_declaration : DECLARE_SYMBOL ( variable_declaration | condition_declaration | handler_declaration | cursor_declaration ) ;
 */
static MySQLParser_sp_declaration_return
sp_declaration(pMySQLParser ctx)
{
    MySQLParser_sp_declaration_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    DECLARE_SYMBOL2658;
    MySQLParser_variable_declaration_return variable_declaration2659;
    #undef	RETURN_TYPE_variable_declaration2659
    #define	RETURN_TYPE_variable_declaration2659 MySQLParser_variable_declaration_return

    MySQLParser_condition_declaration_return condition_declaration2660;
    #undef	RETURN_TYPE_condition_declaration2660
    #define	RETURN_TYPE_condition_declaration2660 MySQLParser_condition_declaration_return

    MySQLParser_handler_declaration_return handler_declaration2661;
    #undef	RETURN_TYPE_handler_declaration2661
    #define	RETURN_TYPE_handler_declaration2661 MySQLParser_handler_declaration_return

    MySQLParser_cursor_declaration_return cursor_declaration2662;
    #undef	RETURN_TYPE_cursor_declaration2662
    #define	RETURN_TYPE_cursor_declaration2662 MySQLParser_cursor_declaration_return

    pANTLR3_BASE_TREE DECLARE_SYMBOL2658_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DECLARE_SYMBOL2658       = NULL;
    variable_declaration2659.tree = NULL;

    condition_declaration2660.tree = NULL;

    handler_declaration2661.tree = NULL;

    cursor_declaration2662.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DECLARE_SYMBOL2658_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2771:15: ( DECLARE_SYMBOL ( variable_declaration | condition_declaration | handler_declaration | cursor_declaration ) )
        // MySQL.g:2772:2: DECLARE_SYMBOL ( variable_declaration | condition_declaration | handler_declaration | cursor_declaration )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            DECLARE_SYMBOL2658 = (pANTLR3_COMMON_TOKEN) MATCHT(DECLARE_SYMBOL, &FOLLOW_DECLARE_SYMBOL_in_sp_declaration14010);
            if  (HASEXCEPTION())
            {
                goto rulesp_declarationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            DECLARE_SYMBOL2658_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DECLARE_SYMBOL2658));
            ADAPTOR->addChild(ADAPTOR, root_0, DECLARE_SYMBOL2658_tree);
            }

            // MySQL.g:2773:2: ( variable_declaration | condition_declaration | handler_declaration | cursor_declaration )
            {
                int alt735=4;
                {
                    int LA735_0 = LA(1);
                    if ( (LA735_0 == IDENTIFIER))
                    {
                        {
                            int LA735_1 = LA(2);
                            if ( (LA735_1 == BIT_SYMBOL || ((LA735_1 >= BOOL_SYMBOL) && (LA735_1 <= BOOLEAN_SYMBOL)) || ((LA735_1 >= DATETIME_SYMBOL) && (LA735_1 <= DATE_SYMBOL)) || LA735_1 == ENUM_SYMBOL || LA735_1 == FIXED_SYMBOL || ((LA735_1 >= GEOMETRY_SYMBOL) && (LA735_1 <= GEOMETRYCOLLECTION_SYMBOL)) || LA735_1 == JSON_SYMBOL || LA735_1 == LINESTRING_SYMBOL || ((LA735_1 >= MULTILINESTRING_SYMBOL) && (LA735_1 <= MULTIPOLYGON_SYMBOL)) || ((LA735_1 >= NATIONAL_SYMBOL) && (LA735_1 <= NCHAR_SYMBOL)) || LA735_1 == NVARCHAR_SYMBOL || ((LA735_1 >= POINT_SYMBOL) && (LA735_1 <= POLYGON_SYMBOL)) || LA735_1 == SERIAL_SYMBOL || LA735_1 == TEXT_SYMBOL || LA735_1 == TIMESTAMP_SYMBOL || LA735_1 == TIME_SYMBOL || LA735_1 == YEAR_SYMBOL || ((LA735_1 >= BIGINT_SYMBOL) && (LA735_1 <= BINARY_SYMBOL)) || LA735_1 == BLOB_SYMBOL || LA735_1 == CHAR_SYMBOL || LA735_1 == DECIMAL_SYMBOL || LA735_1 == FLOAT_SYMBOL || LA735_1 == INT_SYMBOL || ((LA735_1 >= LONGBLOB_SYMBOL) && (LA735_1 <= LONGTEXT_SYMBOL)) || LA735_1 == LONG_SYMBOL || ((LA735_1 >= MEDIUMBLOB_SYMBOL) && (LA735_1 <= MEDIUMTEXT_SYMBOL)) || LA735_1 == NUMERIC_SYMBOL || LA735_1 == REAL_SYMBOL || LA735_1 == SET_SYMBOL || LA735_1 == SMALLINT_SYMBOL || ((LA735_1 >= TINYBLOB_SYMBOL) && (LA735_1 <= TINYTEXT_SYMBOL)) || LA735_1 == VARBINARY_SYMBOL || LA735_1 == VARCHAR_SYMBOL || LA735_1 == COMMA_SYMBOL || LA735_1 == DOUBLE_SYMBOL))
                            {
                                alt735=1;
                            }
                            else if ( (LA735_1 == CONDITION_SYMBOL))
                            {
                                alt735=2;
                            }
                            else if ( (LA735_1 == CURSOR_SYMBOL))
                            {
                                alt735=4;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 735;
                                EXCEPTION->state        = 1;


                                goto rulesp_declarationEx;

                            }
                        }
                    }
                    else if ( (LA735_0 == BACK_TICK_QUOTED_ID))
                    {
                        {
                            int LA735_2 = LA(2);
                            if ( (LA735_2 == BIT_SYMBOL || ((LA735_2 >= BOOL_SYMBOL) && (LA735_2 <= BOOLEAN_SYMBOL)) || ((LA735_2 >= DATETIME_SYMBOL) && (LA735_2 <= DATE_SYMBOL)) || LA735_2 == ENUM_SYMBOL || LA735_2 == FIXED_SYMBOL || ((LA735_2 >= GEOMETRY_SYMBOL) && (LA735_2 <= GEOMETRYCOLLECTION_SYMBOL)) || LA735_2 == JSON_SYMBOL || LA735_2 == LINESTRING_SYMBOL || ((LA735_2 >= MULTILINESTRING_SYMBOL) && (LA735_2 <= MULTIPOLYGON_SYMBOL)) || ((LA735_2 >= NATIONAL_SYMBOL) && (LA735_2 <= NCHAR_SYMBOL)) || LA735_2 == NVARCHAR_SYMBOL || ((LA735_2 >= POINT_SYMBOL) && (LA735_2 <= POLYGON_SYMBOL)) || LA735_2 == SERIAL_SYMBOL || LA735_2 == TEXT_SYMBOL || LA735_2 == TIMESTAMP_SYMBOL || LA735_2 == TIME_SYMBOL || LA735_2 == YEAR_SYMBOL || ((LA735_2 >= BIGINT_SYMBOL) && (LA735_2 <= BINARY_SYMBOL)) || LA735_2 == BLOB_SYMBOL || LA735_2 == CHAR_SYMBOL || LA735_2 == DECIMAL_SYMBOL || LA735_2 == FLOAT_SYMBOL || LA735_2 == INT_SYMBOL || ((LA735_2 >= LONGBLOB_SYMBOL) && (LA735_2 <= LONGTEXT_SYMBOL)) || LA735_2 == LONG_SYMBOL || ((LA735_2 >= MEDIUMBLOB_SYMBOL) && (LA735_2 <= MEDIUMTEXT_SYMBOL)) || LA735_2 == NUMERIC_SYMBOL || LA735_2 == REAL_SYMBOL || LA735_2 == SET_SYMBOL || LA735_2 == SMALLINT_SYMBOL || ((LA735_2 >= TINYBLOB_SYMBOL) && (LA735_2 <= TINYTEXT_SYMBOL)) || LA735_2 == VARBINARY_SYMBOL || LA735_2 == VARCHAR_SYMBOL || LA735_2 == COMMA_SYMBOL || LA735_2 == DOUBLE_SYMBOL))
                            {
                                alt735=1;
                            }
                            else if ( (LA735_2 == CONDITION_SYMBOL))
                            {
                                alt735=2;
                            }
                            else if ( (LA735_2 == CURSOR_SYMBOL))
                            {
                                alt735=4;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 735;
                                EXCEPTION->state        = 2;


                                goto rulesp_declarationEx;

                            }
                        }
                    }
                    else if ( (LA735_0 == DOUBLE_QUOTED_TEXT))
                    {
                        {
                            int LA735_3 = LA(2);
                            if ( (LA735_3 == BIT_SYMBOL || ((LA735_3 >= BOOL_SYMBOL) && (LA735_3 <= BOOLEAN_SYMBOL)) || ((LA735_3 >= DATETIME_SYMBOL) && (LA735_3 <= DATE_SYMBOL)) || LA735_3 == ENUM_SYMBOL || LA735_3 == FIXED_SYMBOL || ((LA735_3 >= GEOMETRY_SYMBOL) && (LA735_3 <= GEOMETRYCOLLECTION_SYMBOL)) || LA735_3 == JSON_SYMBOL || LA735_3 == LINESTRING_SYMBOL || ((LA735_3 >= MULTILINESTRING_SYMBOL) && (LA735_3 <= MULTIPOLYGON_SYMBOL)) || ((LA735_3 >= NATIONAL_SYMBOL) && (LA735_3 <= NCHAR_SYMBOL)) || LA735_3 == NVARCHAR_SYMBOL || ((LA735_3 >= POINT_SYMBOL) && (LA735_3 <= POLYGON_SYMBOL)) || LA735_3 == SERIAL_SYMBOL || LA735_3 == TEXT_SYMBOL || LA735_3 == TIMESTAMP_SYMBOL || LA735_3 == TIME_SYMBOL || LA735_3 == YEAR_SYMBOL || ((LA735_3 >= BIGINT_SYMBOL) && (LA735_3 <= BINARY_SYMBOL)) || LA735_3 == BLOB_SYMBOL || LA735_3 == CHAR_SYMBOL || LA735_3 == DECIMAL_SYMBOL || LA735_3 == FLOAT_SYMBOL || LA735_3 == INT_SYMBOL || ((LA735_3 >= LONGBLOB_SYMBOL) && (LA735_3 <= LONGTEXT_SYMBOL)) || LA735_3 == LONG_SYMBOL || ((LA735_3 >= MEDIUMBLOB_SYMBOL) && (LA735_3 <= MEDIUMTEXT_SYMBOL)) || LA735_3 == NUMERIC_SYMBOL || LA735_3 == REAL_SYMBOL || LA735_3 == SET_SYMBOL || LA735_3 == SMALLINT_SYMBOL || ((LA735_3 >= TINYBLOB_SYMBOL) && (LA735_3 <= TINYTEXT_SYMBOL)) || LA735_3 == VARBINARY_SYMBOL || LA735_3 == VARCHAR_SYMBOL || LA735_3 == COMMA_SYMBOL || LA735_3 == DOUBLE_SYMBOL))
                            {
                                alt735=1;
                            }
                            else if ( (LA735_3 == CONDITION_SYMBOL))
                            {
                                alt735=2;
                            }
                            else if ( (LA735_3 == CURSOR_SYMBOL))
                            {
                                alt735=4;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 735;
                                EXCEPTION->state        = 3;


                                goto rulesp_declarationEx;

                            }
                        }
                    }
                    else if ( (((LA735_0 >= ACTION_SYMBOL) && (LA735_0 <= SHARE_SYMBOL)) || ((LA735_0 >= SLOW_SYMBOL) && (LA735_0 <= YEAR_SYMBOL))))
                    {
                        {
                            int LA735_4 = LA(2);
                            if ( (LA735_4 == BIT_SYMBOL || ((LA735_4 >= BOOL_SYMBOL) && (LA735_4 <= BOOLEAN_SYMBOL)) || ((LA735_4 >= DATETIME_SYMBOL) && (LA735_4 <= DATE_SYMBOL)) || LA735_4 == ENUM_SYMBOL || LA735_4 == FIXED_SYMBOL || ((LA735_4 >= GEOMETRY_SYMBOL) && (LA735_4 <= GEOMETRYCOLLECTION_SYMBOL)) || LA735_4 == JSON_SYMBOL || LA735_4 == LINESTRING_SYMBOL || ((LA735_4 >= MULTILINESTRING_SYMBOL) && (LA735_4 <= MULTIPOLYGON_SYMBOL)) || ((LA735_4 >= NATIONAL_SYMBOL) && (LA735_4 <= NCHAR_SYMBOL)) || LA735_4 == NVARCHAR_SYMBOL || ((LA735_4 >= POINT_SYMBOL) && (LA735_4 <= POLYGON_SYMBOL)) || LA735_4 == SERIAL_SYMBOL || LA735_4 == TEXT_SYMBOL || LA735_4 == TIMESTAMP_SYMBOL || LA735_4 == TIME_SYMBOL || LA735_4 == YEAR_SYMBOL || ((LA735_4 >= BIGINT_SYMBOL) && (LA735_4 <= BINARY_SYMBOL)) || LA735_4 == BLOB_SYMBOL || LA735_4 == CHAR_SYMBOL || LA735_4 == DECIMAL_SYMBOL || LA735_4 == FLOAT_SYMBOL || LA735_4 == INT_SYMBOL || ((LA735_4 >= LONGBLOB_SYMBOL) && (LA735_4 <= LONGTEXT_SYMBOL)) || LA735_4 == LONG_SYMBOL || ((LA735_4 >= MEDIUMBLOB_SYMBOL) && (LA735_4 <= MEDIUMTEXT_SYMBOL)) || LA735_4 == NUMERIC_SYMBOL || LA735_4 == REAL_SYMBOL || LA735_4 == SET_SYMBOL || LA735_4 == SMALLINT_SYMBOL || ((LA735_4 >= TINYBLOB_SYMBOL) && (LA735_4 <= TINYTEXT_SYMBOL)) || LA735_4 == VARBINARY_SYMBOL || LA735_4 == VARCHAR_SYMBOL || LA735_4 == COMMA_SYMBOL || LA735_4 == DOUBLE_SYMBOL))
                            {
                                alt735=1;
                            }
                            else if ( (LA735_4 == CONDITION_SYMBOL))
                            {
                                alt735=2;
                            }
                            else if ( (LA735_4 == CURSOR_SYMBOL))
                            {
                                alt735=4;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 735;
                                EXCEPTION->state        = 4;


                                goto rulesp_declarationEx;

                            }
                        }
                    }
                    else if ( (((LA735_0 >= ACCOUNT_SYMBOL) && (LA735_0 <= XA_SYMBOL)) || LA735_0 == SHUTDOWN_SYMBOL))
                    {
                        {
                            int LA735_5 = LA(2);
                            if ( (LA735_5 == BIT_SYMBOL || ((LA735_5 >= BOOL_SYMBOL) && (LA735_5 <= BOOLEAN_SYMBOL)) || ((LA735_5 >= DATETIME_SYMBOL) && (LA735_5 <= DATE_SYMBOL)) || LA735_5 == ENUM_SYMBOL || LA735_5 == FIXED_SYMBOL || ((LA735_5 >= GEOMETRY_SYMBOL) && (LA735_5 <= GEOMETRYCOLLECTION_SYMBOL)) || LA735_5 == JSON_SYMBOL || LA735_5 == LINESTRING_SYMBOL || ((LA735_5 >= MULTILINESTRING_SYMBOL) && (LA735_5 <= MULTIPOLYGON_SYMBOL)) || ((LA735_5 >= NATIONAL_SYMBOL) && (LA735_5 <= NCHAR_SYMBOL)) || LA735_5 == NVARCHAR_SYMBOL || ((LA735_5 >= POINT_SYMBOL) && (LA735_5 <= POLYGON_SYMBOL)) || LA735_5 == SERIAL_SYMBOL || LA735_5 == TEXT_SYMBOL || LA735_5 == TIMESTAMP_SYMBOL || LA735_5 == TIME_SYMBOL || LA735_5 == YEAR_SYMBOL || ((LA735_5 >= BIGINT_SYMBOL) && (LA735_5 <= BINARY_SYMBOL)) || LA735_5 == BLOB_SYMBOL || LA735_5 == CHAR_SYMBOL || LA735_5 == DECIMAL_SYMBOL || LA735_5 == FLOAT_SYMBOL || LA735_5 == INT_SYMBOL || ((LA735_5 >= LONGBLOB_SYMBOL) && (LA735_5 <= LONGTEXT_SYMBOL)) || LA735_5 == LONG_SYMBOL || ((LA735_5 >= MEDIUMBLOB_SYMBOL) && (LA735_5 <= MEDIUMTEXT_SYMBOL)) || LA735_5 == NUMERIC_SYMBOL || LA735_5 == REAL_SYMBOL || LA735_5 == SET_SYMBOL || LA735_5 == SMALLINT_SYMBOL || ((LA735_5 >= TINYBLOB_SYMBOL) && (LA735_5 <= TINYTEXT_SYMBOL)) || LA735_5 == VARBINARY_SYMBOL || LA735_5 == VARCHAR_SYMBOL || LA735_5 == COMMA_SYMBOL || LA735_5 == DOUBLE_SYMBOL))
                            {
                                alt735=1;
                            }
                            else if ( (LA735_5 == CONDITION_SYMBOL))
                            {
                                alt735=2;
                            }
                            else if ( (LA735_5 == CURSOR_SYMBOL))
                            {
                                alt735=4;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 735;
                                EXCEPTION->state        = 5;


                                goto rulesp_declarationEx;

                            }
                        }
                    }
                    else if ( (LA735_0 == CONTINUE_SYMBOL || LA735_0 == EXIT_SYMBOL || LA735_0 == UNDO_SYMBOL))
                    {
                        alt735=3;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 735;
                        EXCEPTION->state        = 0;


                        goto rulesp_declarationEx;

                    }
                }
                switch (alt735)
                {
            	case 1:
            	    // MySQL.g:2774:3: variable_declaration
            	    {
            	        FOLLOWPUSH(FOLLOW_variable_declaration_in_sp_declaration14017);
            	        variable_declaration2659=variable_declaration(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesp_declarationEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, variable_declaration2659.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2775:5: condition_declaration
            	    {
            	        FOLLOWPUSH(FOLLOW_condition_declaration_in_sp_declaration14023);
            	        condition_declaration2660=condition_declaration(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesp_declarationEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, condition_declaration2660.tree);

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:2776:5: handler_declaration
            	    {
            	        FOLLOWPUSH(FOLLOW_handler_declaration_in_sp_declaration14029);
            	        handler_declaration2661=handler_declaration(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesp_declarationEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, handler_declaration2661.tree);

            	    }
            	    break;
            	case 4:
            	    // MySQL.g:2777:5: cursor_declaration
            	    {
            	        FOLLOWPUSH(FOLLOW_cursor_declaration_in_sp_declaration14035);
            	        cursor_declaration2662=cursor_declaration(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesp_declarationEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, cursor_declaration2662.tree);

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulesp_declarationEx; /* Prevent compiler warnings */
    rulesp_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 sp_declaration */

/**
 * $ANTLR start variable_declaration
 * MySQL.g:2781:1: variable_declaration : identifier_list data_type ( COLLATE_SYMBOL collation_name_or_default )? ( DEFAULT_SYMBOL expression )? ;
 */
static MySQLParser_variable_declaration_return
variable_declaration(pMySQLParser ctx)
{
    MySQLParser_variable_declaration_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    COLLATE_SYMBOL2665;
    pANTLR3_COMMON_TOKEN    DEFAULT_SYMBOL2667;
    MySQLParser_identifier_list_return identifier_list2663;
    #undef	RETURN_TYPE_identifier_list2663
    #define	RETURN_TYPE_identifier_list2663 MySQLParser_identifier_list_return

    MySQLParser_data_type_return data_type2664;
    #undef	RETURN_TYPE_data_type2664
    #define	RETURN_TYPE_data_type2664 MySQLParser_data_type_return

    MySQLParser_collation_name_or_default_return collation_name_or_default2666;
    #undef	RETURN_TYPE_collation_name_or_default2666
    #define	RETURN_TYPE_collation_name_or_default2666 MySQLParser_collation_name_or_default_return

    MySQLParser_expression_return expression2668;
    #undef	RETURN_TYPE_expression2668
    #define	RETURN_TYPE_expression2668 MySQLParser_expression_return

    pANTLR3_BASE_TREE COLLATE_SYMBOL2665_tree;
    pANTLR3_BASE_TREE DEFAULT_SYMBOL2667_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COLLATE_SYMBOL2665       = NULL;
    DEFAULT_SYMBOL2667       = NULL;
    identifier_list2663.tree = NULL;

    data_type2664.tree = NULL;

    collation_name_or_default2666.tree = NULL;

    expression2668.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COLLATE_SYMBOL2665_tree   = NULL;
    DEFAULT_SYMBOL2667_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2781:21: ( identifier_list data_type ( COLLATE_SYMBOL collation_name_or_default )? ( DEFAULT_SYMBOL expression )? )
        // MySQL.g:2782:2: identifier_list data_type ( COLLATE_SYMBOL collation_name_or_default )? ( DEFAULT_SYMBOL expression )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_identifier_list_in_variable_declaration14048);
            identifier_list2663=identifier_list(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulevariable_declarationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier_list2663.tree);

            FOLLOWPUSH(FOLLOW_data_type_in_variable_declaration14050);
            data_type2664=data_type(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulevariable_declarationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, data_type2664.tree);

            // MySQL.g:2782:28: ( COLLATE_SYMBOL collation_name_or_default )?
            {
                int alt736=2;
                switch ( LA(1) )
                {
                    case COLLATE_SYMBOL:
                    	{
                    		alt736=1;
                    	}
                        break;
                }

                switch (alt736)
                {
            	case 1:
            	    // MySQL.g:2782:29: COLLATE_SYMBOL collation_name_or_default
            	    {
            	        COLLATE_SYMBOL2665 = (pANTLR3_COMMON_TOKEN) MATCHT(COLLATE_SYMBOL, &FOLLOW_COLLATE_SYMBOL_in_variable_declaration14053);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulevariable_declarationEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COLLATE_SYMBOL2665_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COLLATE_SYMBOL2665));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COLLATE_SYMBOL2665_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_collation_name_or_default_in_variable_declaration14055);
            	        collation_name_or_default2666=collation_name_or_default(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulevariable_declarationEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, collation_name_or_default2666.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:2782:72: ( DEFAULT_SYMBOL expression )?
            {
                int alt737=2;
                switch ( LA(1) )
                {
                    case DEFAULT_SYMBOL:
                    	{
                    		alt737=1;
                    	}
                        break;
                }

                switch (alt737)
                {
            	case 1:
            	    // MySQL.g:2782:73: DEFAULT_SYMBOL expression
            	    {
            	        DEFAULT_SYMBOL2667 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_variable_declaration14060);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulevariable_declarationEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DEFAULT_SYMBOL2667_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL2667));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL2667_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_expression_in_variable_declaration14062);
            	        expression2668=expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulevariable_declarationEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2668.tree);

            	    }
            	    break;

                }
            }

        }

    }

    // 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:2785:1: condition_declaration : identifier CONDITION_SYMBOL FOR_SYMBOL sp_condition ;
 */
static MySQLParser_condition_declaration_return
condition_declaration(pMySQLParser ctx)
{
    MySQLParser_condition_declaration_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    CONDITION_SYMBOL2670;
    pANTLR3_COMMON_TOKEN    FOR_SYMBOL2671;
    MySQLParser_identifier_return identifier2669;
    #undef	RETURN_TYPE_identifier2669
    #define	RETURN_TYPE_identifier2669 MySQLParser_identifier_return

    MySQLParser_sp_condition_return sp_condition2672;
    #undef	RETURN_TYPE_sp_condition2672
    #define	RETURN_TYPE_sp_condition2672 MySQLParser_sp_condition_return

    pANTLR3_BASE_TREE CONDITION_SYMBOL2670_tree;
    pANTLR3_BASE_TREE FOR_SYMBOL2671_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CONDITION_SYMBOL2670       = NULL;
    FOR_SYMBOL2671       = NULL;
    identifier2669.tree = NULL;

    sp_condition2672.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CONDITION_SYMBOL2670_tree   = NULL;
    FOR_SYMBOL2671_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2785:22: ( identifier CONDITION_SYMBOL FOR_SYMBOL sp_condition )
        // MySQL.g:2786:2: identifier CONDITION_SYMBOL FOR_SYMBOL sp_condition
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_identifier_in_condition_declaration14073);
            identifier2669=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecondition_declarationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2669.tree);

            CONDITION_SYMBOL2670 = (pANTLR3_COMMON_TOKEN) MATCHT(CONDITION_SYMBOL, &FOLLOW_CONDITION_SYMBOL_in_condition_declaration14075);
            if  (HASEXCEPTION())
            {
                goto rulecondition_declarationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CONDITION_SYMBOL2670_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CONDITION_SYMBOL2670));
            ADAPTOR->addChild(ADAPTOR, root_0, CONDITION_SYMBOL2670_tree);
            }

            FOR_SYMBOL2671 = (pANTLR3_COMMON_TOKEN) MATCHT(FOR_SYMBOL, &FOLLOW_FOR_SYMBOL_in_condition_declaration14077);
            if  (HASEXCEPTION())
            {
                goto rulecondition_declarationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            FOR_SYMBOL2671_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOR_SYMBOL2671));
            ADAPTOR->addChild(ADAPTOR, root_0, FOR_SYMBOL2671_tree);
            }

            FOLLOWPUSH(FOLLOW_sp_condition_in_condition_declaration14079);
            sp_condition2672=sp_condition(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecondition_declarationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, sp_condition2672.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:2789: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_number2673;
    #undef	RETURN_TYPE_ulong_number2673
    #define	RETURN_TYPE_ulong_number2673 MySQLParser_ulong_number_return

    MySQLParser_sqlstate_return sqlstate2674;
    #undef	RETURN_TYPE_sqlstate2674
    #define	RETURN_TYPE_sqlstate2674 MySQLParser_sqlstate_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    ulong_number2673.tree = NULL;

    sqlstate2674.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2789:13: ( ulong_number | sqlstate )

            ANTLR3_UINT32 alt738;

            alt738=2;

            switch ( LA(1) )
            {
            case DECIMAL_NUMBER:
            case FLOAT_NUMBER:
            case HEX_NUMBER:
            case INT_NUMBER:
            case LONG_NUMBER:
            case ULONGLONG_NUMBER:
            	{
            		alt738=1;
            	}
                break;
            case SQLSTATE_SYMBOL:
            	{
            		alt738=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 738;
                EXCEPTION->state        = 0;


                goto rulesp_conditionEx;

            }

            switch (alt738)
            {
        	case 1:
        	    // MySQL.g:2790:2: ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_ulong_number_in_sp_condition14088);
        	        ulong_number2673=ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulesp_conditionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number2673.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2791:4: sqlstate
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_sqlstate_in_sp_condition14093);
        	        sqlstate2674=sqlstate(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulesp_conditionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, sqlstate2674.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:2794: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_SYMBOL2675;
    pANTLR3_COMMON_TOKEN    VALUE_SYMBOL2676;
    MySQLParser_string_literal_return string_literal2677;
    #undef	RETURN_TYPE_string_literal2677
    #define	RETURN_TYPE_string_literal2677 MySQLParser_string_literal_return

    pANTLR3_BASE_TREE SQLSTATE_SYMBOL2675_tree;
    pANTLR3_BASE_TREE VALUE_SYMBOL2676_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SQLSTATE_SYMBOL2675       = NULL;
    VALUE_SYMBOL2676       = NULL;
    string_literal2677.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SQLSTATE_SYMBOL2675_tree   = NULL;
    VALUE_SYMBOL2676_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2794:9: ( SQLSTATE_SYMBOL ( VALUE_SYMBOL )? string_literal )
        // MySQL.g:2795:2: SQLSTATE_SYMBOL ( VALUE_SYMBOL )? string_literal
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            SQLSTATE_SYMBOL2675 = (pANTLR3_COMMON_TOKEN) MATCHT(SQLSTATE_SYMBOL, &FOLLOW_SQLSTATE_SYMBOL_in_sqlstate14102);
            if  (HASEXCEPTION())
            {
                goto rulesqlstateEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            SQLSTATE_SYMBOL2675_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SQLSTATE_SYMBOL2675));
            ADAPTOR->addChild(ADAPTOR, root_0, SQLSTATE_SYMBOL2675_tree);
            }

            // MySQL.g:2795:18: ( VALUE_SYMBOL )?
            {
                int alt739=2;
                switch ( LA(1) )
                {
                    case VALUE_SYMBOL:
                    	{
                    		alt739=1;
                    	}
                        break;
                }

                switch (alt739)
                {
            	case 1:
            	    // MySQL.g:2795:18: VALUE_SYMBOL
            	    {
            	        VALUE_SYMBOL2676 = (pANTLR3_COMMON_TOKEN) MATCHT(VALUE_SYMBOL, &FOLLOW_VALUE_SYMBOL_in_sqlstate14104);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesqlstateEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        VALUE_SYMBOL2676_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VALUE_SYMBOL2676));
            	        ADAPTOR->addChild(ADAPTOR, root_0, VALUE_SYMBOL2676_tree);
            	        }

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_string_literal_in_sqlstate14107);
            string_literal2677=string_literal(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulesqlstateEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal2677.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 handler_declaration
 * MySQL.g:2798:1: handler_declaration : ( CONTINUE_SYMBOL | EXIT_SYMBOL | UNDO_SYMBOL ) HANDLER_SYMBOL FOR_SYMBOL handler_condition ( COMMA_SYMBOL handler_condition )* compound_statement ;
 */
static MySQLParser_handler_declaration_return
handler_declaration(pMySQLParser ctx)
{
    MySQLParser_handler_declaration_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set2678;
    pANTLR3_COMMON_TOKEN    HANDLER_SYMBOL2679;
    pANTLR3_COMMON_TOKEN    FOR_SYMBOL2680;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2682;
    MySQLParser_handler_condition_return handler_condition2681;
    #undef	RETURN_TYPE_handler_condition2681
    #define	RETURN_TYPE_handler_condition2681 MySQLParser_handler_condition_return

    MySQLParser_handler_condition_return handler_condition2683;
    #undef	RETURN_TYPE_handler_condition2683
    #define	RETURN_TYPE_handler_condition2683 MySQLParser_handler_condition_return

    MySQLParser_compound_statement_return compound_statement2684;
    #undef	RETURN_TYPE_compound_statement2684
    #define	RETURN_TYPE_compound_statement2684 MySQLParser_compound_statement_return

    pANTLR3_BASE_TREE set2678_tree;
    pANTLR3_BASE_TREE HANDLER_SYMBOL2679_tree;
    pANTLR3_BASE_TREE FOR_SYMBOL2680_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2682_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2678       = NULL;
    HANDLER_SYMBOL2679       = NULL;
    FOR_SYMBOL2680       = NULL;
    COMMA_SYMBOL2682       = NULL;
    handler_condition2681.tree = NULL;

    handler_condition2683.tree = NULL;

    compound_statement2684.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2678_tree   = NULL;
    HANDLER_SYMBOL2679_tree   = NULL;
    FOR_SYMBOL2680_tree   = NULL;
    COMMA_SYMBOL2682_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2798:20: ( ( CONTINUE_SYMBOL | EXIT_SYMBOL | UNDO_SYMBOL ) HANDLER_SYMBOL FOR_SYMBOL handler_condition ( COMMA_SYMBOL handler_condition )* compound_statement )
        // MySQL.g:2799:2: ( CONTINUE_SYMBOL | EXIT_SYMBOL | UNDO_SYMBOL ) HANDLER_SYMBOL FOR_SYMBOL handler_condition ( COMMA_SYMBOL handler_condition )* compound_statement
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set2678=(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, set2678))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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_SYMBOL2679 = (pANTLR3_COMMON_TOKEN) MATCHT(HANDLER_SYMBOL, &FOLLOW_HANDLER_SYMBOL_in_handler_declaration14128);
            if  (HASEXCEPTION())
            {
                goto rulehandler_declarationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            HANDLER_SYMBOL2679_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, HANDLER_SYMBOL2679));
            ADAPTOR->addChild(ADAPTOR, root_0, HANDLER_SYMBOL2679_tree);
            }

            FOR_SYMBOL2680 = (pANTLR3_COMMON_TOKEN) MATCHT(FOR_SYMBOL, &FOLLOW_FOR_SYMBOL_in_handler_declaration14132);
            if  (HASEXCEPTION())
            {
                goto rulehandler_declarationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            FOR_SYMBOL2680_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOR_SYMBOL2680));
            ADAPTOR->addChild(ADAPTOR, root_0, FOR_SYMBOL2680_tree);
            }

            FOLLOWPUSH(FOLLOW_handler_condition_in_handler_declaration14134);
            handler_condition2681=handler_condition(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulehandler_declarationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, handler_condition2681.tree);

            // MySQL.g:2800:32: ( COMMA_SYMBOL handler_condition )*

            for (;;)
            {
                int alt740=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt740=1;
                	}
                    break;

                }

                switch (alt740)
                {
            	case 1:
            	    // MySQL.g:2800:33: COMMA_SYMBOL handler_condition
            	    {
            	        COMMA_SYMBOL2682 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_handler_declaration14137);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulehandler_declarationEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL2682_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2682));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2682_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_handler_condition_in_handler_declaration14139);
            	        handler_condition2683=handler_condition(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulehandler_declarationEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, handler_condition2683.tree);

            	    }
            	    break;

            	default:
            	    goto loop740;	/* break out of the loop */
            	    break;
                }
            }
            loop740: ; /* Jump out to here if this rule does not match */


            FOLLOWPUSH(FOLLOW_compound_statement_in_handler_declaration14143);
            compound_statement2684=compound_statement(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulehandler_declarationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, compound_statement2684.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:2803:1: handler_condition : ( sp_condition | identifier | SQLWARNING_SYMBOL | not_rule 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_SYMBOL2687;
    pANTLR3_COMMON_TOKEN    FOUND_SYMBOL2689;
    pANTLR3_COMMON_TOKEN    SQLEXCEPTION_SYMBOL2690;
    MySQLParser_sp_condition_return sp_condition2685;
    #undef	RETURN_TYPE_sp_condition2685
    #define	RETURN_TYPE_sp_condition2685 MySQLParser_sp_condition_return

    MySQLParser_identifier_return identifier2686;
    #undef	RETURN_TYPE_identifier2686
    #define	RETURN_TYPE_identifier2686 MySQLParser_identifier_return

    MySQLParser_not_rule_return not_rule2688;
    #undef	RETURN_TYPE_not_rule2688
    #define	RETURN_TYPE_not_rule2688 MySQLParser_not_rule_return

    pANTLR3_BASE_TREE SQLWARNING_SYMBOL2687_tree;
    pANTLR3_BASE_TREE FOUND_SYMBOL2689_tree;
    pANTLR3_BASE_TREE SQLEXCEPTION_SYMBOL2690_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SQLWARNING_SYMBOL2687       = NULL;
    FOUND_SYMBOL2689       = NULL;
    SQLEXCEPTION_SYMBOL2690       = NULL;
    sp_condition2685.tree = NULL;

    identifier2686.tree = NULL;

    not_rule2688.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SQLWARNING_SYMBOL2687_tree   = NULL;
    FOUND_SYMBOL2689_tree   = NULL;
    SQLEXCEPTION_SYMBOL2690_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2803:18: ( sp_condition | identifier | SQLWARNING_SYMBOL | not_rule FOUND_SYMBOL | SQLEXCEPTION_SYMBOL )

            ANTLR3_UINT32 alt741;

            alt741=5;

            {
                int LA741_0 = LA(1);
                if ( (LA741_0 == SQLSTATE_SYMBOL || LA741_0 == DECIMAL_NUMBER || LA741_0 == FLOAT_NUMBER || LA741_0 == HEX_NUMBER || LA741_0 == INT_NUMBER || LA741_0 == LONG_NUMBER || LA741_0 == ULONGLONG_NUMBER))
                {
                    alt741=1;
                }
                else if ( (((LA741_0 >= ACCOUNT_SYMBOL) && (LA741_0 <= YEAR_SYMBOL)) || LA741_0 == BACK_TICK_QUOTED_ID || LA741_0 == DOUBLE_QUOTED_TEXT || LA741_0 == IDENTIFIER))
                {
                    alt741=2;
                }
                else if ( (LA741_0 == SQLWARNING_SYMBOL))
                {
                    alt741=3;
                }
                else if ( (((LA741_0 >= NOT2_SYMBOL) && (LA741_0 <= NOT_SYMBOL))))
                {
                    alt741=4;
                }
                else if ( (LA741_0 == SQLEXCEPTION_SYMBOL))
                {
                    alt741=5;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 741;
                    EXCEPTION->state        = 0;


                    goto rulehandler_conditionEx;

                }
            }
            switch (alt741)
            {
        	case 1:
        	    // MySQL.g:2804:2: sp_condition
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_sp_condition_in_handler_condition14152);
        	        sp_condition2685=sp_condition(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulehandler_conditionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, sp_condition2685.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2805:4: identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_identifier_in_handler_condition14157);
        	        identifier2686=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulehandler_conditionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2686.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2806:4: SQLWARNING_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SQLWARNING_SYMBOL2687 = (pANTLR3_COMMON_TOKEN) MATCHT(SQLWARNING_SYMBOL, &FOLLOW_SQLWARNING_SYMBOL_in_handler_condition14162);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulehandler_conditionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SQLWARNING_SYMBOL2687_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SQLWARNING_SYMBOL2687));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SQLWARNING_SYMBOL2687_tree);
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:2807:4: not_rule FOUND_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_not_rule_in_handler_condition14167);
        	        not_rule2688=not_rule(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulehandler_conditionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, not_rule2688.tree);

        	        FOUND_SYMBOL2689 = (pANTLR3_COMMON_TOKEN) MATCHT(FOUND_SYMBOL, &FOLLOW_FOUND_SYMBOL_in_handler_condition14169);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulehandler_conditionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FOUND_SYMBOL2689_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOUND_SYMBOL2689));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FOUND_SYMBOL2689_tree);
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:2808:4: SQLEXCEPTION_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SQLEXCEPTION_SYMBOL2690 = (pANTLR3_COMMON_TOKEN) MATCHT(SQLEXCEPTION_SYMBOL, &FOLLOW_SQLEXCEPTION_SYMBOL_in_handler_condition14174);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulehandler_conditionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SQLEXCEPTION_SYMBOL2690_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SQLEXCEPTION_SYMBOL2690));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SQLEXCEPTION_SYMBOL2690_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 cursor_declaration
 * MySQL.g:2811:1: cursor_declaration : identifier CURSOR_SYMBOL FOR_SYMBOL select_statement ;
 */
static MySQLParser_cursor_declaration_return
cursor_declaration(pMySQLParser ctx)
{
    MySQLParser_cursor_declaration_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    CURSOR_SYMBOL2692;
    pANTLR3_COMMON_TOKEN    FOR_SYMBOL2693;
    MySQLParser_identifier_return identifier2691;
    #undef	RETURN_TYPE_identifier2691
    #define	RETURN_TYPE_identifier2691 MySQLParser_identifier_return

    MySQLParser_select_statement_return select_statement2694;
    #undef	RETURN_TYPE_select_statement2694
    #define	RETURN_TYPE_select_statement2694 MySQLParser_select_statement_return

    pANTLR3_BASE_TREE CURSOR_SYMBOL2692_tree;
    pANTLR3_BASE_TREE FOR_SYMBOL2693_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CURSOR_SYMBOL2692       = NULL;
    FOR_SYMBOL2693       = NULL;
    identifier2691.tree = NULL;

    select_statement2694.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CURSOR_SYMBOL2692_tree   = NULL;
    FOR_SYMBOL2693_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2811:19: ( identifier CURSOR_SYMBOL FOR_SYMBOL select_statement )
        // MySQL.g:2812:2: identifier CURSOR_SYMBOL FOR_SYMBOL select_statement
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_identifier_in_cursor_declaration14183);
            identifier2691=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecursor_declarationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2691.tree);

            CURSOR_SYMBOL2692 = (pANTLR3_COMMON_TOKEN) MATCHT(CURSOR_SYMBOL, &FOLLOW_CURSOR_SYMBOL_in_cursor_declaration14185);
            if  (HASEXCEPTION())
            {
                goto rulecursor_declarationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CURSOR_SYMBOL2692_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CURSOR_SYMBOL2692));
            ADAPTOR->addChild(ADAPTOR, root_0, CURSOR_SYMBOL2692_tree);
            }

            FOR_SYMBOL2693 = (pANTLR3_COMMON_TOKEN) MATCHT(FOR_SYMBOL, &FOLLOW_FOR_SYMBOL_in_cursor_declaration14187);
            if  (HASEXCEPTION())
            {
                goto rulecursor_declarationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            FOR_SYMBOL2693_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOR_SYMBOL2693));
            ADAPTOR->addChild(ADAPTOR, root_0, FOR_SYMBOL2693_tree);
            }

            FOLLOWPUSH(FOLLOW_select_statement_in_cursor_declaration14189);
            select_statement2694=select_statement(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecursor_declarationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_statement2694.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 iterate_statement
 * MySQL.g:2815: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_SYMBOL2695;
    MySQLParser_label_identifier_return label_identifier2696;
    #undef	RETURN_TYPE_label_identifier2696
    #define	RETURN_TYPE_label_identifier2696 MySQLParser_label_identifier_return

    pANTLR3_BASE_TREE ITERATE_SYMBOL2695_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ITERATE_SYMBOL2695       = NULL;
    label_identifier2696.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ITERATE_SYMBOL2695_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2815:18: ( ITERATE_SYMBOL label_identifier )
        // MySQL.g:2816:2: ITERATE_SYMBOL label_identifier
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            ITERATE_SYMBOL2695 = (pANTLR3_COMMON_TOKEN) MATCHT(ITERATE_SYMBOL, &FOLLOW_ITERATE_SYMBOL_in_iterate_statement14198);
            if  (HASEXCEPTION())
            {
                goto ruleiterate_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ITERATE_SYMBOL2695_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ITERATE_SYMBOL2695));
            ADAPTOR->addChild(ADAPTOR, root_0, ITERATE_SYMBOL2695_tree);
            }

            FOLLOWPUSH(FOLLOW_label_identifier_in_iterate_statement14200);
            label_identifier2696=label_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleiterate_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, label_identifier2696.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:2819: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_SYMBOL2697;
    MySQLParser_label_identifier_return label_identifier2698;
    #undef	RETURN_TYPE_label_identifier2698
    #define	RETURN_TYPE_label_identifier2698 MySQLParser_label_identifier_return

    pANTLR3_BASE_TREE LEAVE_SYMBOL2697_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    LEAVE_SYMBOL2697       = NULL;
    label_identifier2698.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    LEAVE_SYMBOL2697_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2819:16: ( LEAVE_SYMBOL label_identifier )
        // MySQL.g:2820:2: LEAVE_SYMBOL label_identifier
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            LEAVE_SYMBOL2697 = (pANTLR3_COMMON_TOKEN) MATCHT(LEAVE_SYMBOL, &FOLLOW_LEAVE_SYMBOL_in_leave_statement14209);
            if  (HASEXCEPTION())
            {
                goto ruleleave_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            LEAVE_SYMBOL2697_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LEAVE_SYMBOL2697));
            ADAPTOR->addChild(ADAPTOR, root_0, LEAVE_SYMBOL2697_tree);
            }

            FOLLOWPUSH(FOLLOW_label_identifier_in_leave_statement14211);
            label_identifier2698=label_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleleave_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, label_identifier2698.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 get_diagnostics
 * MySQL.g:2823: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_SYMBOL2699;
    pANTLR3_COMMON_TOKEN    CURRENT_SYMBOL2700;
    pANTLR3_COMMON_TOKEN    STACKED_SYMBOL2701;
    pANTLR3_COMMON_TOKEN    DIAGNOSTICS_SYMBOL2702;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2704;
    pANTLR3_COMMON_TOKEN    CONDITION_SYMBOL2706;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2709;
    MySQLParser_statement_information_item_return statement_information_item2703;
    #undef	RETURN_TYPE_statement_information_item2703
    #define	RETURN_TYPE_statement_information_item2703 MySQLParser_statement_information_item_return

    MySQLParser_statement_information_item_return statement_information_item2705;
    #undef	RETURN_TYPE_statement_information_item2705
    #define	RETURN_TYPE_statement_information_item2705 MySQLParser_statement_information_item_return

    MySQLParser_signal_allowed_expression_return signal_allowed_expression2707;
    #undef	RETURN_TYPE_signal_allowed_expression2707
    #define	RETURN_TYPE_signal_allowed_expression2707 MySQLParser_signal_allowed_expression_return

    MySQLParser_condition_information_item_return condition_information_item2708;
    #undef	RETURN_TYPE_condition_information_item2708
    #define	RETURN_TYPE_condition_information_item2708 MySQLParser_condition_information_item_return

    MySQLParser_condition_information_item_return condition_information_item2710;
    #undef	RETURN_TYPE_condition_information_item2710
    #define	RETURN_TYPE_condition_information_item2710 MySQLParser_condition_information_item_return

    pANTLR3_BASE_TREE GET_SYMBOL2699_tree;
    pANTLR3_BASE_TREE CURRENT_SYMBOL2700_tree;
    pANTLR3_BASE_TREE STACKED_SYMBOL2701_tree;
    pANTLR3_BASE_TREE DIAGNOSTICS_SYMBOL2702_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2704_tree;
    pANTLR3_BASE_TREE CONDITION_SYMBOL2706_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2709_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    GET_SYMBOL2699       = NULL;
    CURRENT_SYMBOL2700       = NULL;
    STACKED_SYMBOL2701       = NULL;
    DIAGNOSTICS_SYMBOL2702       = NULL;
    COMMA_SYMBOL2704       = NULL;
    CONDITION_SYMBOL2706       = NULL;
    COMMA_SYMBOL2709       = NULL;
    statement_information_item2703.tree = NULL;

    statement_information_item2705.tree = NULL;

    signal_allowed_expression2707.tree = NULL;

    condition_information_item2708.tree = NULL;

    condition_information_item2710.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    GET_SYMBOL2699_tree   = NULL;
    CURRENT_SYMBOL2700_tree   = NULL;
    STACKED_SYMBOL2701_tree   = NULL;
    DIAGNOSTICS_SYMBOL2702_tree   = NULL;
    COMMA_SYMBOL2704_tree   = NULL;
    CONDITION_SYMBOL2706_tree   = NULL;
    COMMA_SYMBOL2709_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2823: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:2824: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_SYMBOL2699 = (pANTLR3_COMMON_TOKEN) MATCHT(GET_SYMBOL, &FOLLOW_GET_SYMBOL_in_get_diagnostics14220);
            if  (HASEXCEPTION())
            {
                goto ruleget_diagnosticsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            GET_SYMBOL2699_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GET_SYMBOL2699));
            ADAPTOR->addChild(ADAPTOR, root_0, GET_SYMBOL2699_tree);
            }

            // MySQL.g:2825:2: ( CURRENT_SYMBOL |{...}? STACKED_SYMBOL )?
            {
                int alt742=3;
                switch ( LA(1) )
                {
                    case CURRENT_SYMBOL:
                    	{
                    		alt742=1;
                    	}
                        break;
                    case STACKED_SYMBOL:
                    	{
                    		alt742=2;
                    	}
                        break;
                }

                switch (alt742)
                {
            	case 1:
            	    // MySQL.g:2826:3: CURRENT_SYMBOL
            	    {
            	        CURRENT_SYMBOL2700 = (pANTLR3_COMMON_TOKEN) MATCHT(CURRENT_SYMBOL, &FOLLOW_CURRENT_SYMBOL_in_get_diagnostics14227);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleget_diagnosticsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CURRENT_SYMBOL2700_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CURRENT_SYMBOL2700));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CURRENT_SYMBOL2700_tree);
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2827: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_SYMBOL2701 = (pANTLR3_COMMON_TOKEN) MATCHT(STACKED_SYMBOL, &FOLLOW_STACKED_SYMBOL_in_get_diagnostics14235);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleget_diagnosticsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        STACKED_SYMBOL2701_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STACKED_SYMBOL2701));
            	        ADAPTOR->addChild(ADAPTOR, root_0, STACKED_SYMBOL2701_tree);
            	        }

            	    }
            	    break;

                }
            }

            DIAGNOSTICS_SYMBOL2702 = (pANTLR3_COMMON_TOKEN) MATCHT(DIAGNOSTICS_SYMBOL, &FOLLOW_DIAGNOSTICS_SYMBOL_in_get_diagnostics14241);
            if  (HASEXCEPTION())
            {
                goto ruleget_diagnosticsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            DIAGNOSTICS_SYMBOL2702_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DIAGNOSTICS_SYMBOL2702));
            ADAPTOR->addChild(ADAPTOR, root_0, DIAGNOSTICS_SYMBOL2702_tree);
            }

            // MySQL.g:2829:2: ( statement_information_item ( COMMA_SYMBOL statement_information_item )* | CONDITION_SYMBOL signal_allowed_expression condition_information_item ( COMMA_SYMBOL condition_information_item )* )
            {
                int alt745=2;
                {
                    int LA745_0 = LA(1);
                    if ( (((LA745_0 >= ACCOUNT_SYMBOL) && (LA745_0 <= YEAR_SYMBOL)) || ((LA745_0 >= AT_AT_SIGN_SYMBOL) && (LA745_0 <= AT_TEXT_SUFFIX)) || LA745_0 == BACK_TICK_QUOTED_ID || LA745_0 == DOUBLE_QUOTED_TEXT || LA745_0 == IDENTIFIER))
                    {
                        alt745=1;
                    }
                    else if ( (LA745_0 == CONDITION_SYMBOL))
                    {
                        alt745=2;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 745;
                        EXCEPTION->state        = 0;


                        goto ruleget_diagnosticsEx;

                    }
                }
                switch (alt745)
                {
            	case 1:
            	    // MySQL.g:2830:3: statement_information_item ( COMMA_SYMBOL statement_information_item )*
            	    {
            	        FOLLOWPUSH(FOLLOW_statement_information_item_in_get_diagnostics14248);
            	        statement_information_item2703=statement_information_item(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleget_diagnosticsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, statement_information_item2703.tree);

            	        // MySQL.g:2830:30: ( COMMA_SYMBOL statement_information_item )*

            	        for (;;)
            	        {
            	            int alt743=2;
            	            switch ( LA(1) )
            	            {
            	            case COMMA_SYMBOL:
            	            	{
            	            		alt743=1;
            	            	}
            	                break;

            	            }

            	            switch (alt743)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2830:31: COMMA_SYMBOL statement_information_item
            	        	    {
            	        	        COMMA_SYMBOL2704 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_get_diagnostics14251);
            	        	        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_statement_information_item_in_get_diagnostics14253);
            	        	        statement_information_item2705=statement_information_item(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleget_diagnosticsEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, statement_information_item2705.tree);

            	        	    }
            	        	    break;

            	        	default:
            	        	    goto loop743;	/* break out of the loop */
            	        	    break;
            	            }
            	        }
            	        loop743: ; /* Jump out to here if this rule does not match */


            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2831:5: CONDITION_SYMBOL signal_allowed_expression condition_information_item ( COMMA_SYMBOL condition_information_item )*
            	    {
            	        CONDITION_SYMBOL2706 = (pANTLR3_COMMON_TOKEN) MATCHT(CONDITION_SYMBOL, &FOLLOW_CONDITION_SYMBOL_in_get_diagnostics14261);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleget_diagnosticsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CONDITION_SYMBOL2706_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CONDITION_SYMBOL2706));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CONDITION_SYMBOL2706_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_signal_allowed_expression_in_get_diagnostics14263);
            	        signal_allowed_expression2707=signal_allowed_expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleget_diagnosticsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, signal_allowed_expression2707.tree);

            	        FOLLOWPUSH(FOLLOW_condition_information_item_in_get_diagnostics14265);
            	        condition_information_item2708=condition_information_item(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleget_diagnosticsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, condition_information_item2708.tree);

            	        // MySQL.g:2831:75: ( COMMA_SYMBOL condition_information_item )*

            	        for (;;)
            	        {
            	            int alt744=2;
            	            switch ( LA(1) )
            	            {
            	            case COMMA_SYMBOL:
            	            	{
            	            		alt744=1;
            	            	}
            	                break;

            	            }

            	            switch (alt744)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2831:76: COMMA_SYMBOL condition_information_item
            	        	    {
            	        	        COMMA_SYMBOL2709 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_get_diagnostics14268);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleget_diagnosticsEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        COMMA_SYMBOL2709_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2709));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2709_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_condition_information_item_in_get_diagnostics14270);
            	        	        condition_information_item2710=condition_information_item(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleget_diagnosticsEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, condition_information_item2710.tree);

            	        	    }
            	        	    break;

            	        	default:
            	        	    goto loop744;	/* break out of the loop */
            	        	    break;
            	            }
            	        }
            	        loop744: ; /* 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:2836: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 literal2711;
    #undef	RETURN_TYPE_literal2711
    #define	RETURN_TYPE_literal2711 MySQLParser_literal_return

    MySQLParser_variable_return variable2712;
    #undef	RETURN_TYPE_variable2712
    #define	RETURN_TYPE_variable2712 MySQLParser_variable_return

    MySQLParser_qualified_identifier_return qualified_identifier2713;
    #undef	RETURN_TYPE_qualified_identifier2713
    #define	RETURN_TYPE_qualified_identifier2713 MySQLParser_qualified_identifier_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    literal2711.tree = NULL;

    variable2712.tree = NULL;

    qualified_identifier2713.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2836:26: ( literal | variable | qualified_identifier )

            ANTLR3_UINT32 alt746;

            alt746=3;

            {
                int LA746_0 = LA(1);
                if ( (LA746_0 == FALSE_SYMBOL || LA746_0 == NCHAR_TEXT || ((LA746_0 >= NULL2_SYMBOL) && (LA746_0 <= NULL_SYMBOL)) || LA746_0 == SINGLE_QUOTED_TEXT || LA746_0 == TRUE_SYMBOL || LA746_0 == BIN_NUMBER || LA746_0 == DECIMAL_NUMBER || LA746_0 == FLOAT_NUMBER || LA746_0 == HEX_NUMBER || LA746_0 == INT_NUMBER || LA746_0 == LONG_NUMBER || ((LA746_0 >= ULONGLONG_NUMBER) && (LA746_0 <= UNDERSCORE_CHARSET))))
                {
                    alt746=1;
                }
                else if ( (LA746_0 == DOUBLE_QUOTED_TEXT))
                {
                    {
                        int LA746_4 = LA(2);
                        if ( ((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))
                        {
                            alt746=1;
                        }
                        else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))
                        {
                            alt746=3;
                        }
                        else
                        {
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }


                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 746;
                            EXCEPTION->state        = 4;


                            goto rulesignal_allowed_expressionEx;

                        }
                    }
                }
                else if ( (LA746_0 == DATE_SYMBOL))
                {
                    {
                        int LA746_6 = LA(2);
                        if ( (LA746_6 == SINGLE_QUOTED_TEXT))
                        {
                            alt746=1;
                        }
                        else if ( (LA746_6 == EOF || ((LA746_6 >= ACCOUNT_SYMBOL) && (LA746_6 <= YEAR_SYMBOL)) || LA746_6 == SEMICOLON_SYMBOL || ((LA746_6 >= AT_AT_SIGN_SYMBOL) && (LA746_6 <= AT_TEXT_SUFFIX)) || LA746_6 == BACK_TICK_QUOTED_ID || LA746_6 == COMMA_SYMBOL || LA746_6 == DOT_SYMBOL || LA746_6 == DOUBLE_QUOTED_TEXT || LA746_6 == IDENTIFIER))
                        {
                            alt746=3;
                        }
                        else
                        {
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }


                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 746;
                            EXCEPTION->state        = 6;


                            goto rulesignal_allowed_expressionEx;

                        }
                    }
                }
                else if ( (LA746_0 == TIME_SYMBOL))
                {
                    {
                        int LA746_7 = LA(2);
                        if ( (LA746_7 == SINGLE_QUOTED_TEXT))
                        {
                            alt746=1;
                        }
                        else if ( (LA746_7 == EOF || ((LA746_7 >= ACCOUNT_SYMBOL) && (LA746_7 <= YEAR_SYMBOL)) || LA746_7 == SEMICOLON_SYMBOL || ((LA746_7 >= AT_AT_SIGN_SYMBOL) && (LA746_7 <= AT_TEXT_SUFFIX)) || LA746_7 == BACK_TICK_QUOTED_ID || LA746_7 == COMMA_SYMBOL || LA746_7 == DOT_SYMBOL || LA746_7 == DOUBLE_QUOTED_TEXT || LA746_7 == IDENTIFIER))
                        {
                            alt746=3;
                        }
                        else
                        {
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }


                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 746;
                            EXCEPTION->state        = 7;


                            goto rulesignal_allowed_expressionEx;

                        }
                    }
                }
                else if ( (LA746_0 == TIMESTAMP_SYMBOL))
                {
                    {
                        int LA746_8 = LA(2);
                        if ( (LA746_8 == SINGLE_QUOTED_TEXT))
                        {
                            alt746=1;
                        }
                        else if ( (LA746_8 == EOF || ((LA746_8 >= ACCOUNT_SYMBOL) && (LA746_8 <= YEAR_SYMBOL)) || LA746_8 == SEMICOLON_SYMBOL || ((LA746_8 >= AT_AT_SIGN_SYMBOL) && (LA746_8 <= AT_TEXT_SUFFIX)) || LA746_8 == BACK_TICK_QUOTED_ID || LA746_8 == COMMA_SYMBOL || LA746_8 == DOT_SYMBOL || LA746_8 == DOUBLE_QUOTED_TEXT || LA746_8 == IDENTIFIER))
                        {
                            alt746=3;
                        }
                        else
                        {
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }


                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 746;
                            EXCEPTION->state        = 8;


                            goto rulesignal_allowed_expressionEx;

                        }
                    }
                }
                else if ( (((LA746_0 >= AT_AT_SIGN_SYMBOL) && (LA746_0 <= AT_TEXT_SUFFIX))))
                {
                    alt746=2;
                }
                else if ( (((LA746_0 >= ACCOUNT_SYMBOL) && (LA746_0 <= DATETIME_SYMBOL)) || ((LA746_0 >= DAY_SYMBOL) && (LA746_0 <= TRIGGERS_SYMBOL)) || ((LA746_0 >= TIMESTAMP_ADD_SYMBOL) && (LA746_0 <= TIMESTAMP_DIFF_SYMBOL)) || ((LA746_0 >= TYPES_SYMBOL) && (LA746_0 <= YEAR_SYMBOL)) || LA746_0 == BACK_TICK_QUOTED_ID || LA746_0 == IDENTIFIER))
                {
                    alt746=3;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 746;
                    EXCEPTION->state        = 0;


                    goto rulesignal_allowed_expressionEx;

                }
            }
            switch (alt746)
            {
        	case 1:
        	    // MySQL.g:2837:2: literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_literal_in_signal_allowed_expression14285);
        	        literal2711=literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulesignal_allowed_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, literal2711.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2838:4: variable
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_variable_in_signal_allowed_expression14290);
        	        variable2712=variable(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulesignal_allowed_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, variable2712.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2839:4: qualified_identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_qualified_identifier_in_signal_allowed_expression14295);
        	        qualified_identifier2713=qualified_identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulesignal_allowed_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, qualified_identifier2713.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:2842: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_OPERATOR2716;
    pANTLR3_COMMON_TOKEN    set2717;
    MySQLParser_variable_return variable2714;
    #undef	RETURN_TYPE_variable2714
    #define	RETURN_TYPE_variable2714 MySQLParser_variable_return

    MySQLParser_identifier_return identifier2715;
    #undef	RETURN_TYPE_identifier2715
    #define	RETURN_TYPE_identifier2715 MySQLParser_identifier_return

    pANTLR3_BASE_TREE EQUAL_OPERATOR2716_tree;
    pANTLR3_BASE_TREE set2717_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    EQUAL_OPERATOR2716       = NULL;
    set2717       = NULL;
    variable2714.tree = NULL;

    identifier2715.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    EQUAL_OPERATOR2716_tree   = NULL;
    set2717_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2842:27: ( ( variable | identifier ) EQUAL_OPERATOR ( NUMBER_SYMBOL | ROW_COUNT_SYMBOL ) )
        // MySQL.g:2843:2: ( variable | identifier ) EQUAL_OPERATOR ( NUMBER_SYMBOL | ROW_COUNT_SYMBOL )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:2843:2: ( variable | identifier )
            {
                int alt747=2;
                {
                    int LA747_0 = LA(1);
                    if ( (((LA747_0 >= AT_AT_SIGN_SYMBOL) && (LA747_0 <= AT_TEXT_SUFFIX))))
                    {
                        alt747=1;
                    }
                    else if ( (((LA747_0 >= ACCOUNT_SYMBOL) && (LA747_0 <= YEAR_SYMBOL)) || LA747_0 == BACK_TICK_QUOTED_ID || LA747_0 == DOUBLE_QUOTED_TEXT || LA747_0 == IDENTIFIER))
                    {
                        alt747=2;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 747;
                        EXCEPTION->state        = 0;


                        goto rulestatement_information_itemEx;

                    }
                }
                switch (alt747)
                {
            	case 1:
            	    // MySQL.g:2843:3: variable
            	    {
            	        FOLLOWPUSH(FOLLOW_variable_in_statement_information_item14305);
            	        variable2714=variable(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulestatement_information_itemEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, variable2714.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2843:14: identifier
            	    {
            	        FOLLOWPUSH(FOLLOW_identifier_in_statement_information_item14309);
            	        identifier2715=identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulestatement_information_itemEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2715.tree);

            	    }
            	    break;

                }
            }

            EQUAL_OPERATOR2716 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_statement_information_item14312);
            if  (HASEXCEPTION())
            {
                goto rulestatement_information_itemEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EQUAL_OPERATOR2716_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2716));
            ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2716_tree);
            }

            set2717=(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, set2717))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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:2846: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_OPERATOR2720;
    pANTLR3_COMMON_TOKEN    RETURNED_SQLSTATE_SYMBOL2722;
    MySQLParser_variable_return variable2718;
    #undef	RETURN_TYPE_variable2718
    #define	RETURN_TYPE_variable2718 MySQLParser_variable_return

    MySQLParser_identifier_return identifier2719;
    #undef	RETURN_TYPE_identifier2719
    #define	RETURN_TYPE_identifier2719 MySQLParser_identifier_return

    MySQLParser_signal_information_item_name_return signal_information_item_name2721;
    #undef	RETURN_TYPE_signal_information_item_name2721
    #define	RETURN_TYPE_signal_information_item_name2721 MySQLParser_signal_information_item_name_return

    pANTLR3_BASE_TREE EQUAL_OPERATOR2720_tree;
    pANTLR3_BASE_TREE RETURNED_SQLSTATE_SYMBOL2722_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    EQUAL_OPERATOR2720       = NULL;
    RETURNED_SQLSTATE_SYMBOL2722       = NULL;
    variable2718.tree = NULL;

    identifier2719.tree = NULL;

    signal_information_item_name2721.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    EQUAL_OPERATOR2720_tree   = NULL;
    RETURNED_SQLSTATE_SYMBOL2722_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2846:27: ( ( variable | identifier ) EQUAL_OPERATOR ( signal_information_item_name | RETURNED_SQLSTATE_SYMBOL ) )
        // MySQL.g:2847:2: ( variable | identifier ) EQUAL_OPERATOR ( signal_information_item_name | RETURNED_SQLSTATE_SYMBOL )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:2847:2: ( variable | identifier )
            {
                int alt748=2;
                {
                    int LA748_0 = LA(1);
                    if ( (((LA748_0 >= AT_AT_SIGN_SYMBOL) && (LA748_0 <= AT_TEXT_SUFFIX))))
                    {
                        alt748=1;
                    }
                    else if ( (((LA748_0 >= ACCOUNT_SYMBOL) && (LA748_0 <= YEAR_SYMBOL)) || LA748_0 == BACK_TICK_QUOTED_ID || LA748_0 == DOUBLE_QUOTED_TEXT || LA748_0 == IDENTIFIER))
                    {
                        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 rulecondition_information_itemEx;

                    }
                }
                switch (alt748)
                {
            	case 1:
            	    // MySQL.g:2847:3: variable
            	    {
            	        FOLLOWPUSH(FOLLOW_variable_in_condition_information_item14330);
            	        variable2718=variable(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecondition_information_itemEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, variable2718.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2847:14: identifier
            	    {
            	        FOLLOWPUSH(FOLLOW_identifier_in_condition_information_item14334);
            	        identifier2719=identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecondition_information_itemEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2719.tree);

            	    }
            	    break;

                }
            }

            EQUAL_OPERATOR2720 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_condition_information_item14337);
            if  (HASEXCEPTION())
            {
                goto rulecondition_information_itemEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EQUAL_OPERATOR2720_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2720));
            ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2720_tree);
            }

            // MySQL.g:2847:41: ( signal_information_item_name | RETURNED_SQLSTATE_SYMBOL )
            {
                int alt749=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:
                	{
                		alt749=1;
                	}
                    break;
                case RETURNED_SQLSTATE_SYMBOL:
                	{
                		alt749=2;
                	}
                    break;

                default:
                    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 rulecondition_information_itemEx;

                }

                switch (alt749)
                {
            	case 1:
            	    // MySQL.g:2847:42: signal_information_item_name
            	    {
            	        FOLLOWPUSH(FOLLOW_signal_information_item_name_in_condition_information_item14340);
            	        signal_information_item_name2721=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_name2721.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2847:73: RETURNED_SQLSTATE_SYMBOL
            	    {
            	        RETURNED_SQLSTATE_SYMBOL2722 = (pANTLR3_COMMON_TOKEN) MATCHT(RETURNED_SQLSTATE_SYMBOL, &FOLLOW_RETURNED_SQLSTATE_SYMBOL_in_condition_information_item14344);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecondition_information_itemEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        RETURNED_SQLSTATE_SYMBOL2722_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RETURNED_SQLSTATE_SYMBOL2722));
            	        ADAPTOR->addChild(ADAPTOR, root_0, RETURNED_SQLSTATE_SYMBOL2722_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:2850: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    set2723;

    pANTLR3_BASE_TREE set2723_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2723       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2723_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2850: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));


            set2723=(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, set2723))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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:2865: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_SYMBOL2724;
    pANTLR3_COMMON_TOKEN    SET_SYMBOL2727;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2729;
    MySQLParser_identifier_return identifier2725;
    #undef	RETURN_TYPE_identifier2725
    #define	RETURN_TYPE_identifier2725 MySQLParser_identifier_return

    MySQLParser_sqlstate_return sqlstate2726;
    #undef	RETURN_TYPE_sqlstate2726
    #define	RETURN_TYPE_sqlstate2726 MySQLParser_sqlstate_return

    MySQLParser_signal_information_item_return signal_information_item2728;
    #undef	RETURN_TYPE_signal_information_item2728
    #define	RETURN_TYPE_signal_information_item2728 MySQLParser_signal_information_item_return

    MySQLParser_signal_information_item_return signal_information_item2730;
    #undef	RETURN_TYPE_signal_information_item2730
    #define	RETURN_TYPE_signal_information_item2730 MySQLParser_signal_information_item_return

    pANTLR3_BASE_TREE SIGNAL_SYMBOL2724_tree;
    pANTLR3_BASE_TREE SET_SYMBOL2727_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2729_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SIGNAL_SYMBOL2724       = NULL;
    SET_SYMBOL2727       = NULL;
    COMMA_SYMBOL2729       = NULL;
    identifier2725.tree = NULL;

    sqlstate2726.tree = NULL;

    signal_information_item2728.tree = NULL;

    signal_information_item2730.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SIGNAL_SYMBOL2724_tree   = NULL;
    SET_SYMBOL2727_tree   = NULL;
    COMMA_SYMBOL2729_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2865:17: ( SIGNAL_SYMBOL ( identifier | sqlstate ) ( SET_SYMBOL signal_information_item ( COMMA_SYMBOL signal_information_item )* )? )
        // MySQL.g:2866:2: SIGNAL_SYMBOL ( identifier | sqlstate ) ( SET_SYMBOL signal_information_item ( COMMA_SYMBOL signal_information_item )* )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            SIGNAL_SYMBOL2724 = (pANTLR3_COMMON_TOKEN) MATCHT(SIGNAL_SYMBOL, &FOLLOW_SIGNAL_SYMBOL_in_signal_statement14418);
            if  (HASEXCEPTION())
            {
                goto rulesignal_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            SIGNAL_SYMBOL2724_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SIGNAL_SYMBOL2724));
            ADAPTOR->addChild(ADAPTOR, root_0, SIGNAL_SYMBOL2724_tree);
            }

            // MySQL.g:2866:16: ( identifier | sqlstate )
            {
                int alt750=2;
                {
                    int LA750_0 = LA(1);
                    if ( (((LA750_0 >= ACCOUNT_SYMBOL) && (LA750_0 <= YEAR_SYMBOL)) || LA750_0 == BACK_TICK_QUOTED_ID || LA750_0 == DOUBLE_QUOTED_TEXT || LA750_0 == IDENTIFIER))
                    {
                        alt750=1;
                    }
                    else if ( (LA750_0 == SQLSTATE_SYMBOL))
                    {
                        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 rulesignal_statementEx;

                    }
                }
                switch (alt750)
                {
            	case 1:
            	    // MySQL.g:2866:17: identifier
            	    {
            	        FOLLOWPUSH(FOLLOW_identifier_in_signal_statement14421);
            	        identifier2725=identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesignal_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2725.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2866:30: sqlstate
            	    {
            	        FOLLOWPUSH(FOLLOW_sqlstate_in_signal_statement14425);
            	        sqlstate2726=sqlstate(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesignal_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, sqlstate2726.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:2866:40: ( SET_SYMBOL signal_information_item ( COMMA_SYMBOL signal_information_item )* )?
            {
                int alt752=2;
                switch ( LA(1) )
                {
                    case SET_SYMBOL:
                    	{
                    		alt752=1;
                    	}
                        break;
                }

                switch (alt752)
                {
            	case 1:
            	    // MySQL.g:2866:41: SET_SYMBOL signal_information_item ( COMMA_SYMBOL signal_information_item )*
            	    {
            	        SET_SYMBOL2727 = (pANTLR3_COMMON_TOKEN) MATCHT(SET_SYMBOL, &FOLLOW_SET_SYMBOL_in_signal_statement14429);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesignal_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SET_SYMBOL2727_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SET_SYMBOL2727));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SET_SYMBOL2727_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_signal_information_item_in_signal_statement14431);
            	        signal_information_item2728=signal_information_item(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesignal_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, signal_information_item2728.tree);

            	        // MySQL.g:2866:76: ( COMMA_SYMBOL signal_information_item )*

            	        for (;;)
            	        {
            	            int alt751=2;
            	            switch ( LA(1) )
            	            {
            	            case COMMA_SYMBOL:
            	            	{
            	            		alt751=1;
            	            	}
            	                break;

            	            }

            	            switch (alt751)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2866:77: COMMA_SYMBOL signal_information_item
            	        	    {
            	        	        COMMA_SYMBOL2729 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_signal_statement14434);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulesignal_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        COMMA_SYMBOL2729_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2729));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2729_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_signal_information_item_in_signal_statement14436);
            	        	        signal_information_item2730=signal_information_item(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulesignal_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, signal_information_item2730.tree);

            	        	    }
            	        	    break;

            	        	default:
            	        	    goto loop751;	/* break out of the loop */
            	        	    break;
            	            }
            	        }
            	        loop751: ; /* 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:2869: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_SYMBOL2731;
    pANTLR3_COMMON_TOKEN    SQLSTATE_SYMBOL2732;
    pANTLR3_COMMON_TOKEN    VALUE_SYMBOL2733;
    pANTLR3_COMMON_TOKEN    SET_SYMBOL2735;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2737;
    MySQLParser_text_or_identifier_return text_or_identifier2734;
    #undef	RETURN_TYPE_text_or_identifier2734
    #define	RETURN_TYPE_text_or_identifier2734 MySQLParser_text_or_identifier_return

    MySQLParser_signal_information_item_return signal_information_item2736;
    #undef	RETURN_TYPE_signal_information_item2736
    #define	RETURN_TYPE_signal_information_item2736 MySQLParser_signal_information_item_return

    MySQLParser_signal_information_item_return signal_information_item2738;
    #undef	RETURN_TYPE_signal_information_item2738
    #define	RETURN_TYPE_signal_information_item2738 MySQLParser_signal_information_item_return

    pANTLR3_BASE_TREE RESIGNAL_SYMBOL2731_tree;
    pANTLR3_BASE_TREE SQLSTATE_SYMBOL2732_tree;
    pANTLR3_BASE_TREE VALUE_SYMBOL2733_tree;
    pANTLR3_BASE_TREE SET_SYMBOL2735_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2737_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    RESIGNAL_SYMBOL2731       = NULL;
    SQLSTATE_SYMBOL2732       = NULL;
    VALUE_SYMBOL2733       = NULL;
    SET_SYMBOL2735       = NULL;
    COMMA_SYMBOL2737       = NULL;
    text_or_identifier2734.tree = NULL;

    signal_information_item2736.tree = NULL;

    signal_information_item2738.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    RESIGNAL_SYMBOL2731_tree   = NULL;
    SQLSTATE_SYMBOL2732_tree   = NULL;
    VALUE_SYMBOL2733_tree   = NULL;
    SET_SYMBOL2735_tree   = NULL;
    COMMA_SYMBOL2737_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2869:19: ( RESIGNAL_SYMBOL ( SQLSTATE_SYMBOL ( VALUE_SYMBOL )? text_or_identifier )? ( SET_SYMBOL signal_information_item ( COMMA_SYMBOL signal_information_item )* )? )
        // MySQL.g:2870: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_SYMBOL2731 = (pANTLR3_COMMON_TOKEN) MATCHT(RESIGNAL_SYMBOL, &FOLLOW_RESIGNAL_SYMBOL_in_resignal_statement14449);
            if  (HASEXCEPTION())
            {
                goto ruleresignal_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            RESIGNAL_SYMBOL2731_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RESIGNAL_SYMBOL2731));
            ADAPTOR->addChild(ADAPTOR, root_0, RESIGNAL_SYMBOL2731_tree);
            }

            // MySQL.g:2870:18: ( SQLSTATE_SYMBOL ( VALUE_SYMBOL )? text_or_identifier )?
            {
                int alt754=2;
                switch ( LA(1) )
                {
                    case SQLSTATE_SYMBOL:
                    	{
                    		alt754=1;
                    	}
                        break;
                }

                switch (alt754)
                {
            	case 1:
            	    // MySQL.g:2870:19: SQLSTATE_SYMBOL ( VALUE_SYMBOL )? text_or_identifier
            	    {
            	        SQLSTATE_SYMBOL2732 = (pANTLR3_COMMON_TOKEN) MATCHT(SQLSTATE_SYMBOL, &FOLLOW_SQLSTATE_SYMBOL_in_resignal_statement14452);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleresignal_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SQLSTATE_SYMBOL2732_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SQLSTATE_SYMBOL2732));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SQLSTATE_SYMBOL2732_tree);
            	        }

            	        // MySQL.g:2870:35: ( VALUE_SYMBOL )?
            	        {
            	            int alt753=2;
            	            switch ( LA(1) )
            	            {
            	                case VALUE_SYMBOL:
            	                	{
            	                		{
            	                		    int LA753_1 = LA(2);
            	                		    if ( (((LA753_1 >= ACCOUNT_SYMBOL) && (LA753_1 <= YEAR_SYMBOL)) || LA753_1 == SINGLE_QUOTED_TEXT || LA753_1 == BACK_TICK_QUOTED_ID || LA753_1 == DOUBLE_QUOTED_TEXT || LA753_1 == IDENTIFIER))
            	                		    {
            	                		        alt753=1;
            	                		    }
            	                		}
            	                	}
            	                    break;
            	            }

            	            switch (alt753)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2870:35: VALUE_SYMBOL
            	        	    {
            	        	        VALUE_SYMBOL2733 = (pANTLR3_COMMON_TOKEN) MATCHT(VALUE_SYMBOL, &FOLLOW_VALUE_SYMBOL_in_resignal_statement14454);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleresignal_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        VALUE_SYMBOL2733_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VALUE_SYMBOL2733));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, VALUE_SYMBOL2733_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_text_or_identifier_in_resignal_statement14457);
            	        text_or_identifier2734=text_or_identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleresignal_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_or_identifier2734.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:2871:3: ( SET_SYMBOL signal_information_item ( COMMA_SYMBOL signal_information_item )* )?
            {
                int alt756=2;
                switch ( LA(1) )
                {
                    case SET_SYMBOL:
                    	{
                    		alt756=1;
                    	}
                        break;
                }

                switch (alt756)
                {
            	case 1:
            	    // MySQL.g:2871:4: SET_SYMBOL signal_information_item ( COMMA_SYMBOL signal_information_item )*
            	    {
            	        SET_SYMBOL2735 = (pANTLR3_COMMON_TOKEN) MATCHT(SET_SYMBOL, &FOLLOW_SET_SYMBOL_in_resignal_statement14464);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleresignal_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SET_SYMBOL2735_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SET_SYMBOL2735));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SET_SYMBOL2735_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_signal_information_item_in_resignal_statement14466);
            	        signal_information_item2736=signal_information_item(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleresignal_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, signal_information_item2736.tree);

            	        // MySQL.g:2871:39: ( COMMA_SYMBOL signal_information_item )*

            	        for (;;)
            	        {
            	            int alt755=2;
            	            switch ( LA(1) )
            	            {
            	            case COMMA_SYMBOL:
            	            	{
            	            		alt755=1;
            	            	}
            	                break;

            	            }

            	            switch (alt755)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2871:40: COMMA_SYMBOL signal_information_item
            	        	    {
            	        	        COMMA_SYMBOL2737 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_resignal_statement14469);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleresignal_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        COMMA_SYMBOL2737_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2737));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2737_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_signal_information_item_in_resignal_statement14471);
            	        	        signal_information_item2738=signal_information_item(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleresignal_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, signal_information_item2738.tree);

            	        	    }
            	        	    break;

            	        	default:
            	        	    goto loop755;	/* break out of the loop */
            	        	    break;
            	            }
            	        }
            	        loop755: ; /* 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:2874: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_OPERATOR2740;
    MySQLParser_signal_information_item_name_return signal_information_item_name2739;
    #undef	RETURN_TYPE_signal_information_item_name2739
    #define	RETURN_TYPE_signal_information_item_name2739 MySQLParser_signal_information_item_name_return

    MySQLParser_signal_allowed_expression_return signal_allowed_expression2741;
    #undef	RETURN_TYPE_signal_allowed_expression2741
    #define	RETURN_TYPE_signal_allowed_expression2741 MySQLParser_signal_allowed_expression_return

    pANTLR3_BASE_TREE EQUAL_OPERATOR2740_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    EQUAL_OPERATOR2740       = NULL;
    signal_information_item_name2739.tree = NULL;

    signal_allowed_expression2741.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    EQUAL_OPERATOR2740_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2874:24: ( signal_information_item_name EQUAL_OPERATOR signal_allowed_expression )
        // MySQL.g:2875: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_item14484);
            signal_information_item_name2739=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_name2739.tree);

            EQUAL_OPERATOR2740 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_signal_information_item14486);
            if  (HASEXCEPTION())
            {
                goto rulesignal_information_itemEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EQUAL_OPERATOR2740_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2740));
            ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2740_tree);
            }

            FOLLOWPUSH(FOLLOW_signal_allowed_expression_in_signal_information_item14488);
            signal_allowed_expression2741=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_expression2741.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_open
 * MySQL.g:2878: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_SYMBOL2742;
    MySQLParser_identifier_return identifier2743;
    #undef	RETURN_TYPE_identifier2743
    #define	RETURN_TYPE_identifier2743 MySQLParser_identifier_return

    pANTLR3_BASE_TREE OPEN_SYMBOL2742_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_SYMBOL2742       = NULL;
    identifier2743.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_SYMBOL2742_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2878:12: ( OPEN_SYMBOL identifier )
        // MySQL.g:2879:2: OPEN_SYMBOL identifier
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            OPEN_SYMBOL2742 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_SYMBOL, &FOLLOW_OPEN_SYMBOL_in_cursor_open14497);
            if  (HASEXCEPTION())
            {
                goto rulecursor_openEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_SYMBOL2742_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_SYMBOL2742));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_SYMBOL2742_tree);
            }

            FOLLOWPUSH(FOLLOW_identifier_in_cursor_open14499);
            identifier2743=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecursor_openEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2743.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 cursor_close
 * MySQL.g:2882: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_SYMBOL2744;
    MySQLParser_identifier_return identifier2745;
    #undef	RETURN_TYPE_identifier2745
    #define	RETURN_TYPE_identifier2745 MySQLParser_identifier_return

    pANTLR3_BASE_TREE CLOSE_SYMBOL2744_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CLOSE_SYMBOL2744       = NULL;
    identifier2745.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CLOSE_SYMBOL2744_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2882:13: ( CLOSE_SYMBOL identifier )
        // MySQL.g:2883:2: CLOSE_SYMBOL identifier
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            CLOSE_SYMBOL2744 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_SYMBOL, &FOLLOW_CLOSE_SYMBOL_in_cursor_close14508);
            if  (HASEXCEPTION())
            {
                goto rulecursor_closeEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_SYMBOL2744_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_SYMBOL2744));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_SYMBOL2744_tree);
            }

            FOLLOWPUSH(FOLLOW_identifier_in_cursor_close14510);
            identifier2745=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecursor_closeEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2745.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:2886: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_SYMBOL2746;
    pANTLR3_COMMON_TOKEN    INTO_SYMBOL2748;
    MySQLParser_identifier_return identifier2747;
    #undef	RETURN_TYPE_identifier2747
    #define	RETURN_TYPE_identifier2747 MySQLParser_identifier_return

    MySQLParser_identifier_list_return identifier_list2749;
    #undef	RETURN_TYPE_identifier_list2749
    #define	RETURN_TYPE_identifier_list2749 MySQLParser_identifier_list_return

    pANTLR3_BASE_TREE FETCH_SYMBOL2746_tree;
    pANTLR3_BASE_TREE INTO_SYMBOL2748_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    FETCH_SYMBOL2746       = NULL;
    INTO_SYMBOL2748       = NULL;
    identifier2747.tree = NULL;

    identifier_list2749.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    FETCH_SYMBOL2746_tree   = NULL;
    INTO_SYMBOL2748_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2886:13: ( FETCH_SYMBOL identifier INTO_SYMBOL identifier_list )
        // MySQL.g:2887:2: FETCH_SYMBOL identifier INTO_SYMBOL identifier_list
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FETCH_SYMBOL2746 = (pANTLR3_COMMON_TOKEN) MATCHT(FETCH_SYMBOL, &FOLLOW_FETCH_SYMBOL_in_cursor_fetch14519);
            if  (HASEXCEPTION())
            {
                goto rulecursor_fetchEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            FETCH_SYMBOL2746_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FETCH_SYMBOL2746));
            ADAPTOR->addChild(ADAPTOR, root_0, FETCH_SYMBOL2746_tree);
            }

            FOLLOWPUSH(FOLLOW_identifier_in_cursor_fetch14521);
            identifier2747=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecursor_fetchEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2747.tree);

            INTO_SYMBOL2748 = (pANTLR3_COMMON_TOKEN) MATCHT(INTO_SYMBOL, &FOLLOW_INTO_SYMBOL_in_cursor_fetch14523);
            if  (HASEXCEPTION())
            {
                goto rulecursor_fetchEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            INTO_SYMBOL2748_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTO_SYMBOL2748));
            ADAPTOR->addChild(ADAPTOR, root_0, INTO_SYMBOL2748_tree);
            }

            FOLLOWPUSH(FOLLOW_identifier_list_in_cursor_fetch14525);
            identifier_list2749=identifier_list(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecursor_fetchEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier_list2749.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 schedule
 * MySQL.g:2893: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_SYMBOL2750;
    pANTLR3_COMMON_TOKEN    EVERY_SYMBOL2752;
    pANTLR3_COMMON_TOKEN    STARTS_SYMBOL2754;
    pANTLR3_COMMON_TOKEN    ENDS_SYMBOL2756;
    MySQLParser_expression_return expression2751;
    #undef	RETURN_TYPE_expression2751
    #define	RETURN_TYPE_expression2751 MySQLParser_expression_return

    MySQLParser_interval_return interval2753;
    #undef	RETURN_TYPE_interval2753
    #define	RETURN_TYPE_interval2753 MySQLParser_interval_return

    MySQLParser_expression_return expression2755;
    #undef	RETURN_TYPE_expression2755
    #define	RETURN_TYPE_expression2755 MySQLParser_expression_return

    MySQLParser_expression_return expression2757;
    #undef	RETURN_TYPE_expression2757
    #define	RETURN_TYPE_expression2757 MySQLParser_expression_return

    pANTLR3_BASE_TREE AT_SYMBOL2750_tree;
    pANTLR3_BASE_TREE EVERY_SYMBOL2752_tree;
    pANTLR3_BASE_TREE STARTS_SYMBOL2754_tree;
    pANTLR3_BASE_TREE ENDS_SYMBOL2756_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    AT_SYMBOL2750       = NULL;
    EVERY_SYMBOL2752       = NULL;
    STARTS_SYMBOL2754       = NULL;
    ENDS_SYMBOL2756       = NULL;
    expression2751.tree = NULL;

    interval2753.tree = NULL;

    expression2755.tree = NULL;

    expression2757.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    AT_SYMBOL2750_tree   = NULL;
    EVERY_SYMBOL2752_tree   = NULL;
    STARTS_SYMBOL2754_tree   = NULL;
    ENDS_SYMBOL2756_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2893:9: ( AT_SYMBOL expression | EVERY_SYMBOL interval ( STARTS_SYMBOL expression )? ( ENDS_SYMBOL expression )? )

            ANTLR3_UINT32 alt759;

            alt759=2;

            switch ( LA(1) )
            {
            case AT_SYMBOL:
            	{
            		alt759=1;
            	}
                break;
            case EVERY_SYMBOL:
            	{
            		alt759=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 759;
                EXCEPTION->state        = 0;


                goto rulescheduleEx;

            }

            switch (alt759)
            {
        	case 1:
        	    // MySQL.g:2894:2: AT_SYMBOL expression
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        AT_SYMBOL2750 = (pANTLR3_COMMON_TOKEN) MATCHT(AT_SYMBOL, &FOLLOW_AT_SYMBOL_in_schedule14537);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulescheduleEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        AT_SYMBOL2750_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AT_SYMBOL2750));
        	        ADAPTOR->addChild(ADAPTOR, root_0, AT_SYMBOL2750_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_schedule14539);
        	        expression2751=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulescheduleEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2751.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2895:4: EVERY_SYMBOL interval ( STARTS_SYMBOL expression )? ( ENDS_SYMBOL expression )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        EVERY_SYMBOL2752 = (pANTLR3_COMMON_TOKEN) MATCHT(EVERY_SYMBOL, &FOLLOW_EVERY_SYMBOL_in_schedule14544);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulescheduleEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EVERY_SYMBOL2752_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EVERY_SYMBOL2752));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EVERY_SYMBOL2752_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_interval_in_schedule14546);
        	        interval2753=interval(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulescheduleEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, interval2753.tree);

        	        // MySQL.g:2895:26: ( STARTS_SYMBOL expression )?
        	        {
        	            int alt757=2;
        	            switch ( LA(1) )
        	            {
        	                case STARTS_SYMBOL:
        	                	{
        	                		alt757=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt757)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2895:27: STARTS_SYMBOL expression
        	        	    {
        	        	        STARTS_SYMBOL2754 = (pANTLR3_COMMON_TOKEN) MATCHT(STARTS_SYMBOL, &FOLLOW_STARTS_SYMBOL_in_schedule14549);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulescheduleEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        STARTS_SYMBOL2754_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STARTS_SYMBOL2754));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, STARTS_SYMBOL2754_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_expression_in_schedule14551);
        	        	        expression2755=expression(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulescheduleEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2755.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:2895:54: ( ENDS_SYMBOL expression )?
        	        {
        	            int alt758=2;
        	            switch ( LA(1) )
        	            {
        	                case ENDS_SYMBOL:
        	                	{
        	                		alt758=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt758)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2895:55: ENDS_SYMBOL expression
        	        	    {
        	        	        ENDS_SYMBOL2756 = (pANTLR3_COMMON_TOKEN) MATCHT(ENDS_SYMBOL, &FOLLOW_ENDS_SYMBOL_in_schedule14556);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulescheduleEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        ENDS_SYMBOL2756_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ENDS_SYMBOL2756));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, ENDS_SYMBOL2756_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_expression_in_schedule14558);
        	        	        expression2757=expression(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulescheduleEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2757.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:2898: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_SYMBOL2758;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2760;
    pANTLR3_COMMON_TOKEN    COLLATE_SYMBOL2762;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2763;
    MySQLParser_charset_return charset2759;
    #undef	RETURN_TYPE_charset2759
    #define	RETURN_TYPE_charset2759 MySQLParser_charset_return

    MySQLParser_charset_name_or_default_return charset_name_or_default2761;
    #undef	RETURN_TYPE_charset_name_or_default2761
    #define	RETURN_TYPE_charset_name_or_default2761 MySQLParser_charset_name_or_default_return

    MySQLParser_collation_name_or_default_return collation_name_or_default2764;
    #undef	RETURN_TYPE_collation_name_or_default2764
    #define	RETURN_TYPE_collation_name_or_default2764 MySQLParser_collation_name_or_default_return

    pANTLR3_BASE_TREE DEFAULT_SYMBOL2758_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2760_tree;
    pANTLR3_BASE_TREE COLLATE_SYMBOL2762_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2763_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DEFAULT_SYMBOL2758       = NULL;
    EQUAL_OPERATOR2760       = NULL;
    COLLATE_SYMBOL2762       = NULL;
    EQUAL_OPERATOR2763       = NULL;
    charset2759.tree = NULL;

    charset_name_or_default2761.tree = NULL;

    collation_name_or_default2764.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DEFAULT_SYMBOL2758_tree   = NULL;
    EQUAL_OPERATOR2760_tree   = NULL;
    COLLATE_SYMBOL2762_tree   = NULL;
    EQUAL_OPERATOR2763_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2898:16: ( ( DEFAULT_SYMBOL )? ( charset ( EQUAL_OPERATOR )? charset_name_or_default | COLLATE_SYMBOL ( EQUAL_OPERATOR )? collation_name_or_default ) )
        // MySQL.g:2899: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:2899:2: ( DEFAULT_SYMBOL )?
            {
                int alt760=2;
                switch ( LA(1) )
                {
                    case DEFAULT_SYMBOL:
                    	{
                    		alt760=1;
                    	}
                        break;
                }

                switch (alt760)
                {
            	case 1:
            	    // MySQL.g:2899:2: DEFAULT_SYMBOL
            	    {
            	        DEFAULT_SYMBOL2758 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_database_option14569);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledatabase_optionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DEFAULT_SYMBOL2758_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL2758));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL2758_tree);
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:2900:3: ( charset ( EQUAL_OPERATOR )? charset_name_or_default | COLLATE_SYMBOL ( EQUAL_OPERATOR )? collation_name_or_default )
            {
                int alt763=2;
                switch ( LA(1) )
                {
                case CHARSET_SYMBOL:
                case CHAR_SYMBOL:
                	{
                		alt763=1;
                	}
                    break;
                case COLLATE_SYMBOL:
                	{
                		alt763=2;
                	}
                    break;

                default:
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }

                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 763;
                    EXCEPTION->state        = 0;


                    goto ruledatabase_optionEx;

                }

                switch (alt763)
                {
            	case 1:
            	    // MySQL.g:2901:4: charset ( EQUAL_OPERATOR )? charset_name_or_default
            	    {
            	        FOLLOWPUSH(FOLLOW_charset_in_database_option14579);
            	        charset2759=charset(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledatabase_optionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset2759.tree);

            	        // MySQL.g:2901:12: ( EQUAL_OPERATOR )?
            	        {
            	            int alt761=2;
            	            switch ( LA(1) )
            	            {
            	                case EQUAL_OPERATOR:
            	                	{
            	                		alt761=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt761)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2901:12: EQUAL_OPERATOR
            	        	    {
            	        	        EQUAL_OPERATOR2760 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_database_option14581);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledatabase_optionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        EQUAL_OPERATOR2760_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2760));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2760_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_charset_name_or_default_in_database_option14584);
            	        charset_name_or_default2761=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_default2761.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2902:6: COLLATE_SYMBOL ( EQUAL_OPERATOR )? collation_name_or_default
            	    {
            	        COLLATE_SYMBOL2762 = (pANTLR3_COMMON_TOKEN) MATCHT(COLLATE_SYMBOL, &FOLLOW_COLLATE_SYMBOL_in_database_option14591);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledatabase_optionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COLLATE_SYMBOL2762_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COLLATE_SYMBOL2762));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COLLATE_SYMBOL2762_tree);
            	        }

            	        // MySQL.g:2902:21: ( EQUAL_OPERATOR )?
            	        {
            	            int alt762=2;
            	            switch ( LA(1) )
            	            {
            	                case EQUAL_OPERATOR:
            	                	{
            	                		alt762=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt762)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2902:21: EQUAL_OPERATOR
            	        	    {
            	        	        EQUAL_OPERATOR2763 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_database_option14593);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledatabase_optionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        EQUAL_OPERATOR2763_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2763));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2763_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_collation_name_or_default_in_database_option14596);
            	        collation_name_or_default2764=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_default2764.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:2906: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_SYMBOL2767;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2768;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2770;
    MySQLParser_field_spec_return field_spec2765;
    #undef	RETURN_TYPE_field_spec2765
    #define	RETURN_TYPE_field_spec2765 MySQLParser_field_spec_return

    MySQLParser_reference_definition_return reference_definition2766;
    #undef	RETURN_TYPE_reference_definition2766
    #define	RETURN_TYPE_reference_definition2766 MySQLParser_reference_definition_return

    MySQLParser_expression_return expression2769;
    #undef	RETURN_TYPE_expression2769
    #define	RETURN_TYPE_expression2769 MySQLParser_expression_return

    pANTLR3_BASE_TREE CHECK_SYMBOL2767_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2768_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2770_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CHECK_SYMBOL2767       = NULL;
    OPEN_PAR_SYMBOL2768       = NULL;
    CLOSE_PAR_SYMBOL2770       = NULL;
    field_spec2765.tree = NULL;

    reference_definition2766.tree = NULL;

    expression2769.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CHECK_SYMBOL2767_tree   = NULL;
    OPEN_PAR_SYMBOL2768_tree   = NULL;
    CLOSE_PAR_SYMBOL2770_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2906:18: ( field_spec ( reference_definition | ( CHECK_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL )? ) )
        // MySQL.g:2907: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_definition14609);
            field_spec2765=field_spec(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecolumn_definitionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_spec2765.tree);

            // MySQL.g:2907:13: ( reference_definition | ( CHECK_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL )? )
            {
                int alt765=2;
                {
                    int LA765_0 = LA(1);
                    if ( (LA765_0 == REFERENCES_SYMBOL))
                    {
                        alt765=1;
                    }
                    else if ( (LA765_0 == EOF || LA765_0 == PARTITION_SYMBOL || LA765_0 == AFTER_SYMBOL || LA765_0 == FIRST_SYMBOL || LA765_0 == CHECK_SYMBOL || LA765_0 == SEMICOLON_SYMBOL || LA765_0 == COMMA_SYMBOL))
                    {
                        alt765=2;
                    }
                    else if ( ((SERVER_VERSION >= 50100)) && (LA765_0 == REMOVE_SYMBOL))
                    {
                        alt765=2;
                    }
                    else if ( (LA765_0 == CLOSE_PAR_SYMBOL))
                    {
                        alt765=2;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 765;
                        EXCEPTION->state        = 0;


                        goto rulecolumn_definitionEx;

                    }
                }
                switch (alt765)
                {
            	case 1:
            	    // MySQL.g:2907:14: reference_definition
            	    {
            	        FOLLOWPUSH(FOLLOW_reference_definition_in_column_definition14612);
            	        reference_definition2766=reference_definition(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecolumn_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, reference_definition2766.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2907:37: ( CHECK_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL )?
            	    {
            	        // MySQL.g:2907:37: ( CHECK_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL )?
            	        {
            	            int alt764=2;
            	            switch ( LA(1) )
            	            {
            	                case CHECK_SYMBOL:
            	                	{
            	                		alt764=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt764)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2907:38: CHECK_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
            	        	    {
            	        	        CHECK_SYMBOL2767 = (pANTLR3_COMMON_TOKEN) MATCHT(CHECK_SYMBOL, &FOLLOW_CHECK_SYMBOL_in_column_definition14617);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecolumn_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        CHECK_SYMBOL2767_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHECK_SYMBOL2767));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, CHECK_SYMBOL2767_tree);
            	        	        }

            	        	        OPEN_PAR_SYMBOL2768 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_column_definition14619);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecolumn_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        OPEN_PAR_SYMBOL2768_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2768));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2768_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_expression_in_column_definition14621);
            	        	        expression2769=expression(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecolumn_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2769.tree);

            	        	        CLOSE_PAR_SYMBOL2770 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_column_definition14623);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecolumn_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        CLOSE_PAR_SYMBOL2770_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2770));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2770_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:2910:1: field_spec : column_name field_def ;
 */
static MySQLParser_field_spec_return
field_spec(pMySQLParser ctx)
{
    MySQLParser_field_spec_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_column_name_return column_name2771;
    #undef	RETURN_TYPE_column_name2771
    #define	RETURN_TYPE_column_name2771 MySQLParser_column_name_return

    MySQLParser_field_def_return field_def2772;
    #undef	RETURN_TYPE_field_def2772
    #define	RETURN_TYPE_field_def2772 MySQLParser_field_def_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    column_name2771.tree = NULL;

    field_def2772.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:2910:11: ( column_name field_def )
        // MySQL.g:2911:2: column_name field_def
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_column_name_in_field_spec14635);
            column_name2771=column_name(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulefield_specEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, column_name2771.tree);

            FOLLOWPUSH(FOLLOW_field_def_in_field_spec14637);
            field_def2772=field_def(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulefield_specEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_def2772.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:2914: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_type2773;
    #undef	RETURN_TYPE_data_type2773
    #define	RETURN_TYPE_data_type2773 MySQLParser_data_type_return

    MySQLParser_field_def_tail_return field_def_tail2774;
    #undef	RETURN_TYPE_field_def_tail2774
    #define	RETURN_TYPE_field_def_tail2774 MySQLParser_field_def_tail_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    data_type2773.tree = NULL;

    field_def_tail2774.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:2914:10: ( data_type field_def_tail )
        // MySQL.g:2915:2: data_type field_def_tail
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_data_type_in_field_def14646);
            data_type2773=data_type(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulefield_defEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, data_type2773.tree);

            FOLLOWPUSH(FOLLOW_field_def_tail_in_field_def14648);
            field_def_tail2774=field_def_tail(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulefield_defEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_def_tail2774.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:2918: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_SYMBOL2776;
    pANTLR3_COMMON_TOKEN    GENERATED_SYMBOL2778;
    pANTLR3_COMMON_TOKEN    ALWAYS_SYMBOL2779;
    pANTLR3_COMMON_TOKEN    AS_SYMBOL2780;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2781;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2783;
    pANTLR3_COMMON_TOKEN    set2784;
    MySQLParser_attribute_return attribute2775;
    #undef	RETURN_TYPE_attribute2775
    #define	RETURN_TYPE_attribute2775 MySQLParser_attribute_return

    MySQLParser_collation_name_return collation_name2777;
    #undef	RETURN_TYPE_collation_name2777
    #define	RETURN_TYPE_collation_name2777 MySQLParser_collation_name_return

    MySQLParser_expression_return expression2782;
    #undef	RETURN_TYPE_expression2782
    #define	RETURN_TYPE_expression2782 MySQLParser_expression_return

    MySQLParser_gcol_attribute_return gcol_attribute2785;
    #undef	RETURN_TYPE_gcol_attribute2785
    #define	RETURN_TYPE_gcol_attribute2785 MySQLParser_gcol_attribute_return

    pANTLR3_BASE_TREE COLLATE_SYMBOL2776_tree;
    pANTLR3_BASE_TREE GENERATED_SYMBOL2778_tree;
    pANTLR3_BASE_TREE ALWAYS_SYMBOL2779_tree;
    pANTLR3_BASE_TREE AS_SYMBOL2780_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2781_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2783_tree;
    pANTLR3_BASE_TREE set2784_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COLLATE_SYMBOL2776       = NULL;
    GENERATED_SYMBOL2778       = NULL;
    ALWAYS_SYMBOL2779       = NULL;
    AS_SYMBOL2780       = NULL;
    OPEN_PAR_SYMBOL2781       = NULL;
    CLOSE_PAR_SYMBOL2783       = NULL;
    set2784       = NULL;
    attribute2775.tree = NULL;

    collation_name2777.tree = NULL;

    expression2782.tree = NULL;

    gcol_attribute2785.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COLLATE_SYMBOL2776_tree   = NULL;
    GENERATED_SYMBOL2778_tree   = NULL;
    ALWAYS_SYMBOL2779_tree   = NULL;
    AS_SYMBOL2780_tree   = NULL;
    OPEN_PAR_SYMBOL2781_tree   = NULL;
    CLOSE_PAR_SYMBOL2783_tree   = NULL;
    set2784_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2918: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 alt771;

            alt771=2;

            {
                int LA771_0 = LA(1);
                if ( (LA771_0 == EOF || LA771_0 == COMMENT_SYMBOL || LA771_0 == PARTITION_SYMBOL || LA771_0 == AFTER_SYMBOL || LA771_0 == AUTO_INCREMENT_SYMBOL || LA771_0 == COLUMN_FORMAT_SYMBOL || LA771_0 == FIRST_SYMBOL || LA771_0 == SERIAL_SYMBOL || LA771_0 == STORAGE_SYMBOL || LA771_0 == DEFAULT_SYMBOL || LA771_0 == KEY_SYMBOL || LA771_0 == NOT_SYMBOL || ((LA771_0 >= NULL2_SYMBOL) && (LA771_0 <= NULL_SYMBOL)) || LA771_0 == ON_SYMBOL || LA771_0 == PRIMARY_SYMBOL || LA771_0 == SEMICOLON_SYMBOL || LA771_0 == UNIQUE_SYMBOL || LA771_0 == COMMA_SYMBOL))
                {
                    alt771=1;
                }
                else if ( (LA771_0 == COLLATE_SYMBOL))
                {
                    {
                        int LA771_11 = LA(2);
                        if ( (LA771_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 COLLATE_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:
                            case CLOSE_PAR_SYMBOL:
                            case COMMA_SYMBOL:
                            	{
                            		alt771=1;
                            	}
                                break;
                            case GENERATED_SYMBOL:
                            case AS_SYMBOL:
                            	{
                            		alt771=2;
                            	}
                                break;

                            default:
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }

                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 771;
                                EXCEPTION->state        = 26;


                                goto rulefield_def_tailEx;

                            }

                        }
                        else if ( (LA771_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 COLLATE_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:
                            case CLOSE_PAR_SYMBOL:
                            case COMMA_SYMBOL:
                            	{
                            		alt771=1;
                            	}
                                break;
                            case GENERATED_SYMBOL:
                            case AS_SYMBOL:
                            	{
                            		alt771=2;
                            	}
                                break;

                            default:
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }

                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 771;
                                EXCEPTION->state        = 27;


                                goto rulefield_def_tailEx;

                            }

                        }
                        else if ( (LA771_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 COLLATE_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:
                            case CLOSE_PAR_SYMBOL:
                            case COMMA_SYMBOL:
                            	{
                            		alt771=1;
                            	}
                                break;
                            case GENERATED_SYMBOL:
                            case AS_SYMBOL:
                            	{
                            		alt771=2;
                            	}
                                break;

                            default:
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }

                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 771;
                                EXCEPTION->state        = 28;


                                goto rulefield_def_tailEx;

                            }

                        }
                        else if ( (LA771_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 COLLATE_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:
                            case CLOSE_PAR_SYMBOL:
                            case COMMA_SYMBOL:
                            	{
                            		alt771=1;
                            	}
                                break;
                            case GENERATED_SYMBOL:
                            case AS_SYMBOL:
                            	{
                            		alt771=2;
                            	}
                                break;

                            default:
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }

                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 771;
                                EXCEPTION->state        = 29;


                                goto rulefield_def_tailEx;

                            }

                        }
                        else if ( (((LA771_11 >= ACTION_SYMBOL) && (LA771_11 <= SHARE_SYMBOL)) || ((LA771_11 >= SLOW_SYMBOL) && (LA771_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 COLLATE_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:
                            case CLOSE_PAR_SYMBOL:
                            case COMMA_SYMBOL:
                            	{
                            		alt771=1;
                            	}
                                break;
                            case GENERATED_SYMBOL:
                            case AS_SYMBOL:
                            	{
                            		alt771=2;
                            	}
                                break;

                            default:
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }

                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 771;
                                EXCEPTION->state        = 30;


                                goto rulefield_def_tailEx;

                            }

                        }
                        else if ( (((LA771_11 >= ACCOUNT_SYMBOL) && (LA771_11 <= XA_SYMBOL)) || LA771_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 COLLATE_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:
                            case CLOSE_PAR_SYMBOL:
                            case COMMA_SYMBOL:
                            	{
                            		alt771=1;
                            	}
                                break;
                            case GENERATED_SYMBOL:
                            case AS_SYMBOL:
                            	{
                            		alt771=2;
                            	}
                                break;

                            default:
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }

                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 771;
                                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  = 771;
                            EXCEPTION->state        = 11;


                            goto rulefield_def_tailEx;

                        }
                    }
                }
                else if ( ((SERVER_VERSION >= 50100)) && (LA771_0 == REMOVE_SYMBOL))
                {
                    alt771=1;
                }
                else if ( (LA771_0 == CHECK_SYMBOL || LA771_0 == REFERENCES_SYMBOL || LA771_0 == CLOSE_PAR_SYMBOL))
                {
                    alt771=1;
                }
                else if ( (LA771_0 == GENERATED_SYMBOL || LA771_0 == AS_SYMBOL))
                {
                    alt771=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 771;
                    EXCEPTION->state        = 0;


                    goto rulefield_def_tailEx;

                }
            }
            switch (alt771)
            {
        	case 1:
        	    // MySQL.g:2919:2: ( attribute )*
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:2919:2: ( attribute )*

        	        for (;;)
        	        {
        	            int alt766=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:
        	            	{
        	            		alt766=1;
        	            	}
        	                break;

        	            }

        	            switch (alt766)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2919:2: attribute
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_attribute_in_field_def_tail14668);
        	        	        attribute2775=attribute(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefield_def_tailEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, attribute2775.tree);

        	        	    }
        	        	    break;

        	        	default:
        	        	    goto loop766;	/* break out of the loop */
        	        	    break;
        	            }
        	        }
        	        loop766: ; /* Jump out to here if this rule does not match */


        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2920: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:2920:31: ( COLLATE_SYMBOL collation_name )?
        	        {
        	            int alt767=2;
        	            switch ( LA(1) )
        	            {
        	                case COLLATE_SYMBOL:
        	                	{
        	                		alt767=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt767)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2920:32: COLLATE_SYMBOL collation_name
        	        	    {
        	        	        COLLATE_SYMBOL2776 = (pANTLR3_COMMON_TOKEN) MATCHT(COLLATE_SYMBOL, &FOLLOW_COLLATE_SYMBOL_in_field_def_tail14677);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefield_def_tailEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        COLLATE_SYMBOL2776_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COLLATE_SYMBOL2776));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COLLATE_SYMBOL2776_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_collation_name_in_field_def_tail14679);
        	        	        collation_name2777=collation_name(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefield_def_tailEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, collation_name2777.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:2920:64: ( GENERATED_SYMBOL ALWAYS_SYMBOL )?
        	        {
        	            int alt768=2;
        	            switch ( LA(1) )
        	            {
        	                case GENERATED_SYMBOL:
        	                	{
        	                		alt768=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt768)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2920:65: GENERATED_SYMBOL ALWAYS_SYMBOL
        	        	    {
        	        	        GENERATED_SYMBOL2778 = (pANTLR3_COMMON_TOKEN) MATCHT(GENERATED_SYMBOL, &FOLLOW_GENERATED_SYMBOL_in_field_def_tail14684);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefield_def_tailEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        GENERATED_SYMBOL2778_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GENERATED_SYMBOL2778));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, GENERATED_SYMBOL2778_tree);
        	        	        }

        	        	        ALWAYS_SYMBOL2779 = (pANTLR3_COMMON_TOKEN) MATCHT(ALWAYS_SYMBOL, &FOLLOW_ALWAYS_SYMBOL_in_field_def_tail14686);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefield_def_tailEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        ALWAYS_SYMBOL2779_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ALWAYS_SYMBOL2779));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, ALWAYS_SYMBOL2779_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        AS_SYMBOL2780 = (pANTLR3_COMMON_TOKEN) MATCHT(AS_SYMBOL, &FOLLOW_AS_SYMBOL_in_field_def_tail14690);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefield_def_tailEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        AS_SYMBOL2780_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AS_SYMBOL2780));
        	        ADAPTOR->addChild(ADAPTOR, root_0, AS_SYMBOL2780_tree);
        	        }

        	        OPEN_PAR_SYMBOL2781 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_field_def_tail14694);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefield_def_tailEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2781_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2781));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2781_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_field_def_tail14696);
        	        expression2782=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefield_def_tailEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2782.tree);

        	        CLOSE_PAR_SYMBOL2783 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_field_def_tail14698);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefield_def_tailEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2783_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2783));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2783_tree);
        	        }

        	        // MySQL.g:2921:47: ( VIRTUAL_SYMBOL | STORED_SYMBOL )?
        	        {
        	            int alt769=2;
        	            switch ( LA(1) )
        	            {
        	                case STORED_SYMBOL:
        	                case VIRTUAL_SYMBOL:
        	                	{
        	                		alt769=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt769)
        	            {
        	        	case 1:
        	        	    // MySQL.g:
        	        	    {
        	        	        set2784=(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, set2784))
        	        	            );
        	        	            PERRORRECOVERY=ANTLR3_FALSE;
        	        	            FAILEDFLAG=ANTLR3_FALSE;

        	        	        }
        	        	        else
        	        	        {
        	        	            if (BACKTRACKING>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:2921:81: ( gcol_attribute )*

        	        for (;;)
        	        {
        	            int alt770=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:
        	            	{
        	            		alt770=1;
        	            	}
        	                break;

        	            }

        	            switch (alt770)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2921:81: gcol_attribute
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_gcol_attribute_in_field_def_tail14709);
        	        	        gcol_attribute2785=gcol_attribute(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefield_def_tailEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, gcol_attribute2785.tree);

        	        	    }
        	        	    break;

        	        	default:
        	        	    goto loop770;	/* break out of the loop */
        	        	    break;
        	            }
        	        }
        	        loop770: ; /* 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:2924: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_SYMBOL2786;
    pANTLR3_COMMON_TOKEN    DEFAULT_SYMBOL2788;
    pANTLR3_COMMON_TOKEN    NOW_SYMBOL2790;
    pANTLR3_COMMON_TOKEN    ON_SYMBOL2792;
    pANTLR3_COMMON_TOKEN    UPDATE_SYMBOL2793;
    pANTLR3_COMMON_TOKEN    NOW_SYMBOL2794;
    pANTLR3_COMMON_TOKEN    AUTO_INCREMENT_SYMBOL2796;
    pANTLR3_COMMON_TOKEN    SERIAL_SYMBOL2797;
    pANTLR3_COMMON_TOKEN    DEFAULT_SYMBOL2798;
    pANTLR3_COMMON_TOKEN    VALUE_SYMBOL2799;
    pANTLR3_COMMON_TOKEN    UNIQUE_SYMBOL2800;
    pANTLR3_COMMON_TOKEN    set2801;
    pANTLR3_COMMON_TOKEN    KEY_SYMBOL2802;
    pANTLR3_COMMON_TOKEN    KEY_SYMBOL2803;
    pANTLR3_COMMON_TOKEN    COMMENT_SYMBOL2804;
    pANTLR3_COMMON_TOKEN    COLLATE_SYMBOL2806;
    pANTLR3_COMMON_TOKEN    COLUMN_FORMAT_SYMBOL2808;
    pANTLR3_COMMON_TOKEN    set2809;
    pANTLR3_COMMON_TOKEN    STORAGE_SYMBOL2810;
    pANTLR3_COMMON_TOKEN    set2811;
    MySQLParser_null_literal_return null_literal2787;
    #undef	RETURN_TYPE_null_literal2787
    #define	RETURN_TYPE_null_literal2787 MySQLParser_null_literal_return

    MySQLParser_signed_literal_return signed_literal2789;
    #undef	RETURN_TYPE_signed_literal2789
    #define	RETURN_TYPE_signed_literal2789 MySQLParser_signed_literal_return

    MySQLParser_time_function_parameters_return time_function_parameters2791;
    #undef	RETURN_TYPE_time_function_parameters2791
    #define	RETURN_TYPE_time_function_parameters2791 MySQLParser_time_function_parameters_return

    MySQLParser_time_function_parameters_return time_function_parameters2795;
    #undef	RETURN_TYPE_time_function_parameters2795
    #define	RETURN_TYPE_time_function_parameters2795 MySQLParser_time_function_parameters_return

    MySQLParser_string_literal_return string_literal2805;
    #undef	RETURN_TYPE_string_literal2805
    #define	RETURN_TYPE_string_literal2805 MySQLParser_string_literal_return

    MySQLParser_collation_name_return collation_name2807;
    #undef	RETURN_TYPE_collation_name2807
    #define	RETURN_TYPE_collation_name2807 MySQLParser_collation_name_return

    pANTLR3_BASE_TREE NOT_SYMBOL2786_tree;
    pANTLR3_BASE_TREE DEFAULT_SYMBOL2788_tree;
    pANTLR3_BASE_TREE NOW_SYMBOL2790_tree;
    pANTLR3_BASE_TREE ON_SYMBOL2792_tree;
    pANTLR3_BASE_TREE UPDATE_SYMBOL2793_tree;
    pANTLR3_BASE_TREE NOW_SYMBOL2794_tree;
    pANTLR3_BASE_TREE AUTO_INCREMENT_SYMBOL2796_tree;
    pANTLR3_BASE_TREE SERIAL_SYMBOL2797_tree;
    pANTLR3_BASE_TREE DEFAULT_SYMBOL2798_tree;
    pANTLR3_BASE_TREE VALUE_SYMBOL2799_tree;
    pANTLR3_BASE_TREE UNIQUE_SYMBOL2800_tree;
    pANTLR3_BASE_TREE set2801_tree;
    pANTLR3_BASE_TREE KEY_SYMBOL2802_tree;
    pANTLR3_BASE_TREE KEY_SYMBOL2803_tree;
    pANTLR3_BASE_TREE COMMENT_SYMBOL2804_tree;
    pANTLR3_BASE_TREE COLLATE_SYMBOL2806_tree;
    pANTLR3_BASE_TREE COLUMN_FORMAT_SYMBOL2808_tree;
    pANTLR3_BASE_TREE set2809_tree;
    pANTLR3_BASE_TREE STORAGE_SYMBOL2810_tree;
    pANTLR3_BASE_TREE set2811_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    NOT_SYMBOL2786       = NULL;
    DEFAULT_SYMBOL2788       = NULL;
    NOW_SYMBOL2790       = NULL;
    ON_SYMBOL2792       = NULL;
    UPDATE_SYMBOL2793       = NULL;
    NOW_SYMBOL2794       = NULL;
    AUTO_INCREMENT_SYMBOL2796       = NULL;
    SERIAL_SYMBOL2797       = NULL;
    DEFAULT_SYMBOL2798       = NULL;
    VALUE_SYMBOL2799       = NULL;
    UNIQUE_SYMBOL2800       = NULL;
    set2801       = NULL;
    KEY_SYMBOL2802       = NULL;
    KEY_SYMBOL2803       = NULL;
    COMMENT_SYMBOL2804       = NULL;
    COLLATE_SYMBOL2806       = NULL;
    COLUMN_FORMAT_SYMBOL2808       = NULL;
    set2809       = NULL;
    STORAGE_SYMBOL2810       = NULL;
    set2811       = NULL;
    null_literal2787.tree = NULL;

    signed_literal2789.tree = NULL;

    time_function_parameters2791.tree = NULL;

    time_function_parameters2795.tree = NULL;

    string_literal2805.tree = NULL;

    collation_name2807.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    NOT_SYMBOL2786_tree   = NULL;
    DEFAULT_SYMBOL2788_tree   = NULL;
    NOW_SYMBOL2790_tree   = NULL;
    ON_SYMBOL2792_tree   = NULL;
    UPDATE_SYMBOL2793_tree   = NULL;
    NOW_SYMBOL2794_tree   = NULL;
    AUTO_INCREMENT_SYMBOL2796_tree   = NULL;
    SERIAL_SYMBOL2797_tree   = NULL;
    DEFAULT_SYMBOL2798_tree   = NULL;
    VALUE_SYMBOL2799_tree   = NULL;
    UNIQUE_SYMBOL2800_tree   = NULL;
    set2801_tree   = NULL;
    KEY_SYMBOL2802_tree   = NULL;
    KEY_SYMBOL2803_tree   = NULL;
    COMMENT_SYMBOL2804_tree   = NULL;
    COLLATE_SYMBOL2806_tree   = NULL;
    COLUMN_FORMAT_SYMBOL2808_tree   = NULL;
    set2809_tree   = NULL;
    STORAGE_SYMBOL2810_tree   = NULL;
    set2811_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2924: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 alt776;

            alt776=12;

            switch ( LA(1) )
            {
            case NOT_SYMBOL:
            case NULL2_SYMBOL:
            case NULL_SYMBOL:
            	{
            		alt776=1;
            	}
                break;
            case DEFAULT_SYMBOL:
            	{
            		alt776=2;
            	}
                break;
            case ON_SYMBOL:
            	{
            		alt776=3;
            	}
                break;
            case AUTO_INCREMENT_SYMBOL:
            	{
            		alt776=4;
            	}
                break;
            case SERIAL_SYMBOL:
            	{
            		alt776=5;
            	}
                break;
            case UNIQUE_SYMBOL:
            	{
            		switch ( LA(2) )
            		{
            		case KEY_SYMBOL:
            			{
            				{
            				    int LA776_14 = LA(3);
            				    if ( ((LA(2) != KEY_SYMBOL)))
            				    {
            				        alt776=6;
            				    }
            				    else if ( (ANTLR3_TRUE))
            				    {
            				        alt776=7;
            				    }
            				    else
            				    {
            				        if (BACKTRACKING>0)
            				        {
            				            FAILEDFLAG = ANTLR3_TRUE;
            				            return retval;
            				        }


            				        CONSTRUCTEX();
            				        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            				        EXCEPTION->message      = (void *)"";
            				        EXCEPTION->decisionNum  = 776;
            				        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 COLLATE_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:
            		case CLOSE_PAR_SYMBOL:
            		case COMMA_SYMBOL:
            			{
            				alt776=6;
            			}
            		    break;

            		default:
            		    if (BACKTRACKING>0)
            		    {
            		        FAILEDFLAG = ANTLR3_TRUE;
            		        return retval;
            		    }

            		    CONSTRUCTEX();
            		    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            		    EXCEPTION->message      = (void *)"";
            		    EXCEPTION->decisionNum  = 776;
            		    EXCEPTION->state        = 7;


            		    goto ruleattributeEx;

            		}

            	}
                break;
            case PRIMARY_SYMBOL:
            	{
            		alt776=7;
            	}
                break;
            case KEY_SYMBOL:
            	{
            		alt776=8;
            	}
                break;
            case COMMENT_SYMBOL:
            	{
            		alt776=9;
            	}
                break;
            case COLLATE_SYMBOL:
            	{
            		alt776=10;
            	}
                break;
            case COLUMN_FORMAT_SYMBOL:
            	{
            		alt776=11;
            	}
                break;
            case STORAGE_SYMBOL:
            	{
            		alt776=12;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 776;
                EXCEPTION->state        = 0;


                goto ruleattributeEx;

            }

            switch (alt776)
            {
        	case 1:
        	    // MySQL.g:2925:2: ( NOT_SYMBOL )? null_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:2925:2: ( NOT_SYMBOL )?
        	        {
        	            int alt772=2;
        	            switch ( LA(1) )
        	            {
        	                case NOT_SYMBOL:
        	                	{
        	                		alt772=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt772)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2925:2: NOT_SYMBOL
        	        	    {
        	        	        NOT_SYMBOL2786 = (pANTLR3_COMMON_TOKEN) MATCHT(NOT_SYMBOL, &FOLLOW_NOT_SYMBOL_in_attribute14719);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleattributeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        NOT_SYMBOL2786_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NOT_SYMBOL2786));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, NOT_SYMBOL2786_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_null_literal_in_attribute14722);
        	        null_literal2787=null_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleattributeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, null_literal2787.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2926:4: DEFAULT_SYMBOL ( signed_literal | NOW_SYMBOL ( time_function_parameters )? )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DEFAULT_SYMBOL2788 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_attribute14727);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleattributeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DEFAULT_SYMBOL2788_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL2788));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL2788_tree);
        	        }

        	        // MySQL.g:2926:19: ( signed_literal | NOW_SYMBOL ( time_function_parameters )? )
        	        {
        	            int alt774=2;
        	            switch ( LA(1) )
        	            {
        	            case DATE_SYMBOL:
        	            case TIMESTAMP_SYMBOL:
        	            case TIME_SYMBOL:
        	            case FALSE_SYMBOL:
        	            case NCHAR_TEXT:
        	            case NULL2_SYMBOL:
        	            case NULL_SYMBOL:
        	            case SINGLE_QUOTED_TEXT:
        	            case TRUE_SYMBOL:
        	            case BIN_NUMBER:
        	            case DECIMAL_NUMBER:
        	            case DOUBLE_QUOTED_TEXT:
        	            case FLOAT_NUMBER:
        	            case HEX_NUMBER:
        	            case INT_NUMBER:
        	            case LONG_NUMBER:
        	            case MINUS_OPERATOR:
        	            case PLUS_OPERATOR:
        	            case ULONGLONG_NUMBER:
        	            case UNDERSCORE_CHARSET:
        	            	{
        	            		alt774=1;
        	            	}
        	                break;
        	            case NOW_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        = 0;


        	                goto ruleattributeEx;

        	            }

        	            switch (alt774)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2926:20: signed_literal
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_signed_literal_in_attribute14730);
        	        	        signed_literal2789=signed_literal(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleattributeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, signed_literal2789.tree);

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:2926:37: NOW_SYMBOL ( time_function_parameters )?
        	        	    {
        	        	        NOW_SYMBOL2790 = (pANTLR3_COMMON_TOKEN) MATCHT(NOW_SYMBOL, &FOLLOW_NOW_SYMBOL_in_attribute14734);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleattributeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        NOW_SYMBOL2790_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NOW_SYMBOL2790));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, NOW_SYMBOL2790_tree);
        	        	        }

        	        	        // MySQL.g:2926:48: ( time_function_parameters )?
        	        	        {
        	        	            int alt773=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	                case OPEN_PAR_SYMBOL:
        	        	                	{
        	        	                		alt773=1;
        	        	                	}
        	        	                    break;
        	        	            }

        	        	            switch (alt773)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:2926:48: time_function_parameters
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_time_function_parameters_in_attribute14736);
        	        	        	        time_function_parameters2791=time_function_parameters(ctx);

        	        	        	        FOLLOWPOP();
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruleattributeEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, time_function_parameters2791.tree);

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2927:4: ON_SYMBOL UPDATE_SYMBOL NOW_SYMBOL ( time_function_parameters )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ON_SYMBOL2792 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_attribute14743);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleattributeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ON_SYMBOL2792_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ON_SYMBOL2792));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ON_SYMBOL2792_tree);
        	        }

        	        UPDATE_SYMBOL2793 = (pANTLR3_COMMON_TOKEN) MATCHT(UPDATE_SYMBOL, &FOLLOW_UPDATE_SYMBOL_in_attribute14745);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleattributeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        UPDATE_SYMBOL2793_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UPDATE_SYMBOL2793));
        	        ADAPTOR->addChild(ADAPTOR, root_0, UPDATE_SYMBOL2793_tree);
        	        }

        	        NOW_SYMBOL2794 = (pANTLR3_COMMON_TOKEN) MATCHT(NOW_SYMBOL, &FOLLOW_NOW_SYMBOL_in_attribute14747);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleattributeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NOW_SYMBOL2794_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NOW_SYMBOL2794));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NOW_SYMBOL2794_tree);
        	        }

        	        // MySQL.g:2927:39: ( time_function_parameters )?
        	        {
        	            int alt775=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt775=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt775)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2927:39: time_function_parameters
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_time_function_parameters_in_attribute14749);
        	        	        time_function_parameters2795=time_function_parameters(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleattributeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, time_function_parameters2795.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:2928:4: AUTO_INCREMENT_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        AUTO_INCREMENT_SYMBOL2796 = (pANTLR3_COMMON_TOKEN) MATCHT(AUTO_INCREMENT_SYMBOL, &FOLLOW_AUTO_INCREMENT_SYMBOL_in_attribute14755);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleattributeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        AUTO_INCREMENT_SYMBOL2796_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AUTO_INCREMENT_SYMBOL2796));
        	        ADAPTOR->addChild(ADAPTOR, root_0, AUTO_INCREMENT_SYMBOL2796_tree);
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:2929:4: SERIAL_SYMBOL DEFAULT_SYMBOL VALUE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SERIAL_SYMBOL2797 = (pANTLR3_COMMON_TOKEN) MATCHT(SERIAL_SYMBOL, &FOLLOW_SERIAL_SYMBOL_in_attribute14760);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleattributeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SERIAL_SYMBOL2797_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SERIAL_SYMBOL2797));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SERIAL_SYMBOL2797_tree);
        	        }

        	        DEFAULT_SYMBOL2798 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_attribute14762);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleattributeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DEFAULT_SYMBOL2798_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL2798));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL2798_tree);
        	        }

        	        VALUE_SYMBOL2799 = (pANTLR3_COMMON_TOKEN) MATCHT(VALUE_SYMBOL, &FOLLOW_VALUE_SYMBOL_in_attribute14764);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleattributeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        VALUE_SYMBOL2799_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VALUE_SYMBOL2799));
        	        ADAPTOR->addChild(ADAPTOR, root_0, VALUE_SYMBOL2799_tree);
        	        }

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:2930: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_SYMBOL2800 = (pANTLR3_COMMON_TOKEN) MATCHT(UNIQUE_SYMBOL, &FOLLOW_UNIQUE_SYMBOL_in_attribute14771);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleattributeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        UNIQUE_SYMBOL2800_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNIQUE_SYMBOL2800));
        	        ADAPTOR->addChild(ADAPTOR, root_0, UNIQUE_SYMBOL2800_tree);
        	        }

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:2931:4: ( PRIMARY_SYMBOL | UNIQUE_SYMBOL ) KEY_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        set2801=(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, set2801))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>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_SYMBOL2802 = (pANTLR3_COMMON_TOKEN) MATCHT(KEY_SYMBOL, &FOLLOW_KEY_SYMBOL_in_attribute14784);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleattributeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        KEY_SYMBOL2802_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, KEY_SYMBOL2802));
        	        ADAPTOR->addChild(ADAPTOR, root_0, KEY_SYMBOL2802_tree);
        	        }

        	    }
        	    break;
        	case 8:
        	    // MySQL.g:2932:4: KEY_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        KEY_SYMBOL2803 = (pANTLR3_COMMON_TOKEN) MATCHT(KEY_SYMBOL, &FOLLOW_KEY_SYMBOL_in_attribute14789);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleattributeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        KEY_SYMBOL2803_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, KEY_SYMBOL2803));
        	        ADAPTOR->addChild(ADAPTOR, root_0, KEY_SYMBOL2803_tree);
        	        }

        	    }
        	    break;
        	case 9:
        	    // MySQL.g:2933:4: COMMENT_SYMBOL string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        COMMENT_SYMBOL2804 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMENT_SYMBOL, &FOLLOW_COMMENT_SYMBOL_in_attribute14794);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleattributeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMENT_SYMBOL2804_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMENT_SYMBOL2804));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMENT_SYMBOL2804_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_attribute14796);
        	        string_literal2805=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleattributeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal2805.tree);

        	    }
        	    break;
        	case 10:
        	    // MySQL.g:2934:4: COLLATE_SYMBOL collation_name
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        COLLATE_SYMBOL2806 = (pANTLR3_COMMON_TOKEN) MATCHT(COLLATE_SYMBOL, &FOLLOW_COLLATE_SYMBOL_in_attribute14801);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleattributeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COLLATE_SYMBOL2806_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COLLATE_SYMBOL2806));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COLLATE_SYMBOL2806_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_collation_name_in_attribute14803);
        	        collation_name2807=collation_name(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleattributeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, collation_name2807.tree);

        	    }
        	    break;
        	case 11:
        	    // MySQL.g:2935:4: COLUMN_FORMAT_SYMBOL ( FIXED_SYMBOL | DYNAMIC_SYMBOL | DEFAULT_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        COLUMN_FORMAT_SYMBOL2808 = (pANTLR3_COMMON_TOKEN) MATCHT(COLUMN_FORMAT_SYMBOL, &FOLLOW_COLUMN_FORMAT_SYMBOL_in_attribute14808);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleattributeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COLUMN_FORMAT_SYMBOL2808_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COLUMN_FORMAT_SYMBOL2808));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COLUMN_FORMAT_SYMBOL2808_tree);
        	        }

        	        set2809=(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, set2809))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>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:2936:4: STORAGE_SYMBOL ( DISK_SYMBOL | MEMORY_SYMBOL | DEFAULT_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        STORAGE_SYMBOL2810 = (pANTLR3_COMMON_TOKEN) MATCHT(STORAGE_SYMBOL, &FOLLOW_STORAGE_SYMBOL_in_attribute14825);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleattributeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        STORAGE_SYMBOL2810_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STORAGE_SYMBOL2810));
        	        ADAPTOR->addChild(ADAPTOR, root_0, STORAGE_SYMBOL2810_tree);
        	        }

        	        set2811=(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, set2811))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>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:2940: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_SYMBOL2812;
    pANTLR3_COMMON_TOKEN    KEY_SYMBOL2813;
    pANTLR3_COMMON_TOKEN    COMMENT_SYMBOL2814;
    pANTLR3_COMMON_TOKEN    NULL_SYMBOL2817;
    pANTLR3_COMMON_TOKEN    PRIMARY_SYMBOL2818;
    pANTLR3_COMMON_TOKEN    KEY_SYMBOL2819;
    MySQLParser_text_string_return text_string2815;
    #undef	RETURN_TYPE_text_string2815
    #define	RETURN_TYPE_text_string2815 MySQLParser_text_string_return

    MySQLParser_not_rule_return not_rule2816;
    #undef	RETURN_TYPE_not_rule2816
    #define	RETURN_TYPE_not_rule2816 MySQLParser_not_rule_return

    pANTLR3_BASE_TREE UNIQUE_SYMBOL2812_tree;
    pANTLR3_BASE_TREE KEY_SYMBOL2813_tree;
    pANTLR3_BASE_TREE COMMENT_SYMBOL2814_tree;
    pANTLR3_BASE_TREE NULL_SYMBOL2817_tree;
    pANTLR3_BASE_TREE PRIMARY_SYMBOL2818_tree;
    pANTLR3_BASE_TREE KEY_SYMBOL2819_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    UNIQUE_SYMBOL2812       = NULL;
    KEY_SYMBOL2813       = NULL;
    COMMENT_SYMBOL2814       = NULL;
    NULL_SYMBOL2817       = NULL;
    PRIMARY_SYMBOL2818       = NULL;
    KEY_SYMBOL2819       = NULL;
    text_string2815.tree = NULL;

    not_rule2816.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    UNIQUE_SYMBOL2812_tree   = NULL;
    KEY_SYMBOL2813_tree   = NULL;
    COMMENT_SYMBOL2814_tree   = NULL;
    NULL_SYMBOL2817_tree   = NULL;
    PRIMARY_SYMBOL2818_tree   = NULL;
    KEY_SYMBOL2819_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2940:15: ( UNIQUE_SYMBOL ( options {greedy=true; } : KEY_SYMBOL )? | COMMENT_SYMBOL text_string | ( not_rule )? NULL_SYMBOL | ( PRIMARY_SYMBOL )? KEY_SYMBOL )

            ANTLR3_UINT32 alt780;

            alt780=4;

            switch ( LA(1) )
            {
            case UNIQUE_SYMBOL:
            	{
            		alt780=1;
            	}
                break;
            case COMMENT_SYMBOL:
            	{
            		alt780=2;
            	}
                break;
            case NOT2_SYMBOL:
            case NOT_SYMBOL:
            case NULL_SYMBOL:
            	{
            		alt780=3;
            	}
                break;
            case KEY_SYMBOL:
            case PRIMARY_SYMBOL:
            	{
            		alt780=4;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 780;
                EXCEPTION->state        = 0;


                goto rulegcol_attributeEx;

            }

            switch (alt780)
            {
        	case 1:
        	    // MySQL.g:2941:2: UNIQUE_SYMBOL ( options {greedy=true; } : KEY_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        UNIQUE_SYMBOL2812 = (pANTLR3_COMMON_TOKEN) MATCHT(UNIQUE_SYMBOL, &FOLLOW_UNIQUE_SYMBOL_in_gcol_attribute14847);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegcol_attributeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        UNIQUE_SYMBOL2812_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNIQUE_SYMBOL2812));
        	        ADAPTOR->addChild(ADAPTOR, root_0, UNIQUE_SYMBOL2812_tree);
        	        }

        	        // MySQL.g:2941:16: ( options {greedy=true; } : KEY_SYMBOL )?
        	        {
        	            int alt777=2;
        	            switch ( LA(1) )
        	            {
        	                case KEY_SYMBOL:
        	                	{
        	                		alt777=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt777)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2941:45: KEY_SYMBOL
        	        	    {
        	        	        KEY_SYMBOL2813 = (pANTLR3_COMMON_TOKEN) MATCHT(KEY_SYMBOL, &FOLLOW_KEY_SYMBOL_in_gcol_attribute14862);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulegcol_attributeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        KEY_SYMBOL2813_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, KEY_SYMBOL2813));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, KEY_SYMBOL2813_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2942:4: COMMENT_SYMBOL text_string
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        COMMENT_SYMBOL2814 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMENT_SYMBOL, &FOLLOW_COMMENT_SYMBOL_in_gcol_attribute14870);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegcol_attributeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMENT_SYMBOL2814_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMENT_SYMBOL2814));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMENT_SYMBOL2814_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_in_gcol_attribute14872);
        	        text_string2815=text_string(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegcol_attributeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string2815.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2943:4: ( not_rule )? NULL_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:2943:4: ( not_rule )?
        	        {
        	            int alt778=2;
        	            switch ( LA(1) )
        	            {
        	                case NOT2_SYMBOL:
        	                case NOT_SYMBOL:
        	                	{
        	                		alt778=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt778)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2943:4: not_rule
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_not_rule_in_gcol_attribute14877);
        	        	        not_rule2816=not_rule(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulegcol_attributeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, not_rule2816.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        NULL_SYMBOL2817 = (pANTLR3_COMMON_TOKEN) MATCHT(NULL_SYMBOL, &FOLLOW_NULL_SYMBOL_in_gcol_attribute14880);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegcol_attributeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NULL_SYMBOL2817_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NULL_SYMBOL2817));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NULL_SYMBOL2817_tree);
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:2944:4: ( PRIMARY_SYMBOL )? KEY_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:2944:4: ( PRIMARY_SYMBOL )?
        	        {
        	            int alt779=2;
        	            switch ( LA(1) )
        	            {
        	                case PRIMARY_SYMBOL:
        	                	{
        	                		alt779=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt779)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2944:4: PRIMARY_SYMBOL
        	        	    {
        	        	        PRIMARY_SYMBOL2818 = (pANTLR3_COMMON_TOKEN) MATCHT(PRIMARY_SYMBOL, &FOLLOW_PRIMARY_SYMBOL_in_gcol_attribute14885);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulegcol_attributeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        PRIMARY_SYMBOL2818_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PRIMARY_SYMBOL2818));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, PRIMARY_SYMBOL2818_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        KEY_SYMBOL2819 = (pANTLR3_COMMON_TOKEN) MATCHT(KEY_SYMBOL, &FOLLOW_KEY_SYMBOL_in_gcol_attribute14888);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegcol_attributeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        KEY_SYMBOL2819_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, KEY_SYMBOL2819));
        	        ADAPTOR->addChild(ADAPTOR, root_0, KEY_SYMBOL2819_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:2953: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_SYMBOL2820;
    pANTLR3_COMMON_TOKEN    MATCH_SYMBOL2823;
    pANTLR3_COMMON_TOKEN    set2824;
    pANTLR3_COMMON_TOKEN    ON_SYMBOL2825;
    pANTLR3_COMMON_TOKEN    DELETE_SYMBOL2826;
    pANTLR3_COMMON_TOKEN    ON_SYMBOL2828;
    pANTLR3_COMMON_TOKEN    UPDATE_SYMBOL2829;
    pANTLR3_COMMON_TOKEN    ON_SYMBOL2831;
    pANTLR3_COMMON_TOKEN    UPDATE_SYMBOL2832;
    pANTLR3_COMMON_TOKEN    ON_SYMBOL2834;
    pANTLR3_COMMON_TOKEN    DELETE_SYMBOL2835;
    MySQLParser_table_ref_return table_ref2821;
    #undef	RETURN_TYPE_table_ref2821
    #define	RETURN_TYPE_table_ref2821 MySQLParser_table_ref_return

    MySQLParser_index_columns_return index_columns2822;
    #undef	RETURN_TYPE_index_columns2822
    #define	RETURN_TYPE_index_columns2822 MySQLParser_index_columns_return

    MySQLParser_reference_option_return reference_option2827;
    #undef	RETURN_TYPE_reference_option2827
    #define	RETURN_TYPE_reference_option2827 MySQLParser_reference_option_return

    MySQLParser_reference_option_return reference_option2830;
    #undef	RETURN_TYPE_reference_option2830
    #define	RETURN_TYPE_reference_option2830 MySQLParser_reference_option_return

    MySQLParser_reference_option_return reference_option2833;
    #undef	RETURN_TYPE_reference_option2833
    #define	RETURN_TYPE_reference_option2833 MySQLParser_reference_option_return

    MySQLParser_reference_option_return reference_option2836;
    #undef	RETURN_TYPE_reference_option2836
    #define	RETURN_TYPE_reference_option2836 MySQLParser_reference_option_return

    pANTLR3_BASE_TREE REFERENCES_SYMBOL2820_tree;
    pANTLR3_BASE_TREE MATCH_SYMBOL2823_tree;
    pANTLR3_BASE_TREE set2824_tree;
    pANTLR3_BASE_TREE ON_SYMBOL2825_tree;
    pANTLR3_BASE_TREE DELETE_SYMBOL2826_tree;
    pANTLR3_BASE_TREE ON_SYMBOL2828_tree;
    pANTLR3_BASE_TREE UPDATE_SYMBOL2829_tree;
    pANTLR3_BASE_TREE ON_SYMBOL2831_tree;
    pANTLR3_BASE_TREE UPDATE_SYMBOL2832_tree;
    pANTLR3_BASE_TREE ON_SYMBOL2834_tree;
    pANTLR3_BASE_TREE DELETE_SYMBOL2835_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    REFERENCES_SYMBOL2820       = NULL;
    MATCH_SYMBOL2823       = NULL;
    set2824       = NULL;
    ON_SYMBOL2825       = NULL;
    DELETE_SYMBOL2826       = NULL;
    ON_SYMBOL2828       = NULL;
    UPDATE_SYMBOL2829       = NULL;
    ON_SYMBOL2831       = NULL;
    UPDATE_SYMBOL2832       = NULL;
    ON_SYMBOL2834       = NULL;
    DELETE_SYMBOL2835       = NULL;
    table_ref2821.tree = NULL;

    index_columns2822.tree = NULL;

    reference_option2827.tree = NULL;

    reference_option2830.tree = NULL;

    reference_option2833.tree = NULL;

    reference_option2836.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    REFERENCES_SYMBOL2820_tree   = NULL;
    MATCH_SYMBOL2823_tree   = NULL;
    set2824_tree   = NULL;
    ON_SYMBOL2825_tree   = NULL;
    DELETE_SYMBOL2826_tree   = NULL;
    ON_SYMBOL2828_tree   = NULL;
    UPDATE_SYMBOL2829_tree   = NULL;
    ON_SYMBOL2831_tree   = NULL;
    UPDATE_SYMBOL2832_tree   = NULL;
    ON_SYMBOL2834_tree   = NULL;
    DELETE_SYMBOL2835_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2953: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:2954: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_SYMBOL2820 = (pANTLR3_COMMON_TOKEN) MATCHT(REFERENCES_SYMBOL, &FOLLOW_REFERENCES_SYMBOL_in_reference_definition14900);
            if  (HASEXCEPTION())
            {
                goto rulereference_definitionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            REFERENCES_SYMBOL2820_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REFERENCES_SYMBOL2820))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, REFERENCES_SYMBOL2820_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_table_ref_in_reference_definition14903);
            table_ref2821=table_ref(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulereference_definitionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref2821.tree);

            // MySQL.g:2954:31: ( index_columns )?
            {
                int alt781=2;
                switch ( LA(1) )
                {
                    case OPEN_PAR_SYMBOL:
                    	{
                    		alt781=1;
                    	}
                        break;
                }

                switch (alt781)
                {
            	case 1:
            	    // MySQL.g:2954:31: index_columns
            	    {
            	        FOLLOWPUSH(FOLLOW_index_columns_in_reference_definition14905);
            	        index_columns2822=index_columns(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulereference_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_columns2822.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:2957:3: ( MATCH_SYMBOL ( FULL_SYMBOL | PARTIAL_SYMBOL | SIMPLE_SYMBOL ) )?
            {
                int alt782=2;
                switch ( LA(1) )
                {
                    case MATCH_SYMBOL:
                    	{
                    		alt782=1;
                    	}
                        break;
                }

                switch (alt782)
                {
            	case 1:
            	    // MySQL.g:2957:4: MATCH_SYMBOL ( FULL_SYMBOL | PARTIAL_SYMBOL | SIMPLE_SYMBOL )
            	    {
            	        MATCH_SYMBOL2823 = (pANTLR3_COMMON_TOKEN) MATCHT(MATCH_SYMBOL, &FOLLOW_MATCH_SYMBOL_in_reference_definition14917);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulereference_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        MATCH_SYMBOL2823_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MATCH_SYMBOL2823));
            	        ADAPTOR->addChild(ADAPTOR, root_0, MATCH_SYMBOL2823_tree);
            	        }

            	        set2824=(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, set2824))
            	            );
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

            	        }
            	        else
            	        {
            	            if (BACKTRACKING>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:2958: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 alt785=3;
                switch ( LA(1) )
                {
                    case ON_SYMBOL:
                    	{
                    		switch ( LA(2) )
                    		{
                    		    case DELETE_SYMBOL:
                    		    	{
                    		    		alt785=1;
                    		    	}
                    		        break;
                    		    case UPDATE_SYMBOL:
                    		    	{
                    		    		alt785=2;
                    		    	}
                    		        break;
                    		}

                    	}
                        break;
                }

                switch (alt785)
                {
            	case 1:
            	    // MySQL.g:2959:4: ON_SYMBOL DELETE_SYMBOL reference_option ( ON_SYMBOL UPDATE_SYMBOL reference_option )?
            	    {
            	        ON_SYMBOL2825 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_reference_definition14940);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulereference_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ON_SYMBOL2825_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ON_SYMBOL2825));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ON_SYMBOL2825_tree);
            	        }

            	        DELETE_SYMBOL2826 = (pANTLR3_COMMON_TOKEN) MATCHT(DELETE_SYMBOL, &FOLLOW_DELETE_SYMBOL_in_reference_definition14942);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulereference_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DELETE_SYMBOL2826_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DELETE_SYMBOL2826));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DELETE_SYMBOL2826_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_reference_option_in_reference_definition14944);
            	        reference_option2827=reference_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulereference_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, reference_option2827.tree);

            	        // MySQL.g:2959:45: ( ON_SYMBOL UPDATE_SYMBOL reference_option )?
            	        {
            	            int alt783=2;
            	            switch ( LA(1) )
            	            {
            	                case ON_SYMBOL:
            	                	{
            	                		alt783=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt783)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2959:46: ON_SYMBOL UPDATE_SYMBOL reference_option
            	        	    {
            	        	        ON_SYMBOL2828 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_reference_definition14947);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulereference_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        ON_SYMBOL2828_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ON_SYMBOL2828));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, ON_SYMBOL2828_tree);
            	        	        }

            	        	        UPDATE_SYMBOL2829 = (pANTLR3_COMMON_TOKEN) MATCHT(UPDATE_SYMBOL, &FOLLOW_UPDATE_SYMBOL_in_reference_definition14949);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulereference_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        UPDATE_SYMBOL2829_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UPDATE_SYMBOL2829));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, UPDATE_SYMBOL2829_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_reference_option_in_reference_definition14951);
            	        	        reference_option2830=reference_option(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulereference_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, reference_option2830.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2960:6: ON_SYMBOL UPDATE_SYMBOL reference_option ( ON_SYMBOL DELETE_SYMBOL reference_option )?
            	    {
            	        ON_SYMBOL2831 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_reference_definition14960);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulereference_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ON_SYMBOL2831_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ON_SYMBOL2831));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ON_SYMBOL2831_tree);
            	        }

            	        UPDATE_SYMBOL2832 = (pANTLR3_COMMON_TOKEN) MATCHT(UPDATE_SYMBOL, &FOLLOW_UPDATE_SYMBOL_in_reference_definition14962);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulereference_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        UPDATE_SYMBOL2832_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UPDATE_SYMBOL2832));
            	        ADAPTOR->addChild(ADAPTOR, root_0, UPDATE_SYMBOL2832_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_reference_option_in_reference_definition14964);
            	        reference_option2833=reference_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulereference_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, reference_option2833.tree);

            	        // MySQL.g:2960:47: ( ON_SYMBOL DELETE_SYMBOL reference_option )?
            	        {
            	            int alt784=2;
            	            switch ( LA(1) )
            	            {
            	                case ON_SYMBOL:
            	                	{
            	                		alt784=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt784)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2960:48: ON_SYMBOL DELETE_SYMBOL reference_option
            	        	    {
            	        	        ON_SYMBOL2834 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_reference_definition14967);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulereference_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        ON_SYMBOL2834_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ON_SYMBOL2834));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, ON_SYMBOL2834_tree);
            	        	        }

            	        	        DELETE_SYMBOL2835 = (pANTLR3_COMMON_TOKEN) MATCHT(DELETE_SYMBOL, &FOLLOW_DELETE_SYMBOL_in_reference_definition14969);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulereference_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        DELETE_SYMBOL2835_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DELETE_SYMBOL2835));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, DELETE_SYMBOL2835_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_reference_option_in_reference_definition14971);
            	        	        reference_option2836=reference_option(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulereference_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, reference_option2836.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:2964: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_SYMBOL2837;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2839;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2841;
    MySQLParser_index_column_return index_column2838;
    #undef	RETURN_TYPE_index_column2838
    #define	RETURN_TYPE_index_column2838 MySQLParser_index_column_return

    MySQLParser_index_column_return index_column2840;
    #undef	RETURN_TYPE_index_column2840
    #define	RETURN_TYPE_index_column2840 MySQLParser_index_column_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2837_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2839_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2841_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL2837       = NULL;
    COMMA_SYMBOL2839       = NULL;
    CLOSE_PAR_SYMBOL2841       = NULL;
    index_column2838.tree = NULL;

    index_column2840.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL2837_tree   = NULL;
    COMMA_SYMBOL2839_tree   = NULL;
    CLOSE_PAR_SYMBOL2841_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2964:14: ( OPEN_PAR_SYMBOL index_column ( COMMA_SYMBOL index_column )* CLOSE_PAR_SYMBOL )
        // MySQL.g:2965:2: OPEN_PAR_SYMBOL index_column ( COMMA_SYMBOL index_column )* CLOSE_PAR_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            OPEN_PAR_SYMBOL2837 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_index_columns14987);
            if  (HASEXCEPTION())
            {
                goto ruleindex_columnsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL2837_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2837));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2837_tree);
            }

            FOLLOWPUSH(FOLLOW_index_column_in_index_columns14989);
            index_column2838=index_column(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleindex_columnsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_column2838.tree);

            // MySQL.g:2965:31: ( COMMA_SYMBOL index_column )*

            for (;;)
            {
                int alt786=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt786=1;
                	}
                    break;

                }

                switch (alt786)
                {
            	case 1:
            	    // MySQL.g:2965:32: COMMA_SYMBOL index_column
            	    {
            	        COMMA_SYMBOL2839 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_index_columns14992);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleindex_columnsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL2839_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2839));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2839_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_index_column_in_index_columns14994);
            	        index_column2840=index_column(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleindex_columnsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_column2840.tree);

            	    }
            	    break;

            	default:
            	    goto loop786;	/* break out of the loop */
            	    break;
                }
            }
            loop786: ; /* Jump out to here if this rule does not match */


            CLOSE_PAR_SYMBOL2841 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_index_columns14998);
            if  (HASEXCEPTION())
            {
                goto ruleindex_columnsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL2841_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2841));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2841_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:2968: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 identifier2842;
    #undef	RETURN_TYPE_identifier2842
    #define	RETURN_TYPE_identifier2842 MySQLParser_identifier_return

    MySQLParser_field_length_return field_length2843;
    #undef	RETURN_TYPE_field_length2843
    #define	RETURN_TYPE_field_length2843 MySQLParser_field_length_return

    MySQLParser_direction_return direction2844;
    #undef	RETURN_TYPE_direction2844
    #define	RETURN_TYPE_direction2844 MySQLParser_direction_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    identifier2842.tree = NULL;

    field_length2843.tree = NULL;

    direction2844.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:2968:13: ( identifier ( field_length )? ( direction )? )
        // MySQL.g:2969:2: identifier ( field_length )? ( direction )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_identifier_in_index_column15007);
            identifier2842=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleindex_columnEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2842.tree);

            // MySQL.g:2969:13: ( field_length )?
            {
                int alt787=2;
                switch ( LA(1) )
                {
                    case OPEN_PAR_SYMBOL:
                    	{
                    		alt787=1;
                    	}
                        break;
                }

                switch (alt787)
                {
            	case 1:
            	    // MySQL.g:2969:13: field_length
            	    {
            	        FOLLOWPUSH(FOLLOW_field_length_in_index_column15009);
            	        field_length2843=field_length(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleindex_columnEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_length2843.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:2969:27: ( direction )?
            {
                int alt788=2;
                switch ( LA(1) )
                {
                    case ASC_SYMBOL:
                    case DESC_SYMBOL:
                    	{
                    		alt788=1;
                    	}
                        break;
                }

                switch (alt788)
                {
            	case 1:
            	    // MySQL.g:2969:27: direction
            	    {
            	        FOLLOWPUSH(FOLLOW_direction_in_index_column15012);
            	        direction2844=direction(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleindex_columnEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, direction2844.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:2972: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    set2845;
    pANTLR3_COMMON_TOKEN    set2846;

    pANTLR3_BASE_TREE set2845_tree;
    pANTLR3_BASE_TREE set2846_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2845       = NULL;
    set2846       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2845_tree   = NULL;
    set2846_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2972:11: ( ( USING_SYMBOL | TYPE_SYMBOL ) ( BTREE_SYMBOL | RTREE_SYMBOL | HASH_SYMBOL ) )
        // MySQL.g:2973:2: ( USING_SYMBOL | TYPE_SYMBOL ) ( BTREE_SYMBOL | RTREE_SYMBOL | HASH_SYMBOL )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set2845=(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, set2845))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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;
            }


            set2846=(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, set2846))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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:2976: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_type2847;
    #undef	RETURN_TYPE_index_type2847
    #define	RETURN_TYPE_index_type2847 MySQLParser_index_type_return

    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;

    index_type2847.tree = NULL;

    all_key_option2848.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2976:20: ( index_type | all_key_option )

            ANTLR3_UINT32 alt789;

            alt789=2;

            switch ( LA(1) )
            {
            case TYPE_SYMBOL:
            case USING_SYMBOL:
            	{
            		alt789=1;
            	}
                break;
            case COMMENT_SYMBOL:
            case KEY_BLOCK_SIZE_SYMBOL:
            	{
            		alt789=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 789;
                EXCEPTION->state        = 0;


                goto rulenormal_index_optionEx;

            }

            switch (alt789)
            {
        	case 1:
        	    // MySQL.g:2977:2: index_type
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_index_type_in_normal_index_option15049);
        	        index_type2847=index_type(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulenormal_index_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_type2847.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2978:4: all_key_option
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_all_key_option_in_normal_index_option15054);
        	        all_key_option2848=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_option2848.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:2981: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_SYMBOL2849;
    pANTLR3_COMMON_TOKEN    PARSER_SYMBOL2850;
    MySQLParser_identifier_return identifier2851;
    #undef	RETURN_TYPE_identifier2851
    #define	RETURN_TYPE_identifier2851 MySQLParser_identifier_return

    MySQLParser_all_key_option_return all_key_option2852;
    #undef	RETURN_TYPE_all_key_option2852
    #define	RETURN_TYPE_all_key_option2852 MySQLParser_all_key_option_return

    pANTLR3_BASE_TREE WITH_SYMBOL2849_tree;
    pANTLR3_BASE_TREE PARSER_SYMBOL2850_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    WITH_SYMBOL2849       = NULL;
    PARSER_SYMBOL2850       = NULL;
    identifier2851.tree = NULL;

    all_key_option2852.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    WITH_SYMBOL2849_tree   = NULL;
    PARSER_SYMBOL2850_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2981:22: ( WITH_SYMBOL PARSER_SYMBOL identifier | all_key_option )

            ANTLR3_UINT32 alt790;

            alt790=2;

            switch ( LA(1) )
            {
            case WITH_SYMBOL:
            	{
            		alt790=1;
            	}
                break;
            case COMMENT_SYMBOL:
            case KEY_BLOCK_SIZE_SYMBOL:
            	{
            		alt790=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 790;
                EXCEPTION->state        = 0;


                goto rulefulltext_index_optionEx;

            }

            switch (alt790)
            {
        	case 1:
        	    // MySQL.g:2982:2: WITH_SYMBOL PARSER_SYMBOL identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        WITH_SYMBOL2849 = (pANTLR3_COMMON_TOKEN) MATCHT(WITH_SYMBOL, &FOLLOW_WITH_SYMBOL_in_fulltext_index_option15063);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefulltext_index_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        WITH_SYMBOL2849_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WITH_SYMBOL2849));
        	        ADAPTOR->addChild(ADAPTOR, root_0, WITH_SYMBOL2849_tree);
        	        }

        	        PARSER_SYMBOL2850 = (pANTLR3_COMMON_TOKEN) MATCHT(PARSER_SYMBOL, &FOLLOW_PARSER_SYMBOL_in_fulltext_index_option15065);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefulltext_index_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PARSER_SYMBOL2850_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARSER_SYMBOL2850));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PARSER_SYMBOL2850_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_identifier_in_fulltext_index_option15067);
        	        identifier2851=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefulltext_index_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2851.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2983:4: all_key_option
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_all_key_option_in_fulltext_index_option15072);
        	        all_key_option2852=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_option2852.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:2986: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_option2853;
    #undef	RETURN_TYPE_all_key_option2853
    #define	RETURN_TYPE_all_key_option2853 MySQLParser_all_key_option_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    all_key_option2853.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:2986:21: ( all_key_option )
        // MySQL.g:2987:2: all_key_option
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_all_key_option_in_spatial_index_option15081);
            all_key_option2853=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_option2853.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:2990: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_SYMBOL2854;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2855;
    pANTLR3_COMMON_TOKEN    COMMENT_SYMBOL2857;
    MySQLParser_ulong_number_return ulong_number2856;
    #undef	RETURN_TYPE_ulong_number2856
    #define	RETURN_TYPE_ulong_number2856 MySQLParser_ulong_number_return

    MySQLParser_string_literal_return string_literal2858;
    #undef	RETURN_TYPE_string_literal2858
    #define	RETURN_TYPE_string_literal2858 MySQLParser_string_literal_return

    pANTLR3_BASE_TREE KEY_BLOCK_SIZE_SYMBOL2854_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2855_tree;
    pANTLR3_BASE_TREE COMMENT_SYMBOL2857_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    KEY_BLOCK_SIZE_SYMBOL2854       = NULL;
    EQUAL_OPERATOR2855       = NULL;
    COMMENT_SYMBOL2857       = NULL;
    ulong_number2856.tree = NULL;

    string_literal2858.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    KEY_BLOCK_SIZE_SYMBOL2854_tree   = NULL;
    EQUAL_OPERATOR2855_tree   = NULL;
    COMMENT_SYMBOL2857_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2990:15: ( KEY_BLOCK_SIZE_SYMBOL ( EQUAL_OPERATOR )? ulong_number |{...}? COMMENT_SYMBOL string_literal )

            ANTLR3_UINT32 alt792;

            alt792=2;

            switch ( LA(1) )
            {
            case KEY_BLOCK_SIZE_SYMBOL:
            	{
            		alt792=1;
            	}
                break;
            case COMMENT_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 ruleall_key_optionEx;

            }

            switch (alt792)
            {
        	case 1:
        	    // MySQL.g:2991:2: KEY_BLOCK_SIZE_SYMBOL ( EQUAL_OPERATOR )? ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        KEY_BLOCK_SIZE_SYMBOL2854 = (pANTLR3_COMMON_TOKEN) MATCHT(KEY_BLOCK_SIZE_SYMBOL, &FOLLOW_KEY_BLOCK_SIZE_SYMBOL_in_all_key_option15090);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleall_key_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        KEY_BLOCK_SIZE_SYMBOL2854_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, KEY_BLOCK_SIZE_SYMBOL2854));
        	        ADAPTOR->addChild(ADAPTOR, root_0, KEY_BLOCK_SIZE_SYMBOL2854_tree);
        	        }

        	        // MySQL.g:2991:24: ( EQUAL_OPERATOR )?
        	        {
        	            int alt791=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt791=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt791)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2991:24: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR2855 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_all_key_option15092);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleall_key_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR2855_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2855));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2855_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_ulong_number_in_all_key_option15095);
        	        ulong_number2856=ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleall_key_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number2856.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2992: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_SYMBOL2857 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMENT_SYMBOL, &FOLLOW_COMMENT_SYMBOL_in_all_key_option15102);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleall_key_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMENT_SYMBOL2857_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMENT_SYMBOL2857));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMENT_SYMBOL2857_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_all_key_option15104);
        	        string_literal2858=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleall_key_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal2858.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:2995: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_SYMBOL2859;
    pANTLR3_COMMON_TOKEN    CASCADE_SYMBOL2860;
    pANTLR3_COMMON_TOKEN    SET_SYMBOL2861;
    pANTLR3_COMMON_TOKEN    NO_SYMBOL2863;
    pANTLR3_COMMON_TOKEN    ACTION_SYMBOL2864;
    MySQLParser_null_literal_return null_literal2862;
    #undef	RETURN_TYPE_null_literal2862
    #define	RETURN_TYPE_null_literal2862 MySQLParser_null_literal_return

    pANTLR3_BASE_TREE RESTRICT_SYMBOL2859_tree;
    pANTLR3_BASE_TREE CASCADE_SYMBOL2860_tree;
    pANTLR3_BASE_TREE SET_SYMBOL2861_tree;
    pANTLR3_BASE_TREE NO_SYMBOL2863_tree;
    pANTLR3_BASE_TREE ACTION_SYMBOL2864_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    RESTRICT_SYMBOL2859       = NULL;
    CASCADE_SYMBOL2860       = NULL;
    SET_SYMBOL2861       = NULL;
    NO_SYMBOL2863       = NULL;
    ACTION_SYMBOL2864       = NULL;
    null_literal2862.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    RESTRICT_SYMBOL2859_tree   = NULL;
    CASCADE_SYMBOL2860_tree   = NULL;
    SET_SYMBOL2861_tree   = NULL;
    NO_SYMBOL2863_tree   = NULL;
    ACTION_SYMBOL2864_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2995:17: ( RESTRICT_SYMBOL | CASCADE_SYMBOL | SET_SYMBOL null_literal | NO_SYMBOL ACTION_SYMBOL )

            ANTLR3_UINT32 alt793;

            alt793=4;

            switch ( LA(1) )
            {
            case RESTRICT_SYMBOL:
            	{
            		alt793=1;
            	}
                break;
            case CASCADE_SYMBOL:
            	{
            		alt793=2;
            	}
                break;
            case SET_SYMBOL:
            	{
            		alt793=3;
            	}
                break;
            case NO_SYMBOL:
            	{
            		alt793=4;
            	}
                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 rulereference_optionEx;

            }

            switch (alt793)
            {
        	case 1:
        	    // MySQL.g:2996:2: RESTRICT_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        RESTRICT_SYMBOL2859 = (pANTLR3_COMMON_TOKEN) MATCHT(RESTRICT_SYMBOL, &FOLLOW_RESTRICT_SYMBOL_in_reference_option15113);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereference_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        RESTRICT_SYMBOL2859_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RESTRICT_SYMBOL2859));
        	        ADAPTOR->addChild(ADAPTOR, root_0, RESTRICT_SYMBOL2859_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2996:20: CASCADE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CASCADE_SYMBOL2860 = (pANTLR3_COMMON_TOKEN) MATCHT(CASCADE_SYMBOL, &FOLLOW_CASCADE_SYMBOL_in_reference_option15117);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereference_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CASCADE_SYMBOL2860_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CASCADE_SYMBOL2860));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CASCADE_SYMBOL2860_tree);
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2996:37: SET_SYMBOL null_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SET_SYMBOL2861 = (pANTLR3_COMMON_TOKEN) MATCHT(SET_SYMBOL, &FOLLOW_SET_SYMBOL_in_reference_option15121);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereference_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SET_SYMBOL2861_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SET_SYMBOL2861));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SET_SYMBOL2861_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_null_literal_in_reference_option15123);
        	        null_literal2862=null_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereference_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, null_literal2862.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:2996:63: NO_SYMBOL ACTION_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NO_SYMBOL2863 = (pANTLR3_COMMON_TOKEN) MATCHT(NO_SYMBOL, &FOLLOW_NO_SYMBOL_in_reference_option15127);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereference_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NO_SYMBOL2863_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NO_SYMBOL2863));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NO_SYMBOL2863_tree);
        	        }

        	        ACTION_SYMBOL2864 = (pANTLR3_COMMON_TOKEN) MATCHT(ACTION_SYMBOL, &FOLLOW_ACTION_SYMBOL_in_reference_option15129);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereference_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ACTION_SYMBOL2864_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ACTION_SYMBOL2864));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ACTION_SYMBOL2864_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:2999: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_elements2865;
    #undef	RETURN_TYPE_data_type_elements2865
    #define	RETURN_TYPE_data_type_elements2865 MySQLParser_data_type_elements_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_data_type_elements;
    /* Initialize rule variables
     */

    root_0 = NULL;

    data_type_elements2865.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:2999:10: ( data_type_elements -> ^( DATA_TYPE_TOKEN data_type_elements ) )
        // MySQL.g:3000:2: data_type_elements
        {
            FOLLOWPUSH(FOLLOW_data_type_elements_in_data_type15138);
            data_type_elements2865=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_elements2865.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;
            	// 3000:21: -> ^( DATA_TYPE_TOKEN data_type_elements )
            	{
            	    // MySQL.g:3000: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:3003: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    EOF2867;
    MySQLParser_data_type_elements_return data_type_elements2866;
    #undef	RETURN_TYPE_data_type_elements2866
    #define	RETURN_TYPE_data_type_elements2866 MySQLParser_data_type_elements_return

    pANTLR3_BASE_TREE EOF2867_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    EOF2867       = NULL;
    data_type_elements2866.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    EOF2867_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3003:21: ( data_type_elements EOF )
        // MySQL.g:3004:2: data_type_elements EOF
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_data_type_elements_in_data_type_definition15156);
            data_type_elements2866=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_elements2866.tree);

            EOF2867 = (pANTLR3_COMMON_TOKEN) MATCHT(EOF, &FOLLOW_EOF_in_data_type_definition15158);
            if  (HASEXCEPTION())
            {
                goto ruledata_type_definitionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EOF2867_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EOF2867));
            ADAPTOR->addChild(ADAPTOR, root_0, EOF2867_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:3007: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_SYMBOL2874;
    pANTLR3_COMMON_TOKEN    BIT_SYMBOL2877;
    pANTLR3_COMMON_TOKEN    BOOL_SYMBOL2879;
    pANTLR3_COMMON_TOKEN    BOOLEAN_SYMBOL2880;
    pANTLR3_COMMON_TOKEN    CHAR_SYMBOL2881;
    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL2886;
    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL2887;
    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL2894;
    pANTLR3_COMMON_TOKEN    VARBINARY_SYMBOL2895;
    pANTLR3_COMMON_TOKEN    YEAR_SYMBOL2897;
    pANTLR3_COMMON_TOKEN    DATE_SYMBOL2900;
    pANTLR3_COMMON_TOKEN    TIME_SYMBOL2901;
    pANTLR3_COMMON_TOKEN    TIMESTAMP_SYMBOL2903;
    pANTLR3_COMMON_TOKEN    DATETIME_SYMBOL2905;
    pANTLR3_COMMON_TOKEN    TINYBLOB_SYMBOL2907;
    pANTLR3_COMMON_TOKEN    BLOB_SYMBOL2908;
    pANTLR3_COMMON_TOKEN    MEDIUMBLOB_SYMBOL2910;
    pANTLR3_COMMON_TOKEN    LONGBLOB_SYMBOL2911;
    pANTLR3_COMMON_TOKEN    LONG_SYMBOL2912;
    pANTLR3_COMMON_TOKEN    VARBINARY_SYMBOL2913;
    pANTLR3_COMMON_TOKEN    LONG_SYMBOL2914;
    pANTLR3_COMMON_TOKEN    TINYTEXT_SYMBOL2917;
    pANTLR3_COMMON_TOKEN    TEXT_SYMBOL2919;
    pANTLR3_COMMON_TOKEN    MEDIUMTEXT_SYMBOL2922;
    pANTLR3_COMMON_TOKEN    LONGTEXT_SYMBOL2924;
    pANTLR3_COMMON_TOKEN    DECIMAL_SYMBOL2926;
    pANTLR3_COMMON_TOKEN    NUMERIC_SYMBOL2929;
    pANTLR3_COMMON_TOKEN    FIXED_SYMBOL2932;
    pANTLR3_COMMON_TOKEN    ENUM_SYMBOL2935;
    pANTLR3_COMMON_TOKEN    SET_SYMBOL2938;
    pANTLR3_COMMON_TOKEN    SERIAL_SYMBOL2941;
    pANTLR3_COMMON_TOKEN    JSON_SYMBOL2942;
    MySQLParser_integer_type_return integer_type2868;
    #undef	RETURN_TYPE_integer_type2868
    #define	RETURN_TYPE_integer_type2868 MySQLParser_integer_type_return

    MySQLParser_field_length_return field_length2869;
    #undef	RETURN_TYPE_field_length2869
    #define	RETURN_TYPE_field_length2869 MySQLParser_field_length_return

    MySQLParser_field_options_return field_options2870;
    #undef	RETURN_TYPE_field_options2870
    #define	RETURN_TYPE_field_options2870 MySQLParser_field_options_return

    MySQLParser_real_literal_return real_literal2871;
    #undef	RETURN_TYPE_real_literal2871
    #define	RETURN_TYPE_real_literal2871 MySQLParser_real_literal_return

    MySQLParser_precision_return precision2872;
    #undef	RETURN_TYPE_precision2872
    #define	RETURN_TYPE_precision2872 MySQLParser_precision_return

    MySQLParser_field_options_return field_options2873;
    #undef	RETURN_TYPE_field_options2873
    #define	RETURN_TYPE_field_options2873 MySQLParser_field_options_return

    MySQLParser_float_options_return float_options2875;
    #undef	RETURN_TYPE_float_options2875
    #define	RETURN_TYPE_float_options2875 MySQLParser_float_options_return

    MySQLParser_field_options_return field_options2876;
    #undef	RETURN_TYPE_field_options2876
    #define	RETURN_TYPE_field_options2876 MySQLParser_field_options_return

    MySQLParser_field_length_return field_length2878;
    #undef	RETURN_TYPE_field_length2878
    #define	RETURN_TYPE_field_length2878 MySQLParser_field_length_return

    MySQLParser_field_length_return field_length2882;
    #undef	RETURN_TYPE_field_length2882
    #define	RETURN_TYPE_field_length2882 MySQLParser_field_length_return

    MySQLParser_string_binary_return string_binary2883;
    #undef	RETURN_TYPE_string_binary2883
    #define	RETURN_TYPE_string_binary2883 MySQLParser_string_binary_return

    MySQLParser_nchar_literal_return nchar_literal2884;
    #undef	RETURN_TYPE_nchar_literal2884
    #define	RETURN_TYPE_nchar_literal2884 MySQLParser_nchar_literal_return

    MySQLParser_field_length_return field_length2885;
    #undef	RETURN_TYPE_field_length2885
    #define	RETURN_TYPE_field_length2885 MySQLParser_field_length_return

    MySQLParser_field_length_return field_length2888;
    #undef	RETURN_TYPE_field_length2888
    #define	RETURN_TYPE_field_length2888 MySQLParser_field_length_return

    MySQLParser_varchar_literal_return varchar_literal2889;
    #undef	RETURN_TYPE_varchar_literal2889
    #define	RETURN_TYPE_varchar_literal2889 MySQLParser_varchar_literal_return

    MySQLParser_field_length_return field_length2890;
    #undef	RETURN_TYPE_field_length2890
    #define	RETURN_TYPE_field_length2890 MySQLParser_field_length_return

    MySQLParser_string_binary_return string_binary2891;
    #undef	RETURN_TYPE_string_binary2891
    #define	RETURN_TYPE_string_binary2891 MySQLParser_string_binary_return

    MySQLParser_nvarchar_literal_return nvarchar_literal2892;
    #undef	RETURN_TYPE_nvarchar_literal2892
    #define	RETURN_TYPE_nvarchar_literal2892 MySQLParser_nvarchar_literal_return

    MySQLParser_field_length_return field_length2893;
    #undef	RETURN_TYPE_field_length2893
    #define	RETURN_TYPE_field_length2893 MySQLParser_field_length_return

    MySQLParser_field_length_return field_length2896;
    #undef	RETURN_TYPE_field_length2896
    #define	RETURN_TYPE_field_length2896 MySQLParser_field_length_return

    MySQLParser_field_length_return field_length2898;
    #undef	RETURN_TYPE_field_length2898
    #define	RETURN_TYPE_field_length2898 MySQLParser_field_length_return

    MySQLParser_field_options_return field_options2899;
    #undef	RETURN_TYPE_field_options2899
    #define	RETURN_TYPE_field_options2899 MySQLParser_field_options_return

    MySQLParser_type_datetime_precision_return type_datetime_precision2902;
    #undef	RETURN_TYPE_type_datetime_precision2902
    #define	RETURN_TYPE_type_datetime_precision2902 MySQLParser_type_datetime_precision_return

    MySQLParser_type_datetime_precision_return type_datetime_precision2904;
    #undef	RETURN_TYPE_type_datetime_precision2904
    #define	RETURN_TYPE_type_datetime_precision2904 MySQLParser_type_datetime_precision_return

    MySQLParser_type_datetime_precision_return type_datetime_precision2906;
    #undef	RETURN_TYPE_type_datetime_precision2906
    #define	RETURN_TYPE_type_datetime_precision2906 MySQLParser_type_datetime_precision_return

    MySQLParser_field_length_return field_length2909;
    #undef	RETURN_TYPE_field_length2909
    #define	RETURN_TYPE_field_length2909 MySQLParser_field_length_return

    MySQLParser_varchar_literal_return varchar_literal2915;
    #undef	RETURN_TYPE_varchar_literal2915
    #define	RETURN_TYPE_varchar_literal2915 MySQLParser_varchar_literal_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_field_length_return field_length2920;
    #undef	RETURN_TYPE_field_length2920
    #define	RETURN_TYPE_field_length2920 MySQLParser_field_length_return

    MySQLParser_string_binary_return string_binary2921;
    #undef	RETURN_TYPE_string_binary2921
    #define	RETURN_TYPE_string_binary2921 MySQLParser_string_binary_return

    MySQLParser_string_binary_return string_binary2923;
    #undef	RETURN_TYPE_string_binary2923
    #define	RETURN_TYPE_string_binary2923 MySQLParser_string_binary_return

    MySQLParser_string_binary_return string_binary2925;
    #undef	RETURN_TYPE_string_binary2925
    #define	RETURN_TYPE_string_binary2925 MySQLParser_string_binary_return

    MySQLParser_float_options_return float_options2927;
    #undef	RETURN_TYPE_float_options2927
    #define	RETURN_TYPE_float_options2927 MySQLParser_float_options_return

    MySQLParser_field_options_return field_options2928;
    #undef	RETURN_TYPE_field_options2928
    #define	RETURN_TYPE_field_options2928 MySQLParser_field_options_return

    MySQLParser_float_options_return float_options2930;
    #undef	RETURN_TYPE_float_options2930
    #define	RETURN_TYPE_float_options2930 MySQLParser_float_options_return

    MySQLParser_field_options_return field_options2931;
    #undef	RETURN_TYPE_field_options2931
    #define	RETURN_TYPE_field_options2931 MySQLParser_field_options_return

    MySQLParser_float_options_return float_options2933;
    #undef	RETURN_TYPE_float_options2933
    #define	RETURN_TYPE_float_options2933 MySQLParser_float_options_return

    MySQLParser_field_options_return field_options2934;
    #undef	RETURN_TYPE_field_options2934
    #define	RETURN_TYPE_field_options2934 MySQLParser_field_options_return

    MySQLParser_string_list_return string_list2936;
    #undef	RETURN_TYPE_string_list2936
    #define	RETURN_TYPE_string_list2936 MySQLParser_string_list_return

    MySQLParser_string_binary_return string_binary2937;
    #undef	RETURN_TYPE_string_binary2937
    #define	RETURN_TYPE_string_binary2937 MySQLParser_string_binary_return

    MySQLParser_string_list_return string_list2939;
    #undef	RETURN_TYPE_string_list2939
    #define	RETURN_TYPE_string_list2939 MySQLParser_string_list_return

    MySQLParser_string_binary_return string_binary2940;
    #undef	RETURN_TYPE_string_binary2940
    #define	RETURN_TYPE_string_binary2940 MySQLParser_string_binary_return

    MySQLParser_spatial_type_return spatial_type2943;
    #undef	RETURN_TYPE_spatial_type2943
    #define	RETURN_TYPE_spatial_type2943 MySQLParser_spatial_type_return

    pANTLR3_BASE_TREE FLOAT_SYMBOL2874_tree;
    pANTLR3_BASE_TREE BIT_SYMBOL2877_tree;
    pANTLR3_BASE_TREE BOOL_SYMBOL2879_tree;
    pANTLR3_BASE_TREE BOOLEAN_SYMBOL2880_tree;
    pANTLR3_BASE_TREE CHAR_SYMBOL2881_tree;
    pANTLR3_BASE_TREE BINARY_SYMBOL2886_tree;
    pANTLR3_BASE_TREE BINARY_SYMBOL2887_tree;
    pANTLR3_BASE_TREE BINARY_SYMBOL2894_tree;
    pANTLR3_BASE_TREE VARBINARY_SYMBOL2895_tree;
    pANTLR3_BASE_TREE YEAR_SYMBOL2897_tree;
    pANTLR3_BASE_TREE DATE_SYMBOL2900_tree;
    pANTLR3_BASE_TREE TIME_SYMBOL2901_tree;
    pANTLR3_BASE_TREE TIMESTAMP_SYMBOL2903_tree;
    pANTLR3_BASE_TREE DATETIME_SYMBOL2905_tree;
    pANTLR3_BASE_TREE TINYBLOB_SYMBOL2907_tree;
    pANTLR3_BASE_TREE BLOB_SYMBOL2908_tree;
    pANTLR3_BASE_TREE MEDIUMBLOB_SYMBOL2910_tree;
    pANTLR3_BASE_TREE LONGBLOB_SYMBOL2911_tree;
    pANTLR3_BASE_TREE LONG_SYMBOL2912_tree;
    pANTLR3_BASE_TREE VARBINARY_SYMBOL2913_tree;
    pANTLR3_BASE_TREE LONG_SYMBOL2914_tree;
    pANTLR3_BASE_TREE TINYTEXT_SYMBOL2917_tree;
    pANTLR3_BASE_TREE TEXT_SYMBOL2919_tree;
    pANTLR3_BASE_TREE MEDIUMTEXT_SYMBOL2922_tree;
    pANTLR3_BASE_TREE LONGTEXT_SYMBOL2924_tree;
    pANTLR3_BASE_TREE DECIMAL_SYMBOL2926_tree;
    pANTLR3_BASE_TREE NUMERIC_SYMBOL2929_tree;
    pANTLR3_BASE_TREE FIXED_SYMBOL2932_tree;
    pANTLR3_BASE_TREE ENUM_SYMBOL2935_tree;
    pANTLR3_BASE_TREE SET_SYMBOL2938_tree;
    pANTLR3_BASE_TREE SERIAL_SYMBOL2941_tree;
    pANTLR3_BASE_TREE JSON_SYMBOL2942_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    FLOAT_SYMBOL2874       = NULL;
    BIT_SYMBOL2877       = NULL;
    BOOL_SYMBOL2879       = NULL;
    BOOLEAN_SYMBOL2880       = NULL;
    CHAR_SYMBOL2881       = NULL;
    BINARY_SYMBOL2886       = NULL;
    BINARY_SYMBOL2887       = NULL;
    BINARY_SYMBOL2894       = NULL;
    VARBINARY_SYMBOL2895       = NULL;
    YEAR_SYMBOL2897       = NULL;
    DATE_SYMBOL2900       = NULL;
    TIME_SYMBOL2901       = NULL;
    TIMESTAMP_SYMBOL2903       = NULL;
    DATETIME_SYMBOL2905       = NULL;
    TINYBLOB_SYMBOL2907       = NULL;
    BLOB_SYMBOL2908       = NULL;
    MEDIUMBLOB_SYMBOL2910       = NULL;
    LONGBLOB_SYMBOL2911       = NULL;
    LONG_SYMBOL2912       = NULL;
    VARBINARY_SYMBOL2913       = NULL;
    LONG_SYMBOL2914       = NULL;
    TINYTEXT_SYMBOL2917       = NULL;
    TEXT_SYMBOL2919       = NULL;
    MEDIUMTEXT_SYMBOL2922       = NULL;
    LONGTEXT_SYMBOL2924       = NULL;
    DECIMAL_SYMBOL2926       = NULL;
    NUMERIC_SYMBOL2929       = NULL;
    FIXED_SYMBOL2932       = NULL;
    ENUM_SYMBOL2935       = NULL;
    SET_SYMBOL2938       = NULL;
    SERIAL_SYMBOL2941       = NULL;
    JSON_SYMBOL2942       = NULL;
    integer_type2868.tree = NULL;

    field_length2869.tree = NULL;

    field_options2870.tree = NULL;

    real_literal2871.tree = NULL;

    precision2872.tree = NULL;

    field_options2873.tree = NULL;

    float_options2875.tree = NULL;

    field_options2876.tree = NULL;

    field_length2878.tree = NULL;

    field_length2882.tree = NULL;

    string_binary2883.tree = NULL;

    nchar_literal2884.tree = NULL;

    field_length2885.tree = NULL;

    field_length2888.tree = NULL;

    varchar_literal2889.tree = NULL;

    field_length2890.tree = NULL;

    string_binary2891.tree = NULL;

    nvarchar_literal2892.tree = NULL;

    field_length2893.tree = NULL;

    field_length2896.tree = NULL;

    field_length2898.tree = NULL;

    field_options2899.tree = NULL;

    type_datetime_precision2902.tree = NULL;

    type_datetime_precision2904.tree = NULL;

    type_datetime_precision2906.tree = NULL;

    field_length2909.tree = NULL;

    varchar_literal2915.tree = NULL;

    string_binary2916.tree = NULL;

    string_binary2918.tree = NULL;

    field_length2920.tree = NULL;

    string_binary2921.tree = NULL;

    string_binary2923.tree = NULL;

    string_binary2925.tree = NULL;

    float_options2927.tree = NULL;

    field_options2928.tree = NULL;

    float_options2930.tree = NULL;

    field_options2931.tree = NULL;

    float_options2933.tree = NULL;

    field_options2934.tree = NULL;

    string_list2936.tree = NULL;

    string_binary2937.tree = NULL;

    string_list2939.tree = NULL;

    string_binary2940.tree = NULL;

    spatial_type2943.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    FLOAT_SYMBOL2874_tree   = NULL;
    BIT_SYMBOL2877_tree   = NULL;
    BOOL_SYMBOL2879_tree   = NULL;
    BOOLEAN_SYMBOL2880_tree   = NULL;
    CHAR_SYMBOL2881_tree   = NULL;
    BINARY_SYMBOL2886_tree   = NULL;
    BINARY_SYMBOL2887_tree   = NULL;
    BINARY_SYMBOL2894_tree   = NULL;
    VARBINARY_SYMBOL2895_tree   = NULL;
    YEAR_SYMBOL2897_tree   = NULL;
    DATE_SYMBOL2900_tree   = NULL;
    TIME_SYMBOL2901_tree   = NULL;
    TIMESTAMP_SYMBOL2903_tree   = NULL;
    DATETIME_SYMBOL2905_tree   = NULL;
    TINYBLOB_SYMBOL2907_tree   = NULL;
    BLOB_SYMBOL2908_tree   = NULL;
    MEDIUMBLOB_SYMBOL2910_tree   = NULL;
    LONGBLOB_SYMBOL2911_tree   = NULL;
    LONG_SYMBOL2912_tree   = NULL;
    VARBINARY_SYMBOL2913_tree   = NULL;
    LONG_SYMBOL2914_tree   = NULL;
    TINYTEXT_SYMBOL2917_tree   = NULL;
    TEXT_SYMBOL2919_tree   = NULL;
    MEDIUMTEXT_SYMBOL2922_tree   = NULL;
    LONGTEXT_SYMBOL2924_tree   = NULL;
    DECIMAL_SYMBOL2926_tree   = NULL;
    NUMERIC_SYMBOL2929_tree   = NULL;
    FIXED_SYMBOL2932_tree   = NULL;
    ENUM_SYMBOL2935_tree   = NULL;
    SET_SYMBOL2938_tree   = NULL;
    SERIAL_SYMBOL2941_tree   = NULL;
    JSON_SYMBOL2942_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:3007: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 alt829;

            alt829=35;

            {
                int LA829_0 = LA(1);
                if ( (LA829_0 == BIGINT_SYMBOL || LA829_0 == INT_SYMBOL || LA829_0 == MEDIUMINT_SYMBOL || LA829_0 == SMALLINT_SYMBOL || LA829_0 == TINYINT_SYMBOL))
                {
                    alt829=1;
                }
                else if ( (LA829_0 == REAL_SYMBOL || LA829_0 == DOUBLE_SYMBOL))
                {
                    alt829=2;
                }
                else if ( (LA829_0 == FLOAT_SYMBOL))
                {
                    alt829=3;
                }
                else if ( (LA829_0 == BIT_SYMBOL))
                {
                    alt829=4;
                }
                else if ( (LA829_0 == BOOL_SYMBOL))
                {
                    alt829=5;
                }
                else if ( (LA829_0 == BOOLEAN_SYMBOL))
                {
                    alt829=6;
                }
                else if ( (LA829_0 == CHAR_SYMBOL))
                {
                    {
                        int LA829_8 = LA(2);
                        if ( (LA829_8 == VARYING_SYMBOL))
                        {
                            alt829=10;
                        }
                        else if ( (LA829_8 == EOF || LA829_8 == ASCII_SYMBOL || ((LA829_8 >= BACKUP_SYMBOL) && (LA829_8 <= DO_SYMBOL)) || ((LA829_8 >= EXECUTE_SYMBOL) && (LA829_8 <= FLUSH_SYMBOL)) || ((LA829_8 >= HANDLER_SYMBOL) && (LA829_8 <= HELP_SYMBOL)) || ((LA829_8 >= INSTALL_SYMBOL) && (LA829_8 <= OPEN_SYMBOL)) || LA829_8 == PARTITION_SYMBOL || ((LA829_8 >= PREPARE_SYMBOL) && (LA829_8 <= SAVEPOINT_SYMBOL)) || ((LA829_8 >= START_SYMBOL) && (LA829_8 <= UNINSTALL_SYMBOL)) || ((LA829_8 >= XA_SYMBOL) && (LA829_8 <= YEAR_SYMBOL)) || LA829_8 == ALTER_SYMBOL || LA829_8 == BINARY_SYMBOL || LA829_8 == CALL_SYMBOL || LA829_8 == CASE_SYMBOL || LA829_8 == CHANGE_SYMBOL || ((LA829_8 >= CHAR_SYMBOL) && (LA829_8 <= COLLATE_SYMBOL)) || LA829_8 == CREATE_SYMBOL || LA829_8 == DEFAULT_SYMBOL || ((LA829_8 >= DELETE_SYMBOL) && (LA829_8 <= DETERMINISTIC_SYMBOL)) || LA829_8 == DROP_SYMBOL || LA829_8 == FETCH_SYMBOL || ((LA829_8 >= GENERATED_SYMBOL) && (LA829_8 <= GRANT_SYMBOL)) || LA829_8 == IF_SYMBOL || LA829_8 == INSERT_SYMBOL || LA829_8 == ITERATE_SYMBOL || ((LA829_8 >= KEY_SYMBOL) && (LA829_8 <= KILL_SYMBOL)) || LA829_8 == LEAVE_SYMBOL || LA829_8 == LOAD_SYMBOL || LA829_8 == LOCK_SYMBOL || LA829_8 == LOOP_SYMBOL || LA829_8 == MODIFIES_SYMBOL || LA829_8 == NOT_SYMBOL || ((LA829_8 >= NULL2_SYMBOL) && (LA829_8 <= NULL_SYMBOL)) || LA829_8 == ON_SYMBOL || LA829_8 == OPEN_PAR_SYMBOL || LA829_8 == OPTIMIZE_SYMBOL || LA829_8 == PRIMARY_SYMBOL || LA829_8 == PURGE_SYMBOL || LA829_8 == READS_SYMBOL || LA829_8 == REFERENCES_SYMBOL || ((LA829_8 >= RELEASE_SYMBOL) && (LA829_8 <= REPLACE_SYMBOL)) || LA829_8 == RESIGNAL_SYMBOL || ((LA829_8 >= RETURN_SYMBOL) && (LA829_8 <= REVOKE_SYMBOL)) || ((LA829_8 >= SELECT_SYMBOL) && (LA829_8 <= SEMICOLON_SYMBOL)) || LA829_8 == SET_SYMBOL || ((LA829_8 >= SHOW_SYMBOL) && (LA829_8 <= SIGNAL_SYMBOL)) || LA829_8 == SQL_SYMBOL || ((LA829_8 >= UNIQUE_SYMBOL) && (LA829_8 <= UNLOCK_SYMBOL)) || LA829_8 == UPDATE_SYMBOL || LA829_8 == USE_SYMBOL || LA829_8 == WHILE_SYMBOL || LA829_8 == AS_SYMBOL || LA829_8 == BACK_TICK_QUOTED_ID || LA829_8 == CLOSE_PAR_SYMBOL || LA829_8 == COMMA_SYMBOL || LA829_8 == DOUBLE_QUOTED_TEXT || LA829_8 == IDENTIFIER))
                        {
                            alt829=7;
                        }
                        else
                        {
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }


                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 829;
                            EXCEPTION->state        = 8;


                            goto ruledata_type_elementsEx;

                        }
                    }
                }
                else if ( (LA829_0 == NCHAR_SYMBOL))
                {
                    {
                        int LA829_9 = LA(2);
                        if ( (LA829_9 == VARCHAR_SYMBOL || LA829_9 == VARYING_SYMBOL))
                        {
                            alt829=11;
                        }
                        else if ( (LA829_9 == EOF || ((LA829_9 >= BACKUP_SYMBOL) && (LA829_9 <= BEGIN_SYMBOL)) || LA829_9 == CACHE_SYMBOL || ((LA829_9 >= CHECKSUM_SYMBOL) && (LA829_9 <= DO_SYMBOL)) || ((LA829_9 >= EXECUTE_SYMBOL) && (LA829_9 <= FLUSH_SYMBOL)) || ((LA829_9 >= HANDLER_SYMBOL) && (LA829_9 <= HELP_SYMBOL)) || ((LA829_9 >= INSTALL_SYMBOL) && (LA829_9 <= OPEN_SYMBOL)) || LA829_9 == PARTITION_SYMBOL || ((LA829_9 >= PREPARE_SYMBOL) && (LA829_9 <= SAVEPOINT_SYMBOL)) || ((LA829_9 >= START_SYMBOL) && (LA829_9 <= TRUNCATE_SYMBOL)) || LA829_9 == UNINSTALL_SYMBOL || ((LA829_9 >= XA_SYMBOL) && (LA829_9 <= YEAR_SYMBOL)) || LA829_9 == ALTER_SYMBOL || LA829_9 == BINARY_SYMBOL || LA829_9 == CALL_SYMBOL || LA829_9 == CASE_SYMBOL || LA829_9 == CHANGE_SYMBOL || ((LA829_9 >= CHECK_SYMBOL) && (LA829_9 <= COLLATE_SYMBOL)) || LA829_9 == CREATE_SYMBOL || LA829_9 == DEFAULT_SYMBOL || ((LA829_9 >= DELETE_SYMBOL) && (LA829_9 <= DETERMINISTIC_SYMBOL)) || LA829_9 == DROP_SYMBOL || LA829_9 == FETCH_SYMBOL || ((LA829_9 >= GENERATED_SYMBOL) && (LA829_9 <= GRANT_SYMBOL)) || LA829_9 == IF_SYMBOL || LA829_9 == INSERT_SYMBOL || LA829_9 == ITERATE_SYMBOL || ((LA829_9 >= KEY_SYMBOL) && (LA829_9 <= KILL_SYMBOL)) || LA829_9 == LEAVE_SYMBOL || LA829_9 == LOAD_SYMBOL || LA829_9 == LOCK_SYMBOL || LA829_9 == LOOP_SYMBOL || LA829_9 == MODIFIES_SYMBOL || LA829_9 == NOT_SYMBOL || ((LA829_9 >= NULL2_SYMBOL) && (LA829_9 <= NULL_SYMBOL)) || LA829_9 == ON_SYMBOL || LA829_9 == OPEN_PAR_SYMBOL || LA829_9 == OPTIMIZE_SYMBOL || LA829_9 == PRIMARY_SYMBOL || LA829_9 == PURGE_SYMBOL || LA829_9 == READS_SYMBOL || LA829_9 == REFERENCES_SYMBOL || ((LA829_9 >= RELEASE_SYMBOL) && (LA829_9 <= REPLACE_SYMBOL)) || LA829_9 == RESIGNAL_SYMBOL || ((LA829_9 >= RETURN_SYMBOL) && (LA829_9 <= REVOKE_SYMBOL)) || ((LA829_9 >= SELECT_SYMBOL) && (LA829_9 <= SEMICOLON_SYMBOL)) || LA829_9 == SET_SYMBOL || ((LA829_9 >= SHOW_SYMBOL) && (LA829_9 <= SIGNAL_SYMBOL)) || LA829_9 == SQL_SYMBOL || ((LA829_9 >= UNIQUE_SYMBOL) && (LA829_9 <= UNLOCK_SYMBOL)) || LA829_9 == UPDATE_SYMBOL || LA829_9 == USE_SYMBOL || LA829_9 == WHILE_SYMBOL || LA829_9 == AS_SYMBOL || LA829_9 == BACK_TICK_QUOTED_ID || LA829_9 == CLOSE_PAR_SYMBOL || LA829_9 == COMMA_SYMBOL || LA829_9 == DOUBLE_QUOTED_TEXT || LA829_9 == IDENTIFIER))
                        {
                            alt829=8;
                        }
                        else
                        {
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }


                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 829;
                            EXCEPTION->state        = 9;


                            goto ruledata_type_elementsEx;

                        }
                    }
                }
                else if ( (LA829_0 == NATIONAL_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case CHAR_SYMBOL:
                    	{
                    		{
                    		    int LA829_251 = LA(3);
                    		    if ( ((LA(3) != VARYING_SYMBOL)))
                    		    {
                    		        alt829=8;
                    		    }
                    		    else if ( (ANTLR3_TRUE))
                    		    {
                    		        alt829=11;
                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 829;
                    		        EXCEPTION->state        = 251;


                    		        goto ruledata_type_elementsEx;

                    		    }
                    		}
                    	}
                        break;
                    case VARCHAR_SYMBOL:
                    	{
                    		alt829=11;
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 829;
                        EXCEPTION->state        = 10;


                        goto ruledata_type_elementsEx;

                    }

                }
                else if ( (LA829_0 == BINARY_SYMBOL))
                {
                    alt829=9;
                }
                else if ( (LA829_0 == VARCHAR_SYMBOL))
                {
                    alt829=10;
                }
                else if ( (LA829_0 == NVARCHAR_SYMBOL))
                {
                    alt829=11;
                }
                else if ( (LA829_0 == VARBINARY_SYMBOL))
                {
                    alt829=12;
                }
                else if ( (LA829_0 == YEAR_SYMBOL))
                {
                    alt829=13;
                }
                else if ( (LA829_0 == DATE_SYMBOL))
                {
                    alt829=14;
                }
                else if ( (LA829_0 == TIME_SYMBOL))
                {
                    alt829=15;
                }
                else if ( (LA829_0 == TIMESTAMP_SYMBOL))
                {
                    alt829=16;
                }
                else if ( (LA829_0 == DATETIME_SYMBOL))
                {
                    alt829=17;
                }
                else if ( (LA829_0 == TINYBLOB_SYMBOL))
                {
                    alt829=18;
                }
                else if ( (LA829_0 == BLOB_SYMBOL))
                {
                    alt829=19;
                }
                else if ( (LA829_0 == MEDIUMBLOB_SYMBOL))
                {
                    alt829=20;
                }
                else if ( (LA829_0 == LONGBLOB_SYMBOL))
                {
                    alt829=21;
                }
                else if ( (LA829_0 == LONG_SYMBOL))
                {
                    {
                        int LA829_24 = LA(2);
                        if ( (LA829_24 == VARBINARY_SYMBOL))
                        {
                            alt829=22;
                        }
                        else if ( (LA829_24 == EOF || LA829_24 == ASCII_SYMBOL || ((LA829_24 >= BACKUP_SYMBOL) && (LA829_24 <= DO_SYMBOL)) || ((LA829_24 >= EXECUTE_SYMBOL) && (LA829_24 <= FLUSH_SYMBOL)) || ((LA829_24 >= HANDLER_SYMBOL) && (LA829_24 <= HELP_SYMBOL)) || ((LA829_24 >= INSTALL_SYMBOL) && (LA829_24 <= OPEN_SYMBOL)) || LA829_24 == PARTITION_SYMBOL || ((LA829_24 >= PREPARE_SYMBOL) && (LA829_24 <= SAVEPOINT_SYMBOL)) || ((LA829_24 >= START_SYMBOL) && (LA829_24 <= UNINSTALL_SYMBOL)) || ((LA829_24 >= XA_SYMBOL) && (LA829_24 <= YEAR_SYMBOL)) || LA829_24 == ALTER_SYMBOL || LA829_24 == BINARY_SYMBOL || LA829_24 == CALL_SYMBOL || LA829_24 == CASE_SYMBOL || LA829_24 == CHANGE_SYMBOL || ((LA829_24 >= CHAR_SYMBOL) && (LA829_24 <= COLLATE_SYMBOL)) || LA829_24 == CREATE_SYMBOL || LA829_24 == DEFAULT_SYMBOL || ((LA829_24 >= DELETE_SYMBOL) && (LA829_24 <= DETERMINISTIC_SYMBOL)) || LA829_24 == DROP_SYMBOL || LA829_24 == FETCH_SYMBOL || ((LA829_24 >= GENERATED_SYMBOL) && (LA829_24 <= GRANT_SYMBOL)) || LA829_24 == IF_SYMBOL || LA829_24 == INSERT_SYMBOL || LA829_24 == ITERATE_SYMBOL || ((LA829_24 >= KEY_SYMBOL) && (LA829_24 <= KILL_SYMBOL)) || LA829_24 == LEAVE_SYMBOL || LA829_24 == LOAD_SYMBOL || LA829_24 == LOCK_SYMBOL || LA829_24 == LOOP_SYMBOL || LA829_24 == MODIFIES_SYMBOL || LA829_24 == NOT_SYMBOL || ((LA829_24 >= NULL2_SYMBOL) && (LA829_24 <= NULL_SYMBOL)) || LA829_24 == ON_SYMBOL || LA829_24 == OPEN_PAR_SYMBOL || LA829_24 == OPTIMIZE_SYMBOL || LA829_24 == PRIMARY_SYMBOL || LA829_24 == PURGE_SYMBOL || LA829_24 == READS_SYMBOL || LA829_24 == REFERENCES_SYMBOL || ((LA829_24 >= RELEASE_SYMBOL) && (LA829_24 <= REPLACE_SYMBOL)) || LA829_24 == RESIGNAL_SYMBOL || ((LA829_24 >= RETURN_SYMBOL) && (LA829_24 <= REVOKE_SYMBOL)) || ((LA829_24 >= SELECT_SYMBOL) && (LA829_24 <= SEMICOLON_SYMBOL)) || LA829_24 == SET_SYMBOL || ((LA829_24 >= SHOW_SYMBOL) && (LA829_24 <= SIGNAL_SYMBOL)) || LA829_24 == SQL_SYMBOL || ((LA829_24 >= UNIQUE_SYMBOL) && (LA829_24 <= UNLOCK_SYMBOL)) || LA829_24 == UPDATE_SYMBOL || LA829_24 == USE_SYMBOL || LA829_24 == VARCHAR_SYMBOL || LA829_24 == WHILE_SYMBOL || LA829_24 == AS_SYMBOL || LA829_24 == BACK_TICK_QUOTED_ID || LA829_24 == CLOSE_PAR_SYMBOL || LA829_24 == COMMA_SYMBOL || LA829_24 == DOUBLE_QUOTED_TEXT || LA829_24 == IDENTIFIER))
                        {
                            alt829=23;
                        }
                        else
                        {
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }


                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 829;
                            EXCEPTION->state        = 24;


                            goto ruledata_type_elementsEx;

                        }
                    }
                }
                else if ( (LA829_0 == TINYTEXT_SYMBOL))
                {
                    alt829=24;
                }
                else if ( (LA829_0 == TEXT_SYMBOL))
                {
                    alt829=25;
                }
                else if ( (LA829_0 == MEDIUMTEXT_SYMBOL))
                {
                    alt829=26;
                }
                else if ( (LA829_0 == LONGTEXT_SYMBOL))
                {
                    alt829=27;
                }
                else if ( (LA829_0 == DECIMAL_SYMBOL))
                {
                    alt829=28;
                }
                else if ( (LA829_0 == NUMERIC_SYMBOL))
                {
                    alt829=29;
                }
                else if ( (LA829_0 == FIXED_SYMBOL))
                {
                    alt829=30;
                }
                else if ( (LA829_0 == ENUM_SYMBOL))
                {
                    alt829=31;
                }
                else if ( (LA829_0 == SET_SYMBOL))
                {
                    alt829=32;
                }
                else if ( (LA829_0 == SERIAL_SYMBOL))
                {
                    alt829=33;
                }
                else if ( (LA829_0 == JSON_SYMBOL))
                {
                    alt829=34;
                }
                else if ( (((LA829_0 >= GEOMETRY_SYMBOL) && (LA829_0 <= GEOMETRYCOLLECTION_SYMBOL)) || LA829_0 == LINESTRING_SYMBOL || ((LA829_0 >= MULTILINESTRING_SYMBOL) && (LA829_0 <= MULTIPOLYGON_SYMBOL)) || ((LA829_0 >= POINT_SYMBOL) && (LA829_0 <= POLYGON_SYMBOL))))
                {
                    alt829=35;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 829;
                    EXCEPTION->state        = 0;


                    goto ruledata_type_elementsEx;

                }
            }
            switch (alt829)
            {
        	case 1:
        	    // MySQL.g:3008:2: integer_type ( field_length )? ( field_options )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_integer_type_in_data_type_elements15167);
        	        integer_type2868=integer_type(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, integer_type2868.tree);

        	        // MySQL.g:3008:15: ( field_length )?
        	        {
        	            int alt794=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case DECIMAL_NUMBER:
        	                		    case INT_NUMBER:
        	                		    case LONG_NUMBER:
        	                		    case ULONGLONG_NUMBER:
        	                		    	{
        	                		    		alt794=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt794)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3008:15: field_length
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_length_in_data_type_elements15169);
        	        	        field_length2869=field_length(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_length2869.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:3008:29: ( field_options )?
        	        {
        	            int alt795=2;
        	            switch ( LA(1) )
        	            {
        	                case SIGNED_SYMBOL:
        	                case UNSIGNED_SYMBOL:
        	                case ZEROFILL_SYMBOL:
        	                	{
        	                		alt795=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt795)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3008:29: field_options
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_options_in_data_type_elements15172);
        	        	        field_options2870=field_options(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_options2870.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:3010:4: real_literal ( precision )? ( field_options )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_real_literal_in_data_type_elements15179);
        	        real_literal2871=real_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, real_literal2871.tree);

        	        // MySQL.g:3010:17: ( precision )?
        	        {
        	            int alt796=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case INT_NUMBER:
        	                		    	{
        	                		    		alt796=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt796)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3010:17: precision
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_precision_in_data_type_elements15181);
        	        	        precision2872=precision(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, precision2872.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:3010:28: ( field_options )?
        	        {
        	            int alt797=2;
        	            switch ( LA(1) )
        	            {
        	                case SIGNED_SYMBOL:
        	                case UNSIGNED_SYMBOL:
        	                case ZEROFILL_SYMBOL:
        	                	{
        	                		alt797=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt797)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3010:28: field_options
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_options_in_data_type_elements15184);
        	        	        field_options2873=field_options(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_options2873.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:3011:4: FLOAT_SYMBOL ( float_options )? ( field_options )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FLOAT_SYMBOL2874 = (pANTLR3_COMMON_TOKEN) MATCHT(FLOAT_SYMBOL, &FOLLOW_FLOAT_SYMBOL_in_data_type_elements15190);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FLOAT_SYMBOL2874_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FLOAT_SYMBOL2874));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FLOAT_SYMBOL2874_tree);
        	        }

        	        // MySQL.g:3011:17: ( float_options )?
        	        {
        	            int alt798=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case INT_NUMBER:
        	                		    	{
        	                		    		alt798=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt798)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3011:17: float_options
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_float_options_in_data_type_elements15192);
        	        	        float_options2875=float_options(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, float_options2875.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:3011:32: ( field_options )?
        	        {
        	            int alt799=2;
        	            switch ( LA(1) )
        	            {
        	                case SIGNED_SYMBOL:
        	                case UNSIGNED_SYMBOL:
        	                case ZEROFILL_SYMBOL:
        	                	{
        	                		alt799=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt799)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3011:32: field_options
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_options_in_data_type_elements15195);
        	        	        field_options2876=field_options(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_options2876.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:3013:4: BIT_SYMBOL ( field_length )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BIT_SYMBOL2877 = (pANTLR3_COMMON_TOKEN) MATCHT(BIT_SYMBOL, &FOLLOW_BIT_SYMBOL_in_data_type_elements15203);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BIT_SYMBOL2877_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BIT_SYMBOL2877));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BIT_SYMBOL2877_tree);
        	        }

        	        // MySQL.g:3013:15: ( field_length )?
        	        {
        	            int alt800=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case DECIMAL_NUMBER:
        	                		    case INT_NUMBER:
        	                		    case LONG_NUMBER:
        	                		    case ULONGLONG_NUMBER:
        	                		    	{
        	                		    		alt800=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt800)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3013:15: field_length
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_length_in_data_type_elements15205);
        	        	        field_length2878=field_length(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_length2878.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:3014:4: BOOL_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BOOL_SYMBOL2879 = (pANTLR3_COMMON_TOKEN) MATCHT(BOOL_SYMBOL, &FOLLOW_BOOL_SYMBOL_in_data_type_elements15211);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BOOL_SYMBOL2879_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BOOL_SYMBOL2879));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BOOL_SYMBOL2879_tree);
        	        }

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:3015:4: BOOLEAN_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BOOLEAN_SYMBOL2880 = (pANTLR3_COMMON_TOKEN) MATCHT(BOOLEAN_SYMBOL, &FOLLOW_BOOLEAN_SYMBOL_in_data_type_elements15216);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BOOLEAN_SYMBOL2880_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BOOLEAN_SYMBOL2880));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BOOLEAN_SYMBOL2880_tree);
        	        }

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:3017:4: CHAR_SYMBOL ( field_length )? ( string_binary )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CHAR_SYMBOL2881 = (pANTLR3_COMMON_TOKEN) MATCHT(CHAR_SYMBOL, &FOLLOW_CHAR_SYMBOL_in_data_type_elements15223);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CHAR_SYMBOL2881_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHAR_SYMBOL2881));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CHAR_SYMBOL2881_tree);
        	        }

        	        // MySQL.g:3017:16: ( field_length )?
        	        {
        	            int alt801=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case DECIMAL_NUMBER:
        	                		    case INT_NUMBER:
        	                		    case LONG_NUMBER:
        	                		    case ULONGLONG_NUMBER:
        	                		    	{
        	                		    		alt801=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt801)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3017:16: field_length
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_length_in_data_type_elements15225);
        	        	        field_length2882=field_length(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_length2882.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:3017:30: ( string_binary )?
        	        {
        	            int alt802=2;
        	            switch ( LA(1) )
        	            {
        	                case ASCII_SYMBOL:
        	                case BYTE_SYMBOL:
        	                case CHARSET_SYMBOL:
        	                case UNICODE_SYMBOL:
        	                case BINARY_SYMBOL:
        	                case CHAR_SYMBOL:
        	                	{
        	                		alt802=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt802)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3017:30: string_binary
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_string_binary_in_data_type_elements15228);
        	        	        string_binary2883=string_binary(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_binary2883.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 8:
        	    // MySQL.g:3018:4: nchar_literal ( field_length )? ( BINARY_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_nchar_literal_in_data_type_elements15234);
        	        nchar_literal2884=nchar_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, nchar_literal2884.tree);

        	        // MySQL.g:3018:18: ( 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:3018:18: field_length
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_length_in_data_type_elements15236);
        	        	        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);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:3018:32: ( BINARY_SYMBOL )?
        	        {
        	            int alt804=2;
        	            switch ( LA(1) )
        	            {
        	                case BINARY_SYMBOL:
        	                	{
        	                		alt804=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt804)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3018:32: BINARY_SYMBOL
        	        	    {
        	        	        BINARY_SYMBOL2886 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_data_type_elements15239);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        BINARY_SYMBOL2886_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL2886));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL2886_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 9:
        	    // MySQL.g:3019:4: BINARY_SYMBOL ( field_length )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BINARY_SYMBOL2887 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_data_type_elements15245);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BINARY_SYMBOL2887_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL2887));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL2887_tree);
        	        }

        	        // MySQL.g:3019:18: ( field_length )?
        	        {
        	            int alt805=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case DECIMAL_NUMBER:
        	                		    case INT_NUMBER:
        	                		    case LONG_NUMBER:
        	                		    case ULONGLONG_NUMBER:
        	                		    	{
        	                		    		alt805=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt805)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3019:18: field_length
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_length_in_data_type_elements15247);
        	        	        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);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 10:
        	    // MySQL.g:3020:4: varchar_literal field_length ( string_binary )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_varchar_literal_in_data_type_elements15253);
        	        varchar_literal2889=varchar_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, varchar_literal2889.tree);

        	        FOLLOWPUSH(FOLLOW_field_length_in_data_type_elements15255);
        	        field_length2890=field_length(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_length2890.tree);

        	        // MySQL.g:3020:33: ( string_binary )?
        	        {
        	            int alt806=2;
        	            switch ( LA(1) )
        	            {
        	                case ASCII_SYMBOL:
        	                case BYTE_SYMBOL:
        	                case CHARSET_SYMBOL:
        	                case UNICODE_SYMBOL:
        	                case BINARY_SYMBOL:
        	                case CHAR_SYMBOL:
        	                	{
        	                		alt806=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt806)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3020:33: string_binary
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_string_binary_in_data_type_elements15257);
        	        	        string_binary2891=string_binary(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_binary2891.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 11:
        	    // MySQL.g:3021:4: nvarchar_literal field_length ( BINARY_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_nvarchar_literal_in_data_type_elements15263);
        	        nvarchar_literal2892=nvarchar_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, nvarchar_literal2892.tree);

        	        FOLLOWPUSH(FOLLOW_field_length_in_data_type_elements15265);
        	        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);

        	        // MySQL.g:3021:34: ( BINARY_SYMBOL )?
        	        {
        	            int alt807=2;
        	            switch ( LA(1) )
        	            {
        	                case BINARY_SYMBOL:
        	                	{
        	                		alt807=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt807)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3021:34: BINARY_SYMBOL
        	        	    {
        	        	        BINARY_SYMBOL2894 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_data_type_elements15267);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        BINARY_SYMBOL2894_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL2894));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL2894_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 12:
        	    // MySQL.g:3023:4: VARBINARY_SYMBOL field_length
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        VARBINARY_SYMBOL2895 = (pANTLR3_COMMON_TOKEN) MATCHT(VARBINARY_SYMBOL, &FOLLOW_VARBINARY_SYMBOL_in_data_type_elements15274);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        VARBINARY_SYMBOL2895_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VARBINARY_SYMBOL2895));
        	        ADAPTOR->addChild(ADAPTOR, root_0, VARBINARY_SYMBOL2895_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_field_length_in_data_type_elements15276);
        	        field_length2896=field_length(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_length2896.tree);

        	    }
        	    break;
        	case 13:
        	    // MySQL.g:3025:4: YEAR_SYMBOL ( field_length )? ( field_options )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        YEAR_SYMBOL2897 = (pANTLR3_COMMON_TOKEN) MATCHT(YEAR_SYMBOL, &FOLLOW_YEAR_SYMBOL_in_data_type_elements15282);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        YEAR_SYMBOL2897_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, YEAR_SYMBOL2897));
        	        ADAPTOR->addChild(ADAPTOR, root_0, YEAR_SYMBOL2897_tree);
        	        }

        	        // MySQL.g:3025:16: ( 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:3025:16: field_length
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_length_in_data_type_elements15284);
        	        	        field_length2898=field_length(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_length2898.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:3025:30: ( field_options )?
        	        {
        	            int alt809=2;
        	            switch ( LA(1) )
        	            {
        	                case SIGNED_SYMBOL:
        	                case UNSIGNED_SYMBOL:
        	                case ZEROFILL_SYMBOL:
        	                	{
        	                		alt809=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt809)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3025:30: field_options
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_options_in_data_type_elements15287);
        	        	        field_options2899=field_options(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_options2899.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 14:
        	    // MySQL.g:3026:4: DATE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DATE_SYMBOL2900 = (pANTLR3_COMMON_TOKEN) MATCHT(DATE_SYMBOL, &FOLLOW_DATE_SYMBOL_in_data_type_elements15293);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DATE_SYMBOL2900_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATE_SYMBOL2900));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DATE_SYMBOL2900_tree);
        	        }

        	    }
        	    break;
        	case 15:
        	    // MySQL.g:3027:4: TIME_SYMBOL ( type_datetime_precision )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        TIME_SYMBOL2901 = (pANTLR3_COMMON_TOKEN) MATCHT(TIME_SYMBOL, &FOLLOW_TIME_SYMBOL_in_data_type_elements15298);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TIME_SYMBOL2901_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TIME_SYMBOL2901));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TIME_SYMBOL2901_tree);
        	        }

        	        // MySQL.g:3027:16: ( type_datetime_precision )?
        	        {
        	            int alt810=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case INT_NUMBER:
        	                		    	{
        	                		    		alt810=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt810)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3027:16: type_datetime_precision
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_type_datetime_precision_in_data_type_elements15300);
        	        	        type_datetime_precision2902=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_precision2902.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 16:
        	    // MySQL.g:3028:4: TIMESTAMP_SYMBOL ( type_datetime_precision )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        TIMESTAMP_SYMBOL2903 = (pANTLR3_COMMON_TOKEN) MATCHT(TIMESTAMP_SYMBOL, &FOLLOW_TIMESTAMP_SYMBOL_in_data_type_elements15306);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TIMESTAMP_SYMBOL2903_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TIMESTAMP_SYMBOL2903));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TIMESTAMP_SYMBOL2903_tree);
        	        }

        	        // MySQL.g:3028:21: ( type_datetime_precision )?
        	        {
        	            int alt811=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case INT_NUMBER:
        	                		    	{
        	                		    		alt811=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt811)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3028:21: type_datetime_precision
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_type_datetime_precision_in_data_type_elements15308);
        	        	        type_datetime_precision2904=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_precision2904.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 17:
        	    // MySQL.g:3029:4: DATETIME_SYMBOL ( type_datetime_precision )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DATETIME_SYMBOL2905 = (pANTLR3_COMMON_TOKEN) MATCHT(DATETIME_SYMBOL, &FOLLOW_DATETIME_SYMBOL_in_data_type_elements15314);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DATETIME_SYMBOL2905_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATETIME_SYMBOL2905));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DATETIME_SYMBOL2905_tree);
        	        }

        	        // MySQL.g:3029:20: ( type_datetime_precision )?
        	        {
        	            int alt812=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case INT_NUMBER:
        	                		    	{
        	                		    		alt812=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt812)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3029:20: type_datetime_precision
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_type_datetime_precision_in_data_type_elements15316);
        	        	        type_datetime_precision2906=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_precision2906.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 18:
        	    // MySQL.g:3031:4: TINYBLOB_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        TINYBLOB_SYMBOL2907 = (pANTLR3_COMMON_TOKEN) MATCHT(TINYBLOB_SYMBOL, &FOLLOW_TINYBLOB_SYMBOL_in_data_type_elements15323);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TINYBLOB_SYMBOL2907_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TINYBLOB_SYMBOL2907));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TINYBLOB_SYMBOL2907_tree);
        	        }

        	    }
        	    break;
        	case 19:
        	    // MySQL.g:3032:4: BLOB_SYMBOL ( field_length )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BLOB_SYMBOL2908 = (pANTLR3_COMMON_TOKEN) MATCHT(BLOB_SYMBOL, &FOLLOW_BLOB_SYMBOL_in_data_type_elements15328);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BLOB_SYMBOL2908_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BLOB_SYMBOL2908));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BLOB_SYMBOL2908_tree);
        	        }

        	        // MySQL.g:3032:16: ( field_length )?
        	        {
        	            int alt813=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case DECIMAL_NUMBER:
        	                		    case INT_NUMBER:
        	                		    case LONG_NUMBER:
        	                		    case ULONGLONG_NUMBER:
        	                		    	{
        	                		    		alt813=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt813)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3032:16: field_length
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_length_in_data_type_elements15330);
        	        	        field_length2909=field_length(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_length2909.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 20:
        	    // MySQL.g:3033:4: MEDIUMBLOB_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MEDIUMBLOB_SYMBOL2910 = (pANTLR3_COMMON_TOKEN) MATCHT(MEDIUMBLOB_SYMBOL, &FOLLOW_MEDIUMBLOB_SYMBOL_in_data_type_elements15336);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MEDIUMBLOB_SYMBOL2910_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MEDIUMBLOB_SYMBOL2910));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MEDIUMBLOB_SYMBOL2910_tree);
        	        }

        	    }
        	    break;
        	case 21:
        	    // MySQL.g:3034:4: LONGBLOB_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        LONGBLOB_SYMBOL2911 = (pANTLR3_COMMON_TOKEN) MATCHT(LONGBLOB_SYMBOL, &FOLLOW_LONGBLOB_SYMBOL_in_data_type_elements15341);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LONGBLOB_SYMBOL2911_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LONGBLOB_SYMBOL2911));
        	        ADAPTOR->addChild(ADAPTOR, root_0, LONGBLOB_SYMBOL2911_tree);
        	        }

        	    }
        	    break;
        	case 22:
        	    // MySQL.g:3035:4: LONG_SYMBOL VARBINARY_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        LONG_SYMBOL2912 = (pANTLR3_COMMON_TOKEN) MATCHT(LONG_SYMBOL, &FOLLOW_LONG_SYMBOL_in_data_type_elements15346);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LONG_SYMBOL2912_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LONG_SYMBOL2912));
        	        ADAPTOR->addChild(ADAPTOR, root_0, LONG_SYMBOL2912_tree);
        	        }

        	        VARBINARY_SYMBOL2913 = (pANTLR3_COMMON_TOKEN) MATCHT(VARBINARY_SYMBOL, &FOLLOW_VARBINARY_SYMBOL_in_data_type_elements15348);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        VARBINARY_SYMBOL2913_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VARBINARY_SYMBOL2913));
        	        ADAPTOR->addChild(ADAPTOR, root_0, VARBINARY_SYMBOL2913_tree);
        	        }

        	    }
        	    break;
        	case 23:
        	    // MySQL.g:3036:4: LONG_SYMBOL ( varchar_literal )? ( string_binary )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        LONG_SYMBOL2914 = (pANTLR3_COMMON_TOKEN) MATCHT(LONG_SYMBOL, &FOLLOW_LONG_SYMBOL_in_data_type_elements15353);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LONG_SYMBOL2914_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LONG_SYMBOL2914));
        	        ADAPTOR->addChild(ADAPTOR, root_0, LONG_SYMBOL2914_tree);
        	        }

        	        // MySQL.g:3036:16: ( varchar_literal )?
        	        {
        	            int alt814=2;
        	            switch ( LA(1) )
        	            {
        	                case CHAR_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case VARYING_SYMBOL:
        	                		    	{
        	                		    		alt814=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	                case VARCHAR_SYMBOL:
        	                	{
        	                		alt814=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt814)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3036:16: varchar_literal
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_varchar_literal_in_data_type_elements15355);
        	        	        varchar_literal2915=varchar_literal(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, varchar_literal2915.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:3036:33: ( string_binary )?
        	        {
        	            int alt815=2;
        	            switch ( LA(1) )
        	            {
        	                case ASCII_SYMBOL:
        	                case BYTE_SYMBOL:
        	                case CHARSET_SYMBOL:
        	                case UNICODE_SYMBOL:
        	                case BINARY_SYMBOL:
        	                case CHAR_SYMBOL:
        	                	{
        	                		alt815=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt815)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3036:33: string_binary
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_string_binary_in_data_type_elements15358);
        	        	        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 24:
        	    // MySQL.g:3038:4: TINYTEXT_SYMBOL ( string_binary )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        TINYTEXT_SYMBOL2917 = (pANTLR3_COMMON_TOKEN) MATCHT(TINYTEXT_SYMBOL, &FOLLOW_TINYTEXT_SYMBOL_in_data_type_elements15365);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TINYTEXT_SYMBOL2917_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TINYTEXT_SYMBOL2917));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TINYTEXT_SYMBOL2917_tree);
        	        }

        	        // MySQL.g:3038:20: ( string_binary )?
        	        {
        	            int alt816=2;
        	            switch ( LA(1) )
        	            {
        	                case ASCII_SYMBOL:
        	                case BYTE_SYMBOL:
        	                case CHARSET_SYMBOL:
        	                case UNICODE_SYMBOL:
        	                case BINARY_SYMBOL:
        	                case CHAR_SYMBOL:
        	                	{
        	                		alt816=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt816)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3038:20: string_binary
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_string_binary_in_data_type_elements15367);
        	        	        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 25:
        	    // MySQL.g:3039:4: TEXT_SYMBOL ( field_length )? ( string_binary )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        TEXT_SYMBOL2919 = (pANTLR3_COMMON_TOKEN) MATCHT(TEXT_SYMBOL, &FOLLOW_TEXT_SYMBOL_in_data_type_elements15373);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TEXT_SYMBOL2919_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TEXT_SYMBOL2919));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TEXT_SYMBOL2919_tree);
        	        }

        	        // MySQL.g:3039:16: ( field_length )?
        	        {
        	            int alt817=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case DECIMAL_NUMBER:
        	                		    case INT_NUMBER:
        	                		    case LONG_NUMBER:
        	                		    case ULONGLONG_NUMBER:
        	                		    	{
        	                		    		alt817=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt817)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3039:16: field_length
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_length_in_data_type_elements15375);
        	        	        field_length2920=field_length(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_length2920.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:3039:30: ( 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:3039:30: string_binary
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_string_binary_in_data_type_elements15378);
        	        	        string_binary2921=string_binary(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_binary2921.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 26:
        	    // MySQL.g:3040:4: MEDIUMTEXT_SYMBOL ( string_binary )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MEDIUMTEXT_SYMBOL2922 = (pANTLR3_COMMON_TOKEN) MATCHT(MEDIUMTEXT_SYMBOL, &FOLLOW_MEDIUMTEXT_SYMBOL_in_data_type_elements15384);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MEDIUMTEXT_SYMBOL2922_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MEDIUMTEXT_SYMBOL2922));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MEDIUMTEXT_SYMBOL2922_tree);
        	        }

        	        // MySQL.g:3040:22: ( 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:3040:22: string_binary
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_string_binary_in_data_type_elements15386);
        	        	        string_binary2923=string_binary(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_binary2923.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 27:
        	    // MySQL.g:3041:4: LONGTEXT_SYMBOL ( string_binary )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        LONGTEXT_SYMBOL2924 = (pANTLR3_COMMON_TOKEN) MATCHT(LONGTEXT_SYMBOL, &FOLLOW_LONGTEXT_SYMBOL_in_data_type_elements15392);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LONGTEXT_SYMBOL2924_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LONGTEXT_SYMBOL2924));
        	        ADAPTOR->addChild(ADAPTOR, root_0, LONGTEXT_SYMBOL2924_tree);
        	        }

        	        // MySQL.g:3041:20: ( string_binary )?
        	        {
        	            int alt820=2;
        	            switch ( LA(1) )
        	            {
        	                case ASCII_SYMBOL:
        	                case BYTE_SYMBOL:
        	                case CHARSET_SYMBOL:
        	                case UNICODE_SYMBOL:
        	                case BINARY_SYMBOL:
        	                case CHAR_SYMBOL:
        	                	{
        	                		alt820=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt820)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3041:20: string_binary
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_string_binary_in_data_type_elements15394);
        	        	        string_binary2925=string_binary(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_binary2925.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 28:
        	    // MySQL.g:3043:4: DECIMAL_SYMBOL ( float_options )? ( field_options )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DECIMAL_SYMBOL2926 = (pANTLR3_COMMON_TOKEN) MATCHT(DECIMAL_SYMBOL, &FOLLOW_DECIMAL_SYMBOL_in_data_type_elements15402);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DECIMAL_SYMBOL2926_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DECIMAL_SYMBOL2926));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DECIMAL_SYMBOL2926_tree);
        	        }

        	        // MySQL.g:3043:19: ( float_options )?
        	        {
        	            int alt821=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case INT_NUMBER:
        	                		    	{
        	                		    		alt821=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt821)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3043:19: float_options
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_float_options_in_data_type_elements15404);
        	        	        float_options2927=float_options(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, float_options2927.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:3043:34: ( field_options )?
        	        {
        	            int alt822=2;
        	            switch ( LA(1) )
        	            {
        	                case SIGNED_SYMBOL:
        	                case UNSIGNED_SYMBOL:
        	                case ZEROFILL_SYMBOL:
        	                	{
        	                		alt822=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt822)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3043:34: field_options
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_options_in_data_type_elements15407);
        	        	        field_options2928=field_options(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_options2928.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 29:
        	    // MySQL.g:3044:4: NUMERIC_SYMBOL ( float_options )? ( field_options )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NUMERIC_SYMBOL2929 = (pANTLR3_COMMON_TOKEN) MATCHT(NUMERIC_SYMBOL, &FOLLOW_NUMERIC_SYMBOL_in_data_type_elements15413);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NUMERIC_SYMBOL2929_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NUMERIC_SYMBOL2929));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NUMERIC_SYMBOL2929_tree);
        	        }

        	        // MySQL.g:3044:19: ( float_options )?
        	        {
        	            int alt823=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case INT_NUMBER:
        	                		    	{
        	                		    		alt823=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt823)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3044:19: float_options
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_float_options_in_data_type_elements15415);
        	        	        float_options2930=float_options(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, float_options2930.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:3044:34: ( field_options )?
        	        {
        	            int alt824=2;
        	            switch ( LA(1) )
        	            {
        	                case SIGNED_SYMBOL:
        	                case UNSIGNED_SYMBOL:
        	                case ZEROFILL_SYMBOL:
        	                	{
        	                		alt824=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt824)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3044:34: field_options
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_options_in_data_type_elements15418);
        	        	        field_options2931=field_options(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_options2931.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 30:
        	    // MySQL.g:3045:4: FIXED_SYMBOL ( float_options )? ( field_options )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FIXED_SYMBOL2932 = (pANTLR3_COMMON_TOKEN) MATCHT(FIXED_SYMBOL, &FOLLOW_FIXED_SYMBOL_in_data_type_elements15424);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FIXED_SYMBOL2932_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FIXED_SYMBOL2932));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FIXED_SYMBOL2932_tree);
        	        }

        	        // MySQL.g:3045:17: ( float_options )?
        	        {
        	            int alt825=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case INT_NUMBER:
        	                		    	{
        	                		    		alt825=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt825)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3045:17: float_options
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_float_options_in_data_type_elements15426);
        	        	        float_options2933=float_options(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, float_options2933.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:3045:32: ( field_options )?
        	        {
        	            int alt826=2;
        	            switch ( LA(1) )
        	            {
        	                case SIGNED_SYMBOL:
        	                case UNSIGNED_SYMBOL:
        	                case ZEROFILL_SYMBOL:
        	                	{
        	                		alt826=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt826)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3045:32: field_options
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_options_in_data_type_elements15429);
        	        	        field_options2934=field_options(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_options2934.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 31:
        	    // MySQL.g:3047:4: ENUM_SYMBOL string_list ( string_binary )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ENUM_SYMBOL2935 = (pANTLR3_COMMON_TOKEN) MATCHT(ENUM_SYMBOL, &FOLLOW_ENUM_SYMBOL_in_data_type_elements15437);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ENUM_SYMBOL2935_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ENUM_SYMBOL2935));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ENUM_SYMBOL2935_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_list_in_data_type_elements15439);
        	        string_list2936=string_list(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_list2936.tree);

        	        // MySQL.g:3047:28: ( string_binary )?
        	        {
        	            int alt827=2;
        	            switch ( LA(1) )
        	            {
        	                case ASCII_SYMBOL:
        	                case BYTE_SYMBOL:
        	                case CHARSET_SYMBOL:
        	                case UNICODE_SYMBOL:
        	                case BINARY_SYMBOL:
        	                case CHAR_SYMBOL:
        	                	{
        	                		alt827=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt827)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3047:28: string_binary
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_string_binary_in_data_type_elements15441);
        	        	        string_binary2937=string_binary(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_binary2937.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 32:
        	    // MySQL.g:3048:4: SET_SYMBOL string_list ( string_binary )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SET_SYMBOL2938 = (pANTLR3_COMMON_TOKEN) MATCHT(SET_SYMBOL, &FOLLOW_SET_SYMBOL_in_data_type_elements15447);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SET_SYMBOL2938_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SET_SYMBOL2938));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SET_SYMBOL2938_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_list_in_data_type_elements15449);
        	        string_list2939=string_list(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_list2939.tree);

        	        // MySQL.g:3048:27: ( string_binary )?
        	        {
        	            int alt828=2;
        	            switch ( LA(1) )
        	            {
        	                case ASCII_SYMBOL:
        	                case BYTE_SYMBOL:
        	                case CHARSET_SYMBOL:
        	                case UNICODE_SYMBOL:
        	                case BINARY_SYMBOL:
        	                case CHAR_SYMBOL:
        	                	{
        	                		alt828=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt828)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3048:27: string_binary
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_string_binary_in_data_type_elements15451);
        	        	        string_binary2940=string_binary(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_binary2940.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 33:
        	    // MySQL.g:3049:4: SERIAL_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SERIAL_SYMBOL2941 = (pANTLR3_COMMON_TOKEN) MATCHT(SERIAL_SYMBOL, &FOLLOW_SERIAL_SYMBOL_in_data_type_elements15457);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SERIAL_SYMBOL2941_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SERIAL_SYMBOL2941));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SERIAL_SYMBOL2941_tree);
        	        }

        	    }
        	    break;
        	case 34:
        	    // MySQL.g:3050: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_SYMBOL2942 = (pANTLR3_COMMON_TOKEN) MATCHT(JSON_SYMBOL, &FOLLOW_JSON_SYMBOL_in_data_type_elements15464);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        JSON_SYMBOL2942_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, JSON_SYMBOL2942));
        	        ADAPTOR->addChild(ADAPTOR, root_0, JSON_SYMBOL2942_tree);
        	        }

        	    }
        	    break;
        	case 35:
        	    // MySQL.g:3051:4: spatial_type
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_spatial_type_in_data_type_elements15469);
        	        spatial_type2943=spatial_type(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, spatial_type2943.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:3054: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_SYMBOL2944;
    pANTLR3_COMMON_TOKEN    DECIMAL_NUMBER2946;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2947;
    MySQLParser_real_ulonglong_number_return real_ulonglong_number2945;
    #undef	RETURN_TYPE_real_ulonglong_number2945
    #define	RETURN_TYPE_real_ulonglong_number2945 MySQLParser_real_ulonglong_number_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2944_tree;
    pANTLR3_BASE_TREE DECIMAL_NUMBER2946_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2947_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL2944       = NULL;
    DECIMAL_NUMBER2946       = NULL;
    CLOSE_PAR_SYMBOL2947       = NULL;
    real_ulonglong_number2945.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL2944_tree   = NULL;
    DECIMAL_NUMBER2946_tree   = NULL;
    CLOSE_PAR_SYMBOL2947_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3054:13: ( OPEN_PAR_SYMBOL ( real_ulonglong_number | DECIMAL_NUMBER ) CLOSE_PAR_SYMBOL )
        // MySQL.g:3055:2: OPEN_PAR_SYMBOL ( real_ulonglong_number | DECIMAL_NUMBER ) CLOSE_PAR_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            OPEN_PAR_SYMBOL2944 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_field_length15478);
            if  (HASEXCEPTION())
            {
                goto rulefield_lengthEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL2944_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2944));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2944_tree);
            }

            // MySQL.g:3055:18: ( real_ulonglong_number | DECIMAL_NUMBER )
            {
                int alt830=2;
                switch ( LA(1) )
                {
                case INT_NUMBER:
                case LONG_NUMBER:
                case ULONGLONG_NUMBER:
                	{
                		alt830=1;
                	}
                    break;
                case DECIMAL_NUMBER:
                	{
                		alt830=2;
                	}
                    break;

                default:
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }

                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 830;
                    EXCEPTION->state        = 0;


                    goto rulefield_lengthEx;

                }

                switch (alt830)
                {
            	case 1:
            	    // MySQL.g:3055:19: real_ulonglong_number
            	    {
            	        FOLLOWPUSH(FOLLOW_real_ulonglong_number_in_field_length15481);
            	        real_ulonglong_number2945=real_ulonglong_number(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulefield_lengthEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, real_ulonglong_number2945.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:3055:43: DECIMAL_NUMBER
            	    {
            	        DECIMAL_NUMBER2946 = (pANTLR3_COMMON_TOKEN) MATCHT(DECIMAL_NUMBER, &FOLLOW_DECIMAL_NUMBER_in_field_length15485);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulefield_lengthEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DECIMAL_NUMBER2946_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DECIMAL_NUMBER2946));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DECIMAL_NUMBER2946_tree);
            	        }

            	    }
            	    break;

                }
            }

            CLOSE_PAR_SYMBOL2947 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_field_length15488);
            if  (HASEXCEPTION())
            {
                goto rulefield_lengthEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL2947_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2947));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2947_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:3058: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    set2948;

    pANTLR3_BASE_TREE set2948_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2948       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2948_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3058:14: ( ( SIGNED_SYMBOL | UNSIGNED_SYMBOL | ZEROFILL_SYMBOL )+ )
        // MySQL.g:3059:2: ( SIGNED_SYMBOL | UNSIGNED_SYMBOL | ZEROFILL_SYMBOL )+
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:3059:2: ( SIGNED_SYMBOL | UNSIGNED_SYMBOL | ZEROFILL_SYMBOL )+
            {
                int cnt831=0;

                for (;;)
                {
                    int alt831=2;
            	switch ( LA(1) )
            	{
            	case SIGNED_SYMBOL:
            	case UNSIGNED_SYMBOL:
            	case ZEROFILL_SYMBOL:
            		{
            			alt831=1;
            		}
            	    break;

            	}

            	switch (alt831)
            	{
            	    case 1:
            	        // MySQL.g:
            	        {
            	            set2948=(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, set2948))
            	                );
            	                PERRORRECOVERY=ANTLR3_FALSE;
            	                FAILEDFLAG=ANTLR3_FALSE;

            	            }
            	            else
            	            {
            	                if (BACKTRACKING>0)
            	                {
            	                    FAILEDFLAG = ANTLR3_TRUE;
            	                    return retval;
            	                }

            	                CONSTRUCTEX();
            	                EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
            	                EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
            	                EXCEPTION->expectingSet = NULL;

            	                goto rulefield_optionsEx;
            	            }


            	        }
            	        break;

            	    default:

            		if ( cnt831 >= 1 )
            		{
            		    goto loop831;
            		}
            		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;
            	}
            	cnt831++;
                }
                loop831: ;	/* 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:3062: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_SYMBOL2951;
    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL2954;
    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL2955;
    MySQLParser_ascii_return ascii2949;
    #undef	RETURN_TYPE_ascii2949
    #define	RETURN_TYPE_ascii2949 MySQLParser_ascii_return

    MySQLParser_unicode_return unicode2950;
    #undef	RETURN_TYPE_unicode2950
    #define	RETURN_TYPE_unicode2950 MySQLParser_unicode_return

    MySQLParser_charset_return charset2952;
    #undef	RETURN_TYPE_charset2952
    #define	RETURN_TYPE_charset2952 MySQLParser_charset_return

    MySQLParser_charset_name_return charset_name2953;
    #undef	RETURN_TYPE_charset_name2953
    #define	RETURN_TYPE_charset_name2953 MySQLParser_charset_name_return

    MySQLParser_charset_return charset2956;
    #undef	RETURN_TYPE_charset2956
    #define	RETURN_TYPE_charset2956 MySQLParser_charset_return

    MySQLParser_charset_name_return charset_name2957;
    #undef	RETURN_TYPE_charset_name2957
    #define	RETURN_TYPE_charset_name2957 MySQLParser_charset_name_return

    pANTLR3_BASE_TREE BYTE_SYMBOL2951_tree;
    pANTLR3_BASE_TREE BINARY_SYMBOL2954_tree;
    pANTLR3_BASE_TREE BINARY_SYMBOL2955_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    BYTE_SYMBOL2951       = NULL;
    BINARY_SYMBOL2954       = NULL;
    BINARY_SYMBOL2955       = NULL;
    ascii2949.tree = NULL;

    unicode2950.tree = NULL;

    charset2952.tree = NULL;

    charset_name2953.tree = NULL;

    charset2956.tree = NULL;

    charset_name2957.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    BYTE_SYMBOL2951_tree   = NULL;
    BINARY_SYMBOL2954_tree   = NULL;
    BINARY_SYMBOL2955_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:3062:14: ( ascii | unicode | BYTE_SYMBOL | charset charset_name ( BINARY_SYMBOL )? | BINARY_SYMBOL ( charset charset_name )? )

            ANTLR3_UINT32 alt834;

            alt834=5;

            switch ( LA(1) )
            {
            case ASCII_SYMBOL:
            	{
            		alt834=1;
            	}
                break;
            case BINARY_SYMBOL:
            	{
            		{
            		    int LA834_2 = LA(2);
            		    if ( (LA834_2 == ASCII_SYMBOL))
            		    {
            		        alt834=1;
            		    }
            		    else if ( (LA834_2 == UNICODE_SYMBOL))
            		    {
            		        alt834=2;
            		    }
            		    else if ( (LA834_2 == EOF || ((LA834_2 >= BACKUP_SYMBOL) && (LA834_2 <= BEGIN_SYMBOL)) || ((LA834_2 >= CACHE_SYMBOL) && (LA834_2 <= DO_SYMBOL)) || ((LA834_2 >= EXECUTE_SYMBOL) && (LA834_2 <= FLUSH_SYMBOL)) || ((LA834_2 >= HANDLER_SYMBOL) && (LA834_2 <= HELP_SYMBOL)) || ((LA834_2 >= INSTALL_SYMBOL) && (LA834_2 <= OPEN_SYMBOL)) || LA834_2 == PARTITION_SYMBOL || ((LA834_2 >= PREPARE_SYMBOL) && (LA834_2 <= SAVEPOINT_SYMBOL)) || ((LA834_2 >= START_SYMBOL) && (LA834_2 <= TRUNCATE_SYMBOL)) || LA834_2 == UNINSTALL_SYMBOL || ((LA834_2 >= XA_SYMBOL) && (LA834_2 <= YEAR_SYMBOL)) || LA834_2 == ALTER_SYMBOL || LA834_2 == CALL_SYMBOL || LA834_2 == CASE_SYMBOL || LA834_2 == CHANGE_SYMBOL || ((LA834_2 >= CHAR_SYMBOL) && (LA834_2 <= COLLATE_SYMBOL)) || LA834_2 == CREATE_SYMBOL || LA834_2 == DEFAULT_SYMBOL || ((LA834_2 >= DELETE_SYMBOL) && (LA834_2 <= DETERMINISTIC_SYMBOL)) || LA834_2 == DROP_SYMBOL || LA834_2 == FETCH_SYMBOL || ((LA834_2 >= GENERATED_SYMBOL) && (LA834_2 <= GRANT_SYMBOL)) || LA834_2 == IF_SYMBOL || LA834_2 == INSERT_SYMBOL || LA834_2 == ITERATE_SYMBOL || ((LA834_2 >= KEY_SYMBOL) && (LA834_2 <= KILL_SYMBOL)) || LA834_2 == LEAVE_SYMBOL || LA834_2 == LOAD_SYMBOL || LA834_2 == LOCK_SYMBOL || LA834_2 == LOOP_SYMBOL || LA834_2 == MODIFIES_SYMBOL || LA834_2 == NOT_SYMBOL || ((LA834_2 >= NULL2_SYMBOL) && (LA834_2 <= NULL_SYMBOL)) || LA834_2 == ON_SYMBOL || LA834_2 == OPEN_PAR_SYMBOL || LA834_2 == OPTIMIZE_SYMBOL || LA834_2 == PRIMARY_SYMBOL || LA834_2 == PURGE_SYMBOL || LA834_2 == READS_SYMBOL || LA834_2 == REFERENCES_SYMBOL || ((LA834_2 >= RELEASE_SYMBOL) && (LA834_2 <= REPLACE_SYMBOL)) || LA834_2 == RESIGNAL_SYMBOL || ((LA834_2 >= RETURN_SYMBOL) && (LA834_2 <= REVOKE_SYMBOL)) || ((LA834_2 >= SELECT_SYMBOL) && (LA834_2 <= SEMICOLON_SYMBOL)) || LA834_2 == SET_SYMBOL || ((LA834_2 >= SHOW_SYMBOL) && (LA834_2 <= SIGNAL_SYMBOL)) || LA834_2 == SQL_SYMBOL || ((LA834_2 >= UNIQUE_SYMBOL) && (LA834_2 <= UNLOCK_SYMBOL)) || LA834_2 == UPDATE_SYMBOL || LA834_2 == USE_SYMBOL || LA834_2 == WHILE_SYMBOL || LA834_2 == AS_SYMBOL || LA834_2 == BACK_TICK_QUOTED_ID || LA834_2 == CLOSE_PAR_SYMBOL || LA834_2 == COMMA_SYMBOL || LA834_2 == DOUBLE_QUOTED_TEXT || LA834_2 == IDENTIFIER))
            		    {
            		        alt834=5;
            		    }
            		    else
            		    {
            		        if (BACKTRACKING>0)
            		        {
            		            FAILEDFLAG = ANTLR3_TRUE;
            		            return retval;
            		        }


            		        CONSTRUCTEX();
            		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            		        EXCEPTION->message      = (void *)"";
            		        EXCEPTION->decisionNum  = 834;
            		        EXCEPTION->state        = 2;


            		        goto rulestring_binaryEx;

            		    }
            		}
            	}
                break;
            case UNICODE_SYMBOL:
            	{
            		alt834=2;
            	}
                break;
            case BYTE_SYMBOL:
            	{
            		alt834=3;
            	}
                break;
            case CHARSET_SYMBOL:
            case CHAR_SYMBOL:
            	{
            		alt834=4;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 834;
                EXCEPTION->state        = 0;


                goto rulestring_binaryEx;

            }

            switch (alt834)
            {
        	case 1:
        	    // MySQL.g:3063:2: ascii
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_ascii_in_string_binary15517);
        	        ascii2949=ascii(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulestring_binaryEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ascii2949.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:3064:4: unicode
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_unicode_in_string_binary15522);
        	        unicode2950=unicode(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulestring_binaryEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, unicode2950.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:3065:4: BYTE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BYTE_SYMBOL2951 = (pANTLR3_COMMON_TOKEN) MATCHT(BYTE_SYMBOL, &FOLLOW_BYTE_SYMBOL_in_string_binary15527);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulestring_binaryEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BYTE_SYMBOL2951_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BYTE_SYMBOL2951));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BYTE_SYMBOL2951_tree);
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:3066:4: charset charset_name ( BINARY_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_charset_in_string_binary15532);
        	        charset2952=charset(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulestring_binaryEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset2952.tree);

        	        FOLLOWPUSH(FOLLOW_charset_name_in_string_binary15534);
        	        charset_name2953=charset_name(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulestring_binaryEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset_name2953.tree);

        	        // MySQL.g:3066:25: ( BINARY_SYMBOL )?
        	        {
        	            int alt832=2;
        	            switch ( LA(1) )
        	            {
        	                case BINARY_SYMBOL:
        	                	{
        	                		alt832=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt832)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3066:25: BINARY_SYMBOL
        	        	    {
        	        	        BINARY_SYMBOL2954 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_string_binary15536);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulestring_binaryEx;
        	        	        }
        	        	        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 5:
        	    // MySQL.g:3067:4: BINARY_SYMBOL ( charset charset_name )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BINARY_SYMBOL2955 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_string_binary15542);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulestring_binaryEx;
        	        }
        	        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);
        	        }

        	        // MySQL.g:3067:18: ( charset charset_name )?
        	        {
        	            int alt833=2;
        	            switch ( LA(1) )
        	            {
        	                case CHARSET_SYMBOL:
        	                case CHAR_SYMBOL:
        	                	{
        	                		alt833=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt833)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3067:19: charset charset_name
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_charset_in_string_binary15545);
        	        	        charset2956=charset(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulestring_binaryEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset2956.tree);

        	        	        FOLLOWPUSH(FOLLOW_charset_name_in_string_binary15547);
        	        	        charset_name2957=charset_name(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulestring_binaryEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset_name2957.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:3070: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_SYMBOL2958;
    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL2959;
    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL2960;
    pANTLR3_COMMON_TOKEN    ASCII_SYMBOL2961;

    pANTLR3_BASE_TREE ASCII_SYMBOL2958_tree;
    pANTLR3_BASE_TREE BINARY_SYMBOL2959_tree;
    pANTLR3_BASE_TREE BINARY_SYMBOL2960_tree;
    pANTLR3_BASE_TREE ASCII_SYMBOL2961_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ASCII_SYMBOL2958       = NULL;
    BINARY_SYMBOL2959       = NULL;
    BINARY_SYMBOL2960       = NULL;
    ASCII_SYMBOL2961       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ASCII_SYMBOL2958_tree   = NULL;
    BINARY_SYMBOL2959_tree   = NULL;
    BINARY_SYMBOL2960_tree   = NULL;
    ASCII_SYMBOL2961_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:3070:6: ( ASCII_SYMBOL ( BINARY_SYMBOL )? |{...}? BINARY_SYMBOL ASCII_SYMBOL )

            ANTLR3_UINT32 alt836;

            alt836=2;

            switch ( LA(1) )
            {
            case ASCII_SYMBOL:
            	{
            		alt836=1;
            	}
                break;
            case BINARY_SYMBOL:
            	{
            		alt836=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 836;
                EXCEPTION->state        = 0;


                goto ruleasciiEx;

            }

            switch (alt836)
            {
        	case 1:
        	    // MySQL.g:3071:2: ASCII_SYMBOL ( BINARY_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ASCII_SYMBOL2958 = (pANTLR3_COMMON_TOKEN) MATCHT(ASCII_SYMBOL, &FOLLOW_ASCII_SYMBOL_in_ascii15558);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleasciiEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ASCII_SYMBOL2958_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ASCII_SYMBOL2958));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ASCII_SYMBOL2958_tree);
        	        }

        	        // MySQL.g:3071:15: ( BINARY_SYMBOL )?
        	        {
        	            int alt835=2;
        	            switch ( LA(1) )
        	            {
        	                case BINARY_SYMBOL:
        	                	{
        	                		alt835=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt835)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3071:15: BINARY_SYMBOL
        	        	    {
        	        	        BINARY_SYMBOL2959 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_ascii15560);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleasciiEx;
        	        	        }
        	        	        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);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:3072: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_SYMBOL2960 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_ascii15568);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleasciiEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BINARY_SYMBOL2960_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL2960));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL2960_tree);
        	        }

        	        ASCII_SYMBOL2961 = (pANTLR3_COMMON_TOKEN) MATCHT(ASCII_SYMBOL, &FOLLOW_ASCII_SYMBOL_in_ascii15570);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleasciiEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ASCII_SYMBOL2961_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ASCII_SYMBOL2961));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ASCII_SYMBOL2961_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:3075: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_SYMBOL2962;
    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL2963;
    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL2964;
    pANTLR3_COMMON_TOKEN    UNICODE_SYMBOL2965;

    pANTLR3_BASE_TREE UNICODE_SYMBOL2962_tree;
    pANTLR3_BASE_TREE BINARY_SYMBOL2963_tree;
    pANTLR3_BASE_TREE BINARY_SYMBOL2964_tree;
    pANTLR3_BASE_TREE UNICODE_SYMBOL2965_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    UNICODE_SYMBOL2962       = NULL;
    BINARY_SYMBOL2963       = NULL;
    BINARY_SYMBOL2964       = NULL;
    UNICODE_SYMBOL2965       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    UNICODE_SYMBOL2962_tree   = NULL;
    BINARY_SYMBOL2963_tree   = NULL;
    BINARY_SYMBOL2964_tree   = NULL;
    UNICODE_SYMBOL2965_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:3075:8: ( UNICODE_SYMBOL ( BINARY_SYMBOL )? |{...}? BINARY_SYMBOL UNICODE_SYMBOL )

            ANTLR3_UINT32 alt838;

            alt838=2;

            switch ( LA(1) )
            {
            case UNICODE_SYMBOL:
            	{
            		alt838=1;
            	}
                break;
            case BINARY_SYMBOL:
            	{
            		alt838=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 838;
                EXCEPTION->state        = 0;


                goto ruleunicodeEx;

            }

            switch (alt838)
            {
        	case 1:
        	    // MySQL.g:3076:2: UNICODE_SYMBOL ( BINARY_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        UNICODE_SYMBOL2962 = (pANTLR3_COMMON_TOKEN) MATCHT(UNICODE_SYMBOL, &FOLLOW_UNICODE_SYMBOL_in_unicode15579);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleunicodeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        UNICODE_SYMBOL2962_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNICODE_SYMBOL2962));
        	        ADAPTOR->addChild(ADAPTOR, root_0, UNICODE_SYMBOL2962_tree);
        	        }

        	        // MySQL.g:3076:17: ( BINARY_SYMBOL )?
        	        {
        	            int alt837=2;
        	            switch ( LA(1) )
        	            {
        	                case BINARY_SYMBOL:
        	                	{
        	                		alt837=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt837)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3076:17: BINARY_SYMBOL
        	        	    {
        	        	        BINARY_SYMBOL2963 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_unicode15581);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleunicodeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        BINARY_SYMBOL2963_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL2963));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL2963_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:3077: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_SYMBOL2964 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_unicode15589);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleunicodeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BINARY_SYMBOL2964_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL2964));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL2964_tree);
        	        }

        	        UNICODE_SYMBOL2965 = (pANTLR3_COMMON_TOKEN) MATCHT(UNICODE_SYMBOL, &FOLLOW_UNICODE_SYMBOL_in_unicode15591);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleunicodeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        UNICODE_SYMBOL2965_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNICODE_SYMBOL2965));
        	        ADAPTOR->addChild(ADAPTOR, root_0, UNICODE_SYMBOL2965_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:3080: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_SYMBOL2966;
    pANTLR3_COMMON_TOKEN    INT_NUMBER2967;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2968;

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2966_tree;
    pANTLR3_BASE_TREE INT_NUMBER2967_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2968_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL2966       = NULL;
    INT_NUMBER2967       = NULL;
    CLOSE_PAR_SYMBOL2968       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL2966_tree   = NULL;
    INT_NUMBER2967_tree   = NULL;
    CLOSE_PAR_SYMBOL2968_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3080:24: ({...}? OPEN_PAR_SYMBOL INT_NUMBER CLOSE_PAR_SYMBOL )
        // MySQL.g:3081: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_SYMBOL2966 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_type_datetime_precision15602);
            if  (HASEXCEPTION())
            {
                goto ruletype_datetime_precisionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL2966_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2966));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2966_tree);
            }

            INT_NUMBER2967 = (pANTLR3_COMMON_TOKEN) MATCHT(INT_NUMBER, &FOLLOW_INT_NUMBER_in_type_datetime_precision15604);
            if  (HASEXCEPTION())
            {
                goto ruletype_datetime_precisionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            INT_NUMBER2967_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INT_NUMBER2967));
            ADAPTOR->addChild(ADAPTOR, root_0, INT_NUMBER2967_tree);
            }

            CLOSE_PAR_SYMBOL2968 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_type_datetime_precision15606);
            if  (HASEXCEPTION())
            {
                goto ruletype_datetime_precisionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL2968_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2968));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2968_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:3084: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_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 BINARY_SYMBOL2970_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    BINARY_SYMBOL2970       = NULL;
    text_or_identifier2969.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    BINARY_SYMBOL2970_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:3084:13: ( text_or_identifier | BINARY_SYMBOL )

            ANTLR3_UINT32 alt839;

            alt839=2;

            {
                int LA839_0 = LA(1);
                if ( (((LA839_0 >= ACCOUNT_SYMBOL) && (LA839_0 <= YEAR_SYMBOL)) || LA839_0 == SINGLE_QUOTED_TEXT || LA839_0 == BACK_TICK_QUOTED_ID || LA839_0 == DOUBLE_QUOTED_TEXT || LA839_0 == IDENTIFIER))
                {
                    alt839=1;
                }
                else if ( (LA839_0 == BINARY_SYMBOL))
                {
                    alt839=2;
                }
                else
                {
                    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 rulecharset_nameEx;

                }
            }
            switch (alt839)
            {
        	case 1:
        	    // MySQL.g:3085:2: text_or_identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_text_or_identifier_in_charset_name15615);
        	        text_or_identifier2969=text_or_identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecharset_nameEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_or_identifier2969.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:3086:4: BINARY_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BINARY_SYMBOL2970 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_charset_name15620);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecharset_nameEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BINARY_SYMBOL2970_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL2970));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL2970_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:3089: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_SYMBOL2972;
    MySQLParser_charset_name_return charset_name2971;
    #undef	RETURN_TYPE_charset_name2971
    #define	RETURN_TYPE_charset_name2971 MySQLParser_charset_name_return

    pANTLR3_BASE_TREE DEFAULT_SYMBOL2972_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DEFAULT_SYMBOL2972       = NULL;
    charset_name2971.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DEFAULT_SYMBOL2972_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:3089:24: ( charset_name | DEFAULT_SYMBOL )

            ANTLR3_UINT32 alt840;

            alt840=2;

            {
                int LA840_0 = LA(1);
                if ( (((LA840_0 >= ACCOUNT_SYMBOL) && (LA840_0 <= YEAR_SYMBOL)) || LA840_0 == BINARY_SYMBOL || LA840_0 == SINGLE_QUOTED_TEXT || LA840_0 == BACK_TICK_QUOTED_ID || LA840_0 == DOUBLE_QUOTED_TEXT || LA840_0 == IDENTIFIER))
                {
                    alt840=1;
                }
                else if ( (LA840_0 == DEFAULT_SYMBOL))
                {
                    alt840=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 840;
                    EXCEPTION->state        = 0;


                    goto rulecharset_name_or_defaultEx;

                }
            }
            switch (alt840)
            {
        	case 1:
        	    // MySQL.g:3090:2: charset_name
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_charset_name_in_charset_name_or_default15629);
        	        charset_name2971=charset_name(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecharset_name_or_defaultEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset_name2971.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:3091:4: DEFAULT_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DEFAULT_SYMBOL2972 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_charset_name_or_default15634);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecharset_name_or_defaultEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DEFAULT_SYMBOL2972_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL2972));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL2972_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:3094: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_identifier2973;
    #undef	RETURN_TYPE_text_or_identifier2973
    #define	RETURN_TYPE_text_or_identifier2973 MySQLParser_text_or_identifier_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    text_or_identifier2973.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:3094:15: ( text_or_identifier )
        // MySQL.g:3095:2: text_or_identifier
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_text_or_identifier_in_collation_name15643);
            text_or_identifier2973=text_or_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecollation_nameEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_or_identifier2973.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:3098:1: collation_name_or_default : ( collation_name | 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_SYMBOL2975;
    MySQLParser_collation_name_return collation_name2974;
    #undef	RETURN_TYPE_collation_name2974
    #define	RETURN_TYPE_collation_name2974 MySQLParser_collation_name_return

    pANTLR3_BASE_TREE DEFAULT_SYMBOL2975_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DEFAULT_SYMBOL2975       = NULL;
    collation_name2974.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DEFAULT_SYMBOL2975_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:3098:26: ( collation_name | DEFAULT_SYMBOL )

            ANTLR3_UINT32 alt841;

            alt841=2;

            {
                int LA841_0 = LA(1);
                if ( (((LA841_0 >= ACCOUNT_SYMBOL) && (LA841_0 <= YEAR_SYMBOL)) || LA841_0 == SINGLE_QUOTED_TEXT || LA841_0 == BACK_TICK_QUOTED_ID || LA841_0 == DOUBLE_QUOTED_TEXT || LA841_0 == IDENTIFIER))
                {
                    alt841=1;
                }
                else if ( (LA841_0 == DEFAULT_SYMBOL))
                {
                    alt841=2;
                }
                else
                {
                    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 rulecollation_name_or_defaultEx;

                }
            }
            switch (alt841)
            {
        	case 1:
        	    // MySQL.g:3099:2: collation_name
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_collation_name_in_collation_name_or_default15652);
        	        collation_name2974=collation_name(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecollation_name_or_defaultEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, collation_name2974.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:3100:4: DEFAULT_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DEFAULT_SYMBOL2975 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_collation_name_or_default15657);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecollation_name_or_defaultEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DEFAULT_SYMBOL2975_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL2975));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL2975_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:3103: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    set2976;

    pANTLR3_BASE_TREE set2976_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2976       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2976_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3103: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));


            set2976=(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, set2976))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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:3114: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_option2977;
    #undef	RETURN_TYPE_create_table_option2977
    #define	RETURN_TYPE_create_table_option2977 MySQLParser_create_table_option_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    create_table_option2977.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:3114:20: ( ( create_table_option )+ )
        // MySQL.g:3115:2: ( create_table_option )+
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:3115:2: ( create_table_option )+
            {
                int cnt842=0;

                for (;;)
                {
                    int alt842=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:
            		{
            			alt842=1;
            		}
            	    break;

            	}

            	switch (alt842)
            	{
            	    case 1:
            	        // MySQL.g:3115:2: create_table_option
            	        {
            	            FOLLOWPUSH(FOLLOW_create_table_option_in_alter_table_options15710);
            	            create_table_option2977=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_option2977.tree);

            	        }
            	        break;

            	    default:

            		if ( cnt842 >= 1 )
            		{
            		    goto loop842;
            		}
            		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;
            	}
            	cnt842++;
                }
                loop842: ;	/* 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:3118: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_SYMBOL2979;
    MySQLParser_create_table_option_return create_table_option2978;
    #undef	RETURN_TYPE_create_table_option2978
    #define	RETURN_TYPE_create_table_option2978 MySQLParser_create_table_option_return

    MySQLParser_create_table_option_return create_table_option2980;
    #undef	RETURN_TYPE_create_table_option2980
    #define	RETURN_TYPE_create_table_option2980 MySQLParser_create_table_option_return

    pANTLR3_BASE_TREE COMMA_SYMBOL2979_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL2979       = NULL;
    create_table_option2978.tree = NULL;

    create_table_option2980.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL2979_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3118:21: ( create_table_option ( ( COMMA_SYMBOL )? create_table_option )* )
        // MySQL.g:3119: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_options15720);
            create_table_option2978=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_option2978.tree);

            // MySQL.g:3119:22: ( ( COMMA_SYMBOL )? create_table_option )*

            for (;;)
            {
                int alt844=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:
                case COMMA_SYMBOL:
                	{
                		alt844=1;
                	}
                    break;

                }

                switch (alt844)
                {
            	case 1:
            	    // MySQL.g:3119:23: ( COMMA_SYMBOL )? create_table_option
            	    {
            	        // MySQL.g:3119:23: ( COMMA_SYMBOL )?
            	        {
            	            int alt843=2;
            	            switch ( LA(1) )
            	            {
            	                case COMMA_SYMBOL:
            	                	{
            	                		alt843=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt843)
            	            {
            	        	case 1:
            	        	    // MySQL.g:3119:23: COMMA_SYMBOL
            	        	    {
            	        	        COMMA_SYMBOL2979 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_create_table_options15723);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecreate_table_optionsEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        COMMA_SYMBOL2979_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2979));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2979_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_create_table_option_in_create_table_options15726);
            	        create_table_option2980=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_option2980.tree);

            	    }
            	    break;

            	default:
            	    goto loop844;	/* break out of the loop */
            	    break;
                }
            }
            loop844: ; /* 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:3122: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_SYMBOL2981;
    pANTLR3_COMMON_TOKEN    TYPE_SYMBOL2982;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2983;
    pANTLR3_COMMON_TOKEN    MAX_ROWS_SYMBOL2985;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2986;
    pANTLR3_COMMON_TOKEN    MIN_ROWS_SYMBOL2988;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2989;
    pANTLR3_COMMON_TOKEN    AVG_ROW_LENGTH_SYMBOL2991;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2992;
    pANTLR3_COMMON_TOKEN    PASSWORD_SYMBOL2994;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2995;
    pANTLR3_COMMON_TOKEN    COMMENT_SYMBOL2997;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2998;
    pANTLR3_COMMON_TOKEN    COMPRESSION_SYMBOL3000;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR3001;
    pANTLR3_COMMON_TOKEN    AUTO_INCREMENT_SYMBOL3003;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR3004;
    pANTLR3_COMMON_TOKEN    PACK_KEYS_SYMBOL3006;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR3007;
    pANTLR3_COMMON_TOKEN    DEFAULT_SYMBOL3009;
    pANTLR3_COMMON_TOKEN    set3010;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR3011;
    pANTLR3_COMMON_TOKEN    DEFAULT_SYMBOL3013;
    pANTLR3_COMMON_TOKEN    set3014;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR3015;
    pANTLR3_COMMON_TOKEN    DELAY_KEY_WRITE_SYMBOL3017;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR3018;
    pANTLR3_COMMON_TOKEN    ROW_FORMAT_SYMBOL3020;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR3021;
    pANTLR3_COMMON_TOKEN    set3022;
    pANTLR3_COMMON_TOKEN    UNION_SYMBOL3023;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR3024;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL3025;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL3027;
    pANTLR3_COMMON_TOKEN    DEFAULT_SYMBOL3028;
    pANTLR3_COMMON_TOKEN    COLLATE_SYMBOL3029;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR3030;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR3033;
    pANTLR3_COMMON_TOKEN    INSERT_METHOD_SYMBOL3035;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR3036;
    pANTLR3_COMMON_TOKEN    set3037;
    pANTLR3_COMMON_TOKEN    DATA_SYMBOL3038;
    pANTLR3_COMMON_TOKEN    DIRECTORY_SYMBOL3039;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR3040;
    pANTLR3_COMMON_TOKEN    INDEX_SYMBOL3042;
    pANTLR3_COMMON_TOKEN    DIRECTORY_SYMBOL3043;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR3044;
    pANTLR3_COMMON_TOKEN    TABLESPACE_SYMBOL3046;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR3047;
    pANTLR3_COMMON_TOKEN    STORAGE_SYMBOL3049;
    pANTLR3_COMMON_TOKEN    set3050;
    pANTLR3_COMMON_TOKEN    CONNECTION_SYMBOL3051;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR3052;
    pANTLR3_COMMON_TOKEN    KEY_BLOCK_SIZE_SYMBOL3054;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR3055;
    MySQLParser_engine_ref_return engine_ref2984;
    #undef	RETURN_TYPE_engine_ref2984
    #define	RETURN_TYPE_engine_ref2984 MySQLParser_engine_ref_return

    MySQLParser_ulonglong_number_return ulonglong_number2987;
    #undef	RETURN_TYPE_ulonglong_number2987
    #define	RETURN_TYPE_ulonglong_number2987 MySQLParser_ulonglong_number_return

    MySQLParser_ulonglong_number_return ulonglong_number2990;
    #undef	RETURN_TYPE_ulonglong_number2990
    #define	RETURN_TYPE_ulonglong_number2990 MySQLParser_ulonglong_number_return

    MySQLParser_ulong_number_return ulong_number2993;
    #undef	RETURN_TYPE_ulong_number2993
    #define	RETURN_TYPE_ulong_number2993 MySQLParser_ulong_number_return

    MySQLParser_text_string_return text_string2996;
    #undef	RETURN_TYPE_text_string2996
    #define	RETURN_TYPE_text_string2996 MySQLParser_text_string_return

    MySQLParser_text_string_return text_string2999;
    #undef	RETURN_TYPE_text_string2999
    #define	RETURN_TYPE_text_string2999 MySQLParser_text_string_return

    MySQLParser_text_string_return text_string3002;
    #undef	RETURN_TYPE_text_string3002
    #define	RETURN_TYPE_text_string3002 MySQLParser_text_string_return

    MySQLParser_ulonglong_number_return ulonglong_number3005;
    #undef	RETURN_TYPE_ulonglong_number3005
    #define	RETURN_TYPE_ulonglong_number3005 MySQLParser_ulonglong_number_return

    MySQLParser_ulong_number_return ulong_number3008;
    #undef	RETURN_TYPE_ulong_number3008
    #define	RETURN_TYPE_ulong_number3008 MySQLParser_ulong_number_return

    MySQLParser_ulong_number_return ulong_number3012;
    #undef	RETURN_TYPE_ulong_number3012
    #define	RETURN_TYPE_ulong_number3012 MySQLParser_ulong_number_return

    MySQLParser_ulong_number_return ulong_number3016;
    #undef	RETURN_TYPE_ulong_number3016
    #define	RETURN_TYPE_ulong_number3016 MySQLParser_ulong_number_return

    MySQLParser_ulong_number_return ulong_number3019;
    #undef	RETURN_TYPE_ulong_number3019
    #define	RETURN_TYPE_ulong_number3019 MySQLParser_ulong_number_return

    MySQLParser_table_ref_list_return table_ref_list3026;
    #undef	RETURN_TYPE_table_ref_list3026
    #define	RETURN_TYPE_table_ref_list3026 MySQLParser_table_ref_list_return

    MySQLParser_collation_name_or_default_return collation_name_or_default3031;
    #undef	RETURN_TYPE_collation_name_or_default3031
    #define	RETURN_TYPE_collation_name_or_default3031 MySQLParser_collation_name_or_default_return

    MySQLParser_charset_return charset3032;
    #undef	RETURN_TYPE_charset3032
    #define	RETURN_TYPE_charset3032 MySQLParser_charset_return

    MySQLParser_charset_name_or_default_return charset_name_or_default3034;
    #undef	RETURN_TYPE_charset_name_or_default3034
    #define	RETURN_TYPE_charset_name_or_default3034 MySQLParser_charset_name_or_default_return

    MySQLParser_text_string_return text_string3041;
    #undef	RETURN_TYPE_text_string3041
    #define	RETURN_TYPE_text_string3041 MySQLParser_text_string_return

    MySQLParser_text_string_return text_string3045;
    #undef	RETURN_TYPE_text_string3045
    #define	RETURN_TYPE_text_string3045 MySQLParser_text_string_return

    MySQLParser_identifier_return identifier3048;
    #undef	RETURN_TYPE_identifier3048
    #define	RETURN_TYPE_identifier3048 MySQLParser_identifier_return

    MySQLParser_text_string_return text_string3053;
    #undef	RETURN_TYPE_text_string3053
    #define	RETURN_TYPE_text_string3053 MySQLParser_text_string_return

    MySQLParser_ulong_number_return ulong_number3056;
    #undef	RETURN_TYPE_ulong_number3056
    #define	RETURN_TYPE_ulong_number3056 MySQLParser_ulong_number_return

    pANTLR3_BASE_TREE ENGINE_SYMBOL2981_tree;
    pANTLR3_BASE_TREE TYPE_SYMBOL2982_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2983_tree;
    pANTLR3_BASE_TREE MAX_ROWS_SYMBOL2985_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2986_tree;
    pANTLR3_BASE_TREE MIN_ROWS_SYMBOL2988_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2989_tree;
    pANTLR3_BASE_TREE AVG_ROW_LENGTH_SYMBOL2991_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2992_tree;
    pANTLR3_BASE_TREE PASSWORD_SYMBOL2994_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2995_tree;
    pANTLR3_BASE_TREE COMMENT_SYMBOL2997_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2998_tree;
    pANTLR3_BASE_TREE COMPRESSION_SYMBOL3000_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR3001_tree;
    pANTLR3_BASE_TREE AUTO_INCREMENT_SYMBOL3003_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR3004_tree;
    pANTLR3_BASE_TREE PACK_KEYS_SYMBOL3006_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR3007_tree;
    pANTLR3_BASE_TREE DEFAULT_SYMBOL3009_tree;
    pANTLR3_BASE_TREE set3010_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR3011_tree;
    pANTLR3_BASE_TREE DEFAULT_SYMBOL3013_tree;
    pANTLR3_BASE_TREE set3014_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR3015_tree;
    pANTLR3_BASE_TREE DELAY_KEY_WRITE_SYMBOL3017_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR3018_tree;
    pANTLR3_BASE_TREE ROW_FORMAT_SYMBOL3020_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR3021_tree;
    pANTLR3_BASE_TREE set3022_tree;
    pANTLR3_BASE_TREE UNION_SYMBOL3023_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR3024_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL3025_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL3027_tree;
    pANTLR3_BASE_TREE DEFAULT_SYMBOL3028_tree;
    pANTLR3_BASE_TREE COLLATE_SYMBOL3029_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR3030_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR3033_tree;
    pANTLR3_BASE_TREE INSERT_METHOD_SYMBOL3035_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR3036_tree;
    pANTLR3_BASE_TREE set3037_tree;
    pANTLR3_BASE_TREE DATA_SYMBOL3038_tree;
    pANTLR3_BASE_TREE DIRECTORY_SYMBOL3039_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR3040_tree;
    pANTLR3_BASE_TREE INDEX_SYMBOL3042_tree;
    pANTLR3_BASE_TREE DIRECTORY_SYMBOL3043_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR3044_tree;
    pANTLR3_BASE_TREE TABLESPACE_SYMBOL3046_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR3047_tree;
    pANTLR3_BASE_TREE STORAGE_SYMBOL3049_tree;
    pANTLR3_BASE_TREE set3050_tree;
    pANTLR3_BASE_TREE CONNECTION_SYMBOL3051_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR3052_tree;
    pANTLR3_BASE_TREE KEY_BLOCK_SIZE_SYMBOL3054_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR3055_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ENGINE_SYMBOL2981       = NULL;
    TYPE_SYMBOL2982       = NULL;
    EQUAL_OPERATOR2983       = NULL;
    MAX_ROWS_SYMBOL2985       = NULL;
    EQUAL_OPERATOR2986       = NULL;
    MIN_ROWS_SYMBOL2988       = NULL;
    EQUAL_OPERATOR2989       = NULL;
    AVG_ROW_LENGTH_SYMBOL2991       = NULL;
    EQUAL_OPERATOR2992       = NULL;
    PASSWORD_SYMBOL2994       = NULL;
    EQUAL_OPERATOR2995       = NULL;
    COMMENT_SYMBOL2997       = NULL;
    EQUAL_OPERATOR2998       = NULL;
    COMPRESSION_SYMBOL3000       = NULL;
    EQUAL_OPERATOR3001       = NULL;
    AUTO_INCREMENT_SYMBOL3003       = NULL;
    EQUAL_OPERATOR3004       = NULL;
    PACK_KEYS_SYMBOL3006       = NULL;
    EQUAL_OPERATOR3007       = NULL;
    DEFAULT_SYMBOL3009       = NULL;
    set3010       = NULL;
    EQUAL_OPERATOR3011       = NULL;
    DEFAULT_SYMBOL3013       = NULL;
    set3014       = NULL;
    EQUAL_OPERATOR3015       = NULL;
    DELAY_KEY_WRITE_SYMBOL3017       = NULL;
    EQUAL_OPERATOR3018       = NULL;
    ROW_FORMAT_SYMBOL3020       = NULL;
    EQUAL_OPERATOR3021       = NULL;
    set3022       = NULL;
    UNION_SYMBOL3023       = NULL;
    EQUAL_OPERATOR3024       = NULL;
    OPEN_PAR_SYMBOL3025       = NULL;
    CLOSE_PAR_SYMBOL3027       = NULL;
    DEFAULT_SYMBOL3028       = NULL;
    COLLATE_SYMBOL3029       = NULL;
    EQUAL_OPERATOR3030       = NULL;
    EQUAL_OPERATOR3033       = NULL;
    INSERT_METHOD_SYMBOL3035       = NULL;
    EQUAL_OPERATOR3036       = NULL;
    set3037       = NULL;
    DATA_SYMBOL3038       = NULL;
    DIRECTORY_SYMBOL3039       = NULL;
    EQUAL_OPERATOR3040       = NULL;
    INDEX_SYMBOL3042       = NULL;
    DIRECTORY_SYMBOL3043       = NULL;
    EQUAL_OPERATOR3044       = NULL;
    TABLESPACE_SYMBOL3046       = NULL;
    EQUAL_OPERATOR3047       = NULL;
    STORAGE_SYMBOL3049       = NULL;
    set3050       = NULL;
    CONNECTION_SYMBOL3051       = NULL;
    EQUAL_OPERATOR3052       = NULL;
    KEY_BLOCK_SIZE_SYMBOL3054       = NULL;
    EQUAL_OPERATOR3055       = NULL;
    engine_ref2984.tree = NULL;

    ulonglong_number2987.tree = NULL;

    ulonglong_number2990.tree = NULL;

    ulong_number2993.tree = NULL;

    text_string2996.tree = NULL;

    text_string2999.tree = NULL;

    text_string3002.tree = NULL;

    ulonglong_number3005.tree = NULL;

    ulong_number3008.tree = NULL;

    ulong_number3012.tree = NULL;

    ulong_number3016.tree = NULL;

    ulong_number3019.tree = NULL;

    table_ref_list3026.tree = NULL;

    collation_name_or_default3031.tree = NULL;

    charset3032.tree = NULL;

    charset_name_or_default3034.tree = NULL;

    text_string3041.tree = NULL;

    text_string3045.tree = NULL;

    identifier3048.tree = NULL;

    text_string3053.tree = NULL;

    ulong_number3056.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ENGINE_SYMBOL2981_tree   = NULL;
    TYPE_SYMBOL2982_tree   = NULL;
    EQUAL_OPERATOR2983_tree   = NULL;
    MAX_ROWS_SYMBOL2985_tree   = NULL;
    EQUAL_OPERATOR2986_tree   = NULL;
    MIN_ROWS_SYMBOL2988_tree   = NULL;
    EQUAL_OPERATOR2989_tree   = NULL;
    AVG_ROW_LENGTH_SYMBOL2991_tree   = NULL;
    EQUAL_OPERATOR2992_tree   = NULL;
    PASSWORD_SYMBOL2994_tree   = NULL;
    EQUAL_OPERATOR2995_tree   = NULL;
    COMMENT_SYMBOL2997_tree   = NULL;
    EQUAL_OPERATOR2998_tree   = NULL;
    COMPRESSION_SYMBOL3000_tree   = NULL;
    EQUAL_OPERATOR3001_tree   = NULL;
    AUTO_INCREMENT_SYMBOL3003_tree   = NULL;
    EQUAL_OPERATOR3004_tree   = NULL;
    PACK_KEYS_SYMBOL3006_tree   = NULL;
    EQUAL_OPERATOR3007_tree   = NULL;
    DEFAULT_SYMBOL3009_tree   = NULL;
    set3010_tree   = NULL;
    EQUAL_OPERATOR3011_tree   = NULL;
    DEFAULT_SYMBOL3013_tree   = NULL;
    set3014_tree   = NULL;
    EQUAL_OPERATOR3015_tree   = NULL;
    DELAY_KEY_WRITE_SYMBOL3017_tree   = NULL;
    EQUAL_OPERATOR3018_tree   = NULL;
    ROW_FORMAT_SYMBOL3020_tree   = NULL;
    EQUAL_OPERATOR3021_tree   = NULL;
    set3022_tree   = NULL;
    UNION_SYMBOL3023_tree   = NULL;
    EQUAL_OPERATOR3024_tree   = NULL;
    OPEN_PAR_SYMBOL3025_tree   = NULL;
    CLOSE_PAR_SYMBOL3027_tree   = NULL;
    DEFAULT_SYMBOL3028_tree   = NULL;
    COLLATE_SYMBOL3029_tree   = NULL;
    EQUAL_OPERATOR3030_tree   = NULL;
    EQUAL_OPERATOR3033_tree   = NULL;
    INSERT_METHOD_SYMBOL3035_tree   = NULL;
    EQUAL_OPERATOR3036_tree   = NULL;
    set3037_tree   = NULL;
    DATA_SYMBOL3038_tree   = NULL;
    DIRECTORY_SYMBOL3039_tree   = NULL;
    EQUAL_OPERATOR3040_tree   = NULL;
    INDEX_SYMBOL3042_tree   = NULL;
    DIRECTORY_SYMBOL3043_tree   = NULL;
    EQUAL_OPERATOR3044_tree   = NULL;
    TABLESPACE_SYMBOL3046_tree   = NULL;
    EQUAL_OPERATOR3047_tree   = NULL;
    STORAGE_SYMBOL3049_tree   = NULL;
    set3050_tree   = NULL;
    CONNECTION_SYMBOL3051_tree   = NULL;
    EQUAL_OPERATOR3052_tree   = NULL;
    KEY_BLOCK_SIZE_SYMBOL3054_tree   = NULL;
    EQUAL_OPERATOR3055_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:3122: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 alt873;

            alt873=22;

            switch ( LA(1) )
            {
            case ENGINE_SYMBOL:
            case TYPE_SYMBOL:
            	{
            		alt873=1;
            	}
                break;
            case MAX_ROWS_SYMBOL:
            	{
            		alt873=2;
            	}
                break;
            case MIN_ROWS_SYMBOL:
            	{
            		alt873=3;
            	}
                break;
            case AVG_ROW_LENGTH_SYMBOL:
            	{
            		alt873=4;
            	}
                break;
            case PASSWORD_SYMBOL:
            	{
            		alt873=5;
            	}
                break;
            case COMMENT_SYMBOL:
            	{
            		alt873=6;
            	}
                break;
            case COMPRESSION_SYMBOL:
            	{
            		alt873=7;
            	}
                break;
            case AUTO_INCREMENT_SYMBOL:
            	{
            		alt873=8;
            	}
                break;
            case PACK_KEYS_SYMBOL:
            	{
            		alt873=9;
            	}
                break;
            case STATS_AUTO_RECALC_SYMBOL:
            case STATS_PERSISTENT_SYMBOL:
            case STATS_SAMPLE_PAGES_SYMBOL:
            	{
            		alt873=10;
            	}
                break;
            case CHECKSUM_SYMBOL:
            case TABLE_CHECKSUM_SYMBOL:
            	{
            		alt873=11;
            	}
                break;
            case DELAY_KEY_WRITE_SYMBOL:
            	{
            		alt873=12;
            	}
                break;
            case ROW_FORMAT_SYMBOL:
            	{
            		alt873=13;
            	}
                break;
            case UNION_SYMBOL:
            	{
            		alt873=14;
            	}
                break;
            case CHARSET_SYMBOL:
            case CHAR_SYMBOL:
            case COLLATE_SYMBOL:
            case DEFAULT_SYMBOL:
            	{
            		alt873=15;
            	}
                break;
            case INSERT_METHOD_SYMBOL:
            	{
            		alt873=16;
            	}
                break;
            case DATA_SYMBOL:
            	{
            		alt873=17;
            	}
                break;
            case INDEX_SYMBOL:
            	{
            		alt873=18;
            	}
                break;
            case TABLESPACE_SYMBOL:
            	{
            		alt873=19;
            	}
                break;
            case STORAGE_SYMBOL:
            	{
            		alt873=20;
            	}
                break;
            case CONNECTION_SYMBOL:
            	{
            		alt873=21;
            	}
                break;
            case KEY_BLOCK_SIZE_SYMBOL:
            	{
            		alt873=22;
            	}
                break;

            default:
                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:3123:2: ( ENGINE_SYMBOL |{...}? TYPE_SYMBOL ) ( EQUAL_OPERATOR )? engine_ref
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:3123:2: ( ENGINE_SYMBOL |{...}? TYPE_SYMBOL )
        	        {
        	            int alt845=2;
        	            switch ( LA(1) )
        	            {
        	            case ENGINE_SYMBOL:
        	            	{
        	            		alt845=1;
        	            	}
        	                break;
        	            case TYPE_SYMBOL:
        	            	{
        	            		alt845=2;
        	            	}
        	                break;

        	            default:
        	                if (BACKTRACKING>0)
        	                {
        	                    FAILEDFLAG = ANTLR3_TRUE;
        	                    return retval;
        	                }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                EXCEPTION->message      = (void *)"";
        	                EXCEPTION->decisionNum  = 845;
        	                EXCEPTION->state        = 0;


        	                goto rulecreate_table_optionEx;

        	            }

        	            switch (alt845)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3123:3: ENGINE_SYMBOL
        	        	    {
        	        	        ENGINE_SYMBOL2981 = (pANTLR3_COMMON_TOKEN) MATCHT(ENGINE_SYMBOL, &FOLLOW_ENGINE_SYMBOL_in_create_table_option15739);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        ENGINE_SYMBOL2981_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ENGINE_SYMBOL2981));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, ENGINE_SYMBOL2981_tree);
        	        	        }

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:3123: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_SYMBOL2982 = (pANTLR3_COMMON_TOKEN) MATCHT(TYPE_SYMBOL, &FOLLOW_TYPE_SYMBOL_in_create_table_option15745);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        TYPE_SYMBOL2982_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TYPE_SYMBOL2982));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, TYPE_SYMBOL2982_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:3123:58: ( EQUAL_OPERATOR )?
        	        {
        	            int alt846=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt846=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt846)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3123:58: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR2983 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option15748);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR2983_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2983));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2983_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_engine_ref_in_create_table_option15751);
        	        engine_ref2984=engine_ref(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, engine_ref2984.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:3124:4: MAX_ROWS_SYMBOL ( EQUAL_OPERATOR )? ulonglong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MAX_ROWS_SYMBOL2985 = (pANTLR3_COMMON_TOKEN) MATCHT(MAX_ROWS_SYMBOL, &FOLLOW_MAX_ROWS_SYMBOL_in_create_table_option15756);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MAX_ROWS_SYMBOL2985_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MAX_ROWS_SYMBOL2985));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MAX_ROWS_SYMBOL2985_tree);
        	        }

        	        // MySQL.g:3124:20: ( EQUAL_OPERATOR )?
        	        {
        	            int alt847=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt847=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt847)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3124:20: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR2986 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option15758);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR2986_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2986));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2986_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_ulonglong_number_in_create_table_option15761);
        	        ulonglong_number2987=ulonglong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulonglong_number2987.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:3125:4: MIN_ROWS_SYMBOL ( EQUAL_OPERATOR )? ulonglong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MIN_ROWS_SYMBOL2988 = (pANTLR3_COMMON_TOKEN) MATCHT(MIN_ROWS_SYMBOL, &FOLLOW_MIN_ROWS_SYMBOL_in_create_table_option15766);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MIN_ROWS_SYMBOL2988_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MIN_ROWS_SYMBOL2988));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MIN_ROWS_SYMBOL2988_tree);
        	        }

        	        // MySQL.g:3125:20: ( EQUAL_OPERATOR )?
        	        {
        	            int alt848=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt848=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt848)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3125:20: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR2989 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option15768);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR2989_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2989));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2989_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_ulonglong_number_in_create_table_option15771);
        	        ulonglong_number2990=ulonglong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulonglong_number2990.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:3126:4: AVG_ROW_LENGTH_SYMBOL ( EQUAL_OPERATOR )? ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        AVG_ROW_LENGTH_SYMBOL2991 = (pANTLR3_COMMON_TOKEN) MATCHT(AVG_ROW_LENGTH_SYMBOL, &FOLLOW_AVG_ROW_LENGTH_SYMBOL_in_create_table_option15776);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        AVG_ROW_LENGTH_SYMBOL2991_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AVG_ROW_LENGTH_SYMBOL2991));
        	        ADAPTOR->addChild(ADAPTOR, root_0, AVG_ROW_LENGTH_SYMBOL2991_tree);
        	        }

        	        // MySQL.g:3126:26: ( EQUAL_OPERATOR )?
        	        {
        	            int alt849=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt849=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt849)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3126:26: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR2992 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option15778);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR2992_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2992));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2992_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_ulong_number_in_create_table_option15781);
        	        ulong_number2993=ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number2993.tree);

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:3127:4: PASSWORD_SYMBOL ( EQUAL_OPERATOR )? text_string
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        PASSWORD_SYMBOL2994 = (pANTLR3_COMMON_TOKEN) MATCHT(PASSWORD_SYMBOL, &FOLLOW_PASSWORD_SYMBOL_in_create_table_option15786);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PASSWORD_SYMBOL2994_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PASSWORD_SYMBOL2994));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PASSWORD_SYMBOL2994_tree);
        	        }

        	        // MySQL.g:3127:20: ( EQUAL_OPERATOR )?
        	        {
        	            int alt850=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt850=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt850)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3127:20: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR2995 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option15788);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR2995_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2995));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2995_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_in_create_table_option15791);
        	        text_string2996=text_string(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string2996.tree);

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:3128:4: COMMENT_SYMBOL ( EQUAL_OPERATOR )? text_string
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        COMMENT_SYMBOL2997 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMENT_SYMBOL, &FOLLOW_COMMENT_SYMBOL_in_create_table_option15796);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMENT_SYMBOL2997_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMENT_SYMBOL2997));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMENT_SYMBOL2997_tree);
        	        }

        	        // MySQL.g:3128:19: ( EQUAL_OPERATOR )?
        	        {
        	            int alt851=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt851=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt851)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3128:19: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR2998 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option15798);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR2998_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2998));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2998_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_in_create_table_option15801);
        	        text_string2999=text_string(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string2999.tree);

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:3129:4: COMPRESSION_SYMBOL ( EQUAL_OPERATOR )? text_string
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        COMPRESSION_SYMBOL3000 = (pANTLR3_COMMON_TOKEN) MATCHT(COMPRESSION_SYMBOL, &FOLLOW_COMPRESSION_SYMBOL_in_create_table_option15806);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMPRESSION_SYMBOL3000_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMPRESSION_SYMBOL3000));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMPRESSION_SYMBOL3000_tree);
        	        }

        	        // MySQL.g:3129:23: ( EQUAL_OPERATOR )?
        	        {
        	            int alt852=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt852=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt852)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3129:23: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR3001 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option15808);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR3001_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR3001));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR3001_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_in_create_table_option15811);
        	        text_string3002=text_string(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string3002.tree);

        	    }
        	    break;
        	case 8:
        	    // MySQL.g:3130:4: AUTO_INCREMENT_SYMBOL ( EQUAL_OPERATOR )? ulonglong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        AUTO_INCREMENT_SYMBOL3003 = (pANTLR3_COMMON_TOKEN) MATCHT(AUTO_INCREMENT_SYMBOL, &FOLLOW_AUTO_INCREMENT_SYMBOL_in_create_table_option15816);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        AUTO_INCREMENT_SYMBOL3003_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AUTO_INCREMENT_SYMBOL3003));
        	        ADAPTOR->addChild(ADAPTOR, root_0, AUTO_INCREMENT_SYMBOL3003_tree);
        	        }

        	        // MySQL.g:3130:26: ( EQUAL_OPERATOR )?
        	        {
        	            int alt853=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt853=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt853)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3130:26: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR3004 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option15818);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR3004_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR3004));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR3004_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_ulonglong_number_in_create_table_option15821);
        	        ulonglong_number3005=ulonglong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulonglong_number3005.tree);

        	    }
        	    break;
        	case 9:
        	    // MySQL.g:3131:4: PACK_KEYS_SYMBOL ( EQUAL_OPERATOR )? ( ulong_number | DEFAULT_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        PACK_KEYS_SYMBOL3006 = (pANTLR3_COMMON_TOKEN) MATCHT(PACK_KEYS_SYMBOL, &FOLLOW_PACK_KEYS_SYMBOL_in_create_table_option15826);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PACK_KEYS_SYMBOL3006_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PACK_KEYS_SYMBOL3006));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PACK_KEYS_SYMBOL3006_tree);
        	        }

        	        // MySQL.g:3131:21: ( EQUAL_OPERATOR )?
        	        {
        	            int alt854=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt854=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt854)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3131:21: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR3007 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option15828);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR3007_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR3007));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR3007_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:3131:37: ( ulong_number | DEFAULT_SYMBOL )
        	        {
        	            int alt855=2;
        	            switch ( LA(1) )
        	            {
        	            case DECIMAL_NUMBER:
        	            case FLOAT_NUMBER:
        	            case HEX_NUMBER:
        	            case INT_NUMBER:
        	            case LONG_NUMBER:
        	            case ULONGLONG_NUMBER:
        	            	{
        	            		alt855=1;
        	            	}
        	                break;
        	            case DEFAULT_SYMBOL:
        	            	{
        	            		alt855=2;
        	            	}
        	                break;

        	            default:
        	                if (BACKTRACKING>0)
        	                {
        	                    FAILEDFLAG = ANTLR3_TRUE;
        	                    return retval;
        	                }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                EXCEPTION->message      = (void *)"";
        	                EXCEPTION->decisionNum  = 855;
        	                EXCEPTION->state        = 0;


        	                goto rulecreate_table_optionEx;

        	            }

        	            switch (alt855)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3131:38: ulong_number
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_ulong_number_in_create_table_option15832);
        	        	        ulong_number3008=ulong_number(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number3008.tree);

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:3131:53: DEFAULT_SYMBOL
        	        	    {
        	        	        DEFAULT_SYMBOL3009 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_create_table_option15836);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        DEFAULT_SYMBOL3009_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL3009));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL3009_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 10:
        	    // MySQL.g:3132: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";


        	        }

        	        set3010=(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, set3010))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>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:3133:3: ( EQUAL_OPERATOR )?
        	        {
        	            int alt856=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt856=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt856)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3133:3: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR3011 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option15858);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR3011_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR3011));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR3011_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:3133:19: ( ulong_number | DEFAULT_SYMBOL )
        	        {
        	            int alt857=2;
        	            switch ( LA(1) )
        	            {
        	            case DECIMAL_NUMBER:
        	            case FLOAT_NUMBER:
        	            case HEX_NUMBER:
        	            case INT_NUMBER:
        	            case LONG_NUMBER:
        	            case ULONGLONG_NUMBER:
        	            	{
        	            		alt857=1;
        	            	}
        	                break;
        	            case DEFAULT_SYMBOL:
        	            	{
        	            		alt857=2;
        	            	}
        	                break;

        	            default:
        	                if (BACKTRACKING>0)
        	                {
        	                    FAILEDFLAG = ANTLR3_TRUE;
        	                    return retval;
        	                }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                EXCEPTION->message      = (void *)"";
        	                EXCEPTION->decisionNum  = 857;
        	                EXCEPTION->state        = 0;


        	                goto rulecreate_table_optionEx;

        	            }

        	            switch (alt857)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3133:20: ulong_number
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_ulong_number_in_create_table_option15862);
        	        	        ulong_number3012=ulong_number(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number3012.tree);

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:3133:35: DEFAULT_SYMBOL
        	        	    {
        	        	        DEFAULT_SYMBOL3013 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_create_table_option15866);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        DEFAULT_SYMBOL3013_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL3013));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL3013_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 11:
        	    // MySQL.g:3134:4: ( CHECKSUM_SYMBOL | TABLE_CHECKSUM_SYMBOL ) ( EQUAL_OPERATOR )? ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        set3014=(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, set3014))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>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:3134:46: ( EQUAL_OPERATOR )?
        	        {
        	            int alt858=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt858=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt858)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3134:46: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR3015 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option15880);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR3015_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR3015));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR3015_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_ulong_number_in_create_table_option15883);
        	        ulong_number3016=ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number3016.tree);

        	    }
        	    break;
        	case 12:
        	    // MySQL.g:3135:4: DELAY_KEY_WRITE_SYMBOL ( EQUAL_OPERATOR )? ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DELAY_KEY_WRITE_SYMBOL3017 = (pANTLR3_COMMON_TOKEN) MATCHT(DELAY_KEY_WRITE_SYMBOL, &FOLLOW_DELAY_KEY_WRITE_SYMBOL_in_create_table_option15888);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DELAY_KEY_WRITE_SYMBOL3017_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DELAY_KEY_WRITE_SYMBOL3017));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DELAY_KEY_WRITE_SYMBOL3017_tree);
        	        }

        	        // MySQL.g:3135:27: ( EQUAL_OPERATOR )?
        	        {
        	            int alt859=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt859=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt859)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3135:27: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR3018 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option15890);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR3018_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR3018));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR3018_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_ulong_number_in_create_table_option15893);
        	        ulong_number3019=ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number3019.tree);

        	    }
        	    break;
        	case 13:
        	    // MySQL.g:3136: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_SYMBOL3020 = (pANTLR3_COMMON_TOKEN) MATCHT(ROW_FORMAT_SYMBOL, &FOLLOW_ROW_FORMAT_SYMBOL_in_create_table_option15898);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ROW_FORMAT_SYMBOL3020_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ROW_FORMAT_SYMBOL3020));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ROW_FORMAT_SYMBOL3020_tree);
        	        }

        	        // MySQL.g:3136:22: ( EQUAL_OPERATOR )?
        	        {
        	            int alt860=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt860=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt860)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3136:22: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR3021 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option15900);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR3021_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR3021));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR3021_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        set3022=(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, set3022))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>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:3137:4: UNION_SYMBOL ^ ( EQUAL_OPERATOR )? OPEN_PAR_SYMBOL table_ref_list CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        UNION_SYMBOL3023 = (pANTLR3_COMMON_TOKEN) MATCHT(UNION_SYMBOL, &FOLLOW_UNION_SYMBOL_in_create_table_option15930);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        UNION_SYMBOL3023_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNION_SYMBOL3023))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, UNION_SYMBOL3023_tree, root_0));
        	        }

        	        // MySQL.g:3137:18: ( EQUAL_OPERATOR )?
        	        {
        	            int alt861=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt861=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt861)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3137:18: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR3024 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option15933);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR3024_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR3024));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR3024_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        OPEN_PAR_SYMBOL3025 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_create_table_option15936);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL3025_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL3025));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL3025_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_table_ref_list_in_create_table_option15938);
        	        table_ref_list3026=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_list3026.tree);

        	        CLOSE_PAR_SYMBOL3027 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_create_table_option15940);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL3027_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL3027));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL3027_tree);
        	        }

        	    }
        	    break;
        	case 15:
        	    // MySQL.g:3138: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:3138:4: ( DEFAULT_SYMBOL )?
        	        {
        	            int alt862=2;
        	            switch ( LA(1) )
        	            {
        	                case DEFAULT_SYMBOL:
        	                	{
        	                		alt862=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt862)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3138:4: DEFAULT_SYMBOL
        	        	    {
        	        	        DEFAULT_SYMBOL3028 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_create_table_option15945);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        DEFAULT_SYMBOL3028_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL3028));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL3028_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:3139:3: ( COLLATE_SYMBOL ( EQUAL_OPERATOR )? collation_name_or_default | charset ( EQUAL_OPERATOR )? charset_name_or_default )
        	        {
        	            int alt865=2;
        	            switch ( LA(1) )
        	            {
        	            case COLLATE_SYMBOL:
        	            	{
        	            		alt865=1;
        	            	}
        	                break;
        	            case CHARSET_SYMBOL:
        	            case CHAR_SYMBOL:
        	            	{
        	            		alt865=2;
        	            	}
        	                break;

        	            default:
        	                if (BACKTRACKING>0)
        	                {
        	                    FAILEDFLAG = ANTLR3_TRUE;
        	                    return retval;
        	                }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                EXCEPTION->message      = (void *)"";
        	                EXCEPTION->decisionNum  = 865;
        	                EXCEPTION->state        = 0;


        	                goto rulecreate_table_optionEx;

        	            }

        	            switch (alt865)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3140:4: COLLATE_SYMBOL ( EQUAL_OPERATOR )? collation_name_or_default
        	        	    {
        	        	        COLLATE_SYMBOL3029 = (pANTLR3_COMMON_TOKEN) MATCHT(COLLATE_SYMBOL, &FOLLOW_COLLATE_SYMBOL_in_create_table_option15955);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        COLLATE_SYMBOL3029_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COLLATE_SYMBOL3029));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COLLATE_SYMBOL3029_tree);
        	        	        }

        	        	        // MySQL.g:3140:19: ( EQUAL_OPERATOR )?
        	        	        {
        	        	            int alt863=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	                case EQUAL_OPERATOR:
        	        	                	{
        	        	                		alt863=1;
        	        	                	}
        	        	                    break;
        	        	            }

        	        	            switch (alt863)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:3140:19: EQUAL_OPERATOR
        	        	        	    {
        	        	        	        EQUAL_OPERATOR3030 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option15957);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulecreate_table_optionEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        EQUAL_OPERATOR3030_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR3030));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR3030_tree);
        	        	        	        }

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_collation_name_or_default_in_create_table_option15960);
        	        	        collation_name_or_default3031=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_default3031.tree);

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:3141:6: charset ( EQUAL_OPERATOR )? charset_name_or_default
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_charset_in_create_table_option15967);
        	        	        charset3032=charset(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset3032.tree);

        	        	        // MySQL.g:3141:14: ( EQUAL_OPERATOR )?
        	        	        {
        	        	            int alt864=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	                case EQUAL_OPERATOR:
        	        	                	{
        	        	                		alt864=1;
        	        	                	}
        	        	                    break;
        	        	            }

        	        	            switch (alt864)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:3141:14: EQUAL_OPERATOR
        	        	        	    {
        	        	        	        EQUAL_OPERATOR3033 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option15969);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulecreate_table_optionEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        EQUAL_OPERATOR3033_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR3033));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR3033_tree);
        	        	        	        }

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_charset_name_or_default_in_create_table_option15972);
        	        	        charset_name_or_default3034=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_default3034.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 16:
        	    // MySQL.g:3144:4: INSERT_METHOD_SYMBOL ( EQUAL_OPERATOR )? ( NO_SYMBOL | FIRST_SYMBOL | LAST_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        INSERT_METHOD_SYMBOL3035 = (pANTLR3_COMMON_TOKEN) MATCHT(INSERT_METHOD_SYMBOL, &FOLLOW_INSERT_METHOD_SYMBOL_in_create_table_option15982);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INSERT_METHOD_SYMBOL3035_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INSERT_METHOD_SYMBOL3035));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INSERT_METHOD_SYMBOL3035_tree);
        	        }

        	        // MySQL.g:3144:25: ( EQUAL_OPERATOR )?
        	        {
        	            int alt866=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt866=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt866)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3144:25: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR3036 = (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_OPERATOR3036_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR3036));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR3036_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        set3037=(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, set3037))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>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:3145:4: DATA_SYMBOL DIRECTORY_SYMBOL ( EQUAL_OPERATOR )? text_string
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DATA_SYMBOL3038 = (pANTLR3_COMMON_TOKEN) MATCHT(DATA_SYMBOL, &FOLLOW_DATA_SYMBOL_in_create_table_option16002);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DATA_SYMBOL3038_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATA_SYMBOL3038));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DATA_SYMBOL3038_tree);
        	        }

        	        DIRECTORY_SYMBOL3039 = (pANTLR3_COMMON_TOKEN) MATCHT(DIRECTORY_SYMBOL, &FOLLOW_DIRECTORY_SYMBOL_in_create_table_option16004);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DIRECTORY_SYMBOL3039_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DIRECTORY_SYMBOL3039));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DIRECTORY_SYMBOL3039_tree);
        	        }

        	        // MySQL.g:3145:33: ( EQUAL_OPERATOR )?
        	        {
        	            int alt867=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt867=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt867)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3145:33: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR3040 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option16006);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR3040_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR3040));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR3040_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_in_create_table_option16009);
        	        text_string3041=text_string(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string3041.tree);

        	    }
        	    break;
        	case 18:
        	    // MySQL.g:3146:4: INDEX_SYMBOL DIRECTORY_SYMBOL ( EQUAL_OPERATOR )? text_string
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        INDEX_SYMBOL3042 = (pANTLR3_COMMON_TOKEN) MATCHT(INDEX_SYMBOL, &FOLLOW_INDEX_SYMBOL_in_create_table_option16014);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INDEX_SYMBOL3042_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INDEX_SYMBOL3042));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INDEX_SYMBOL3042_tree);
        	        }

        	        DIRECTORY_SYMBOL3043 = (pANTLR3_COMMON_TOKEN) MATCHT(DIRECTORY_SYMBOL, &FOLLOW_DIRECTORY_SYMBOL_in_create_table_option16016);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DIRECTORY_SYMBOL3043_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DIRECTORY_SYMBOL3043));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DIRECTORY_SYMBOL3043_tree);
        	        }

        	        // MySQL.g:3146:34: ( EQUAL_OPERATOR )?
        	        {
        	            int alt868=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt868=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt868)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3146:34: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR3044 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option16018);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR3044_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR3044));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR3044_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_in_create_table_option16021);
        	        text_string3045=text_string(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string3045.tree);

        	    }
        	    break;
        	case 19:
        	    // MySQL.g:3147:4: TABLESPACE_SYMBOL ({...}? ( EQUAL_OPERATOR )? |) identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        TABLESPACE_SYMBOL3046 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLESPACE_SYMBOL, &FOLLOW_TABLESPACE_SYMBOL_in_create_table_option16026);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TABLESPACE_SYMBOL3046_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLESPACE_SYMBOL3046));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TABLESPACE_SYMBOL3046_tree);
        	        }

        	        // MySQL.g:3147:22: ({...}? ( EQUAL_OPERATOR )? |)
        	        {
        	            int alt870=2;
        	            {
        	                int LA870_0 = LA(1);
        	                if ( (LA870_0 == EQUAL_OPERATOR))
        	                {
        	                    alt870=1;
        	                }
        	                else if ( (LA870_0 == IDENTIFIER))
        	                {
        	                    {
        	                        int LA870_2 = LA(2);
        	                        if ( ((SERVER_VERSION >= 50707)))
        	                        {
        	                            alt870=1;
        	                        }
        	                        else if ( (ANTLR3_TRUE))
        	                        {
        	                            alt870=2;
        	                        }
        	                        else
        	                        {
        	                            if (BACKTRACKING>0)
        	                            {
        	                                FAILEDFLAG = ANTLR3_TRUE;
        	                                return retval;
        	                            }


        	                            CONSTRUCTEX();
        	                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                            EXCEPTION->message      = (void *)"";
        	                            EXCEPTION->decisionNum  = 870;
        	                            EXCEPTION->state        = 2;


        	                            goto rulecreate_table_optionEx;

        	                        }
        	                    }
        	                }
        	                else if ( (LA870_0 == BACK_TICK_QUOTED_ID))
        	                {
        	                    {
        	                        int LA870_3 = LA(2);
        	                        if ( ((SERVER_VERSION >= 50707)))
        	                        {
        	                            alt870=1;
        	                        }
        	                        else if ( (ANTLR3_TRUE))
        	                        {
        	                            alt870=2;
        	                        }
        	                        else
        	                        {
        	                            if (BACKTRACKING>0)
        	                            {
        	                                FAILEDFLAG = ANTLR3_TRUE;
        	                                return retval;
        	                            }


        	                            CONSTRUCTEX();
        	                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                            EXCEPTION->message      = (void *)"";
        	                            EXCEPTION->decisionNum  = 870;
        	                            EXCEPTION->state        = 3;


        	                            goto rulecreate_table_optionEx;

        	                        }
        	                    }
        	                }
        	                else if ( (LA870_0 == DOUBLE_QUOTED_TEXT))
        	                {
        	                    {
        	                        int LA870_4 = LA(2);
        	                        if ( (( (( ((SERVER_VERSION >= 50707)) && ((SERVER_VERSION >= 50707)) )) && ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) )))
        	                        {
        	                            alt870=1;
        	                        }
        	                        else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))
        	                        {
        	                            alt870=2;
        	                        }
        	                        else
        	                        {
        	                            if (BACKTRACKING>0)
        	                            {
        	                                FAILEDFLAG = ANTLR3_TRUE;
        	                                return retval;
        	                            }


        	                            CONSTRUCTEX();
        	                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                            EXCEPTION->message      = (void *)"";
        	                            EXCEPTION->decisionNum  = 870;
        	                            EXCEPTION->state        = 4;


        	                            goto rulecreate_table_optionEx;

        	                        }
        	                    }
        	                }
        	                else if ( (((LA870_0 >= ACTION_SYMBOL) && (LA870_0 <= SHARE_SYMBOL)) || ((LA870_0 >= SLOW_SYMBOL) && (LA870_0 <= YEAR_SYMBOL))))
        	                {
        	                    {
        	                        int LA870_5 = LA(2);
        	                        if ( ((SERVER_VERSION >= 50707)))
        	                        {
        	                            alt870=1;
        	                        }
        	                        else if ( (ANTLR3_TRUE))
        	                        {
        	                            alt870=2;
        	                        }
        	                        else
        	                        {
        	                            if (BACKTRACKING>0)
        	                            {
        	                                FAILEDFLAG = ANTLR3_TRUE;
        	                                return retval;
        	                            }


        	                            CONSTRUCTEX();
        	                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                            EXCEPTION->message      = (void *)"";
        	                            EXCEPTION->decisionNum  = 870;
        	                            EXCEPTION->state        = 5;


        	                            goto rulecreate_table_optionEx;

        	                        }
        	                    }
        	                }
        	                else if ( (((LA870_0 >= ACCOUNT_SYMBOL) && (LA870_0 <= XA_SYMBOL)) || LA870_0 == SHUTDOWN_SYMBOL))
        	                {
        	                    {
        	                        int LA870_6 = LA(2);
        	                        if ( ((SERVER_VERSION >= 50707)))
        	                        {
        	                            alt870=1;
        	                        }
        	                        else if ( (ANTLR3_TRUE))
        	                        {
        	                            alt870=2;
        	                        }
        	                        else
        	                        {
        	                            if (BACKTRACKING>0)
        	                            {
        	                                FAILEDFLAG = ANTLR3_TRUE;
        	                                return retval;
        	                            }


        	                            CONSTRUCTEX();
        	                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                            EXCEPTION->message      = (void *)"";
        	                            EXCEPTION->decisionNum  = 870;
        	                            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  = 870;
        	                    EXCEPTION->state        = 0;


        	                    goto rulecreate_table_optionEx;

        	                }
        	            }
        	            switch (alt870)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3147: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:3147:50: ( EQUAL_OPERATOR )?
        	        	        {
        	        	            int alt869=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	                case EQUAL_OPERATOR:
        	        	                	{
        	        	                		alt869=1;
        	        	                	}
        	        	                    break;
        	        	            }

        	        	            switch (alt869)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:3147:50: EQUAL_OPERATOR
        	        	        	    {
        	        	        	        EQUAL_OPERATOR3047 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option16031);
        	        	        	        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;

        	        	            }
        	        	        }

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:3147:80: 
        	        	    {
        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_identifier_in_create_table_option16040);
        	        identifier3048=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier3048.tree);

        	    }
        	    break;
        	case 20:
        	    // MySQL.g:3148:4: STORAGE_SYMBOL ( DISK_SYMBOL | MEMORY_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        STORAGE_SYMBOL3049 = (pANTLR3_COMMON_TOKEN) MATCHT(STORAGE_SYMBOL, &FOLLOW_STORAGE_SYMBOL_in_create_table_option16045);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        STORAGE_SYMBOL3049_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STORAGE_SYMBOL3049));
        	        ADAPTOR->addChild(ADAPTOR, root_0, STORAGE_SYMBOL3049_tree);
        	        }

        	        set3050=(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, set3050))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>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:3149:4: CONNECTION_SYMBOL ( EQUAL_OPERATOR )? text_string
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CONNECTION_SYMBOL3051 = (pANTLR3_COMMON_TOKEN) MATCHT(CONNECTION_SYMBOL, &FOLLOW_CONNECTION_SYMBOL_in_create_table_option16058);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CONNECTION_SYMBOL3051_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CONNECTION_SYMBOL3051));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CONNECTION_SYMBOL3051_tree);
        	        }

        	        // MySQL.g:3149:22: ( EQUAL_OPERATOR )?
        	        {
        	            int alt871=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt871=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt871)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3149:22: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR3052 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option16060);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR3052_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR3052));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR3052_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_in_create_table_option16063);
        	        text_string3053=text_string(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string3053.tree);

        	    }
        	    break;
        	case 22:
        	    // MySQL.g:3150:4: KEY_BLOCK_SIZE_SYMBOL ( EQUAL_OPERATOR )? ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        KEY_BLOCK_SIZE_SYMBOL3054 = (pANTLR3_COMMON_TOKEN) MATCHT(KEY_BLOCK_SIZE_SYMBOL, &FOLLOW_KEY_BLOCK_SIZE_SYMBOL_in_create_table_option16068);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        KEY_BLOCK_SIZE_SYMBOL3054_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, KEY_BLOCK_SIZE_SYMBOL3054));
        	        ADAPTOR->addChild(ADAPTOR, root_0, KEY_BLOCK_SIZE_SYMBOL3054_tree);
        	        }

        	        // MySQL.g:3150:26: ( EQUAL_OPERATOR )?
        	        {
        	            int alt872=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt872=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt872)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3150:26: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR3055 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option16070);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR3055_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR3055));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR3055_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_ulong_number_in_create_table_option16073);
        	        ulong_number3056=ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number3056.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:3154: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_SYMBOL3057;
    pANTLR3_COMMON_TOKEN    BY_SYMBOL3058;
    pANTLR3_COMMON_TOKEN    LINEAR_SYMBOL3059;
    pANTLR3_COMMON_TOKEN    HASH_SYMBOL3060;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL3061;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL3063;
    pANTLR3_COMMON_TOKEN    LINEAR_SYMBOL3064;
    pANTLR3_COMMON_TOKEN    KEY_SYMBOL3065;
    pANTLR3_COMMON_TOKEN    set3068;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL3069;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL3071;
    pANTLR3_COMMON_TOKEN    COLUMNS_SYMBOL3072;
    pANTLR3_COMMON_TOKEN    PARTITIONS_SYMBOL3074;
    pANTLR3_COMMON_TOKEN    SUBPARTITION_SYMBOL3076;
    pANTLR3_COMMON_TOKEN    BY_SYMBOL3077;
    pANTLR3_COMMON_TOKEN    LINEAR_SYMBOL3078;
    pANTLR3_COMMON_TOKEN    HASH_SYMBOL3079;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL3080;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL3082;
    pANTLR3_COMMON_TOKEN    KEY_SYMBOL3083;
    pANTLR3_COMMON_TOKEN    SUBPARTITIONS_SYMBOL3086;
    MySQLParser_expression_return expression3062;
    #undef	RETURN_TYPE_expression3062
    #define	RETURN_TYPE_expression3062 MySQLParser_expression_return

    MySQLParser_partition_key_algorithm_return partition_key_algorithm3066;
    #undef	RETURN_TYPE_partition_key_algorithm3066
    #define	RETURN_TYPE_partition_key_algorithm3066 MySQLParser_partition_key_algorithm_return

    MySQLParser_identifier_list_with_parentheses_return identifier_list_with_parentheses3067;
    #undef	RETURN_TYPE_identifier_list_with_parentheses3067
    #define	RETURN_TYPE_identifier_list_with_parentheses3067 MySQLParser_identifier_list_with_parentheses_return

    MySQLParser_expression_return expression3070;
    #undef	RETURN_TYPE_expression3070
    #define	RETURN_TYPE_expression3070 MySQLParser_expression_return

    MySQLParser_identifier_list_with_parentheses_return identifier_list_with_parentheses3073;
    #undef	RETURN_TYPE_identifier_list_with_parentheses3073
    #define	RETURN_TYPE_identifier_list_with_parentheses3073 MySQLParser_identifier_list_with_parentheses_return

    MySQLParser_real_ulong_number_return real_ulong_number3075;
    #undef	RETURN_TYPE_real_ulong_number3075
    #define	RETURN_TYPE_real_ulong_number3075 MySQLParser_real_ulong_number_return

    MySQLParser_bitwise_or_expression_return bitwise_or_expression3081;
    #undef	RETURN_TYPE_bitwise_or_expression3081
    #define	RETURN_TYPE_bitwise_or_expression3081 MySQLParser_bitwise_or_expression_return

    MySQLParser_partition_key_algorithm_return partition_key_algorithm3084;
    #undef	RETURN_TYPE_partition_key_algorithm3084
    #define	RETURN_TYPE_partition_key_algorithm3084 MySQLParser_partition_key_algorithm_return

    MySQLParser_identifier_list_with_parentheses_return identifier_list_with_parentheses3085;
    #undef	RETURN_TYPE_identifier_list_with_parentheses3085
    #define	RETURN_TYPE_identifier_list_with_parentheses3085 MySQLParser_identifier_list_with_parentheses_return

    MySQLParser_real_ulong_number_return real_ulong_number3087;
    #undef	RETURN_TYPE_real_ulong_number3087
    #define	RETURN_TYPE_real_ulong_number3087 MySQLParser_real_ulong_number_return

    MySQLParser_partition_definitions_return partition_definitions3088;
    #undef	RETURN_TYPE_partition_definitions3088
    #define	RETURN_TYPE_partition_definitions3088 MySQLParser_partition_definitions_return

    pANTLR3_BASE_TREE PARTITION_SYMBOL3057_tree;
    pANTLR3_BASE_TREE BY_SYMBOL3058_tree;
    pANTLR3_BASE_TREE LINEAR_SYMBOL3059_tree;
    pANTLR3_BASE_TREE HASH_SYMBOL3060_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL3061_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL3063_tree;
    pANTLR3_BASE_TREE LINEAR_SYMBOL3064_tree;
    pANTLR3_BASE_TREE KEY_SYMBOL3065_tree;
    pANTLR3_BASE_TREE set3068_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL3069_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL3071_tree;
    pANTLR3_BASE_TREE COLUMNS_SYMBOL3072_tree;
    pANTLR3_BASE_TREE PARTITIONS_SYMBOL3074_tree;
    pANTLR3_BASE_TREE SUBPARTITION_SYMBOL3076_tree;
    pANTLR3_BASE_TREE BY_SYMBOL3077_tree;
    pANTLR3_BASE_TREE LINEAR_SYMBOL3078_tree;
    pANTLR3_BASE_TREE HASH_SYMBOL3079_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL3080_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL3082_tree;
    pANTLR3_BASE_TREE KEY_SYMBOL3083_tree;
    pANTLR3_BASE_TREE SUBPARTITIONS_SYMBOL3086_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    PARTITION_SYMBOL3057       = NULL;
    BY_SYMBOL3058       = NULL;
    LINEAR_SYMBOL3059       = NULL;
    HASH_SYMBOL3060       = NULL;
    OPEN_PAR_SYMBOL3061       = NULL;
    CLOSE_PAR_SYMBOL3063       = NULL;
    LINEAR_SYMBOL3064       = NULL;
    KEY_SYMBOL3065       = NULL;
    set3068       = NULL;
    OPEN_PAR_SYMBOL3069       = NULL;
    CLOSE_PAR_SYMBOL3071       = NULL;
    COLUMNS_SYMBOL3072       = NULL;
    PARTITIONS_SYMBOL3074       = NULL;
    SUBPARTITION_SYMBOL3076       = NULL;
    BY_SYMBOL3077       = NULL;
    LINEAR_SYMBOL3078       = NULL;
    HASH_SYMBOL3079       = NULL;
    OPEN_PAR_SYMBOL3080       = NULL;
    CLOSE_PAR_SYMBOL3082       = NULL;
    KEY_SYMBOL3083       = NULL;
    SUBPARTITIONS_SYMBOL3086       = NULL;
    expression3062.tree = NULL;

    partition_key_algorithm3066.tree = NULL;

    identifier_list_with_parentheses3067.tree = NULL;

    expression3070.tree = NULL;

    identifier_list_with_parentheses3073.tree = NULL;

    real_ulong_number3075.tree = NULL;

    bitwise_or_expression3081.tree = NULL;

    partition_key_algorithm3084.tree = NULL;

    identifier_list_with_parentheses3085.tree = NULL;

    real_ulong_number3087.tree = NULL;

    partition_definitions3088.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    PARTITION_SYMBOL3057_tree   = NULL;
    BY_SYMBOL3058_tree   = NULL;
    LINEAR_SYMBOL3059_tree   = NULL;
    HASH_SYMBOL3060_tree   = NULL;
    OPEN_PAR_SYMBOL3061_tree   = NULL;
    CLOSE_PAR_SYMBOL3063_tree   = NULL;
    LINEAR_SYMBOL3064_tree   = NULL;
    KEY_SYMBOL3065_tree   = NULL;
    set3068_tree   = NULL;
    OPEN_PAR_SYMBOL3069_tree   = NULL;
    CLOSE_PAR_SYMBOL3071_tree   = NULL;
    COLUMNS_SYMBOL3072_tree   = NULL;
    PARTITIONS_SYMBOL3074_tree   = NULL;
    SUBPARTITION_SYMBOL3076_tree   = NULL;
    BY_SYMBOL3077_tree   = NULL;
    LINEAR_SYMBOL3078_tree   = NULL;
    HASH_SYMBOL3079_tree   = NULL;
    OPEN_PAR_SYMBOL3080_tree   = NULL;
    CLOSE_PAR_SYMBOL3082_tree   = NULL;
    KEY_SYMBOL3083_tree   = NULL;
    SUBPARTITIONS_SYMBOL3086_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3154: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:3155: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_SYMBOL3057 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITION_SYMBOL, &FOLLOW_PARTITION_SYMBOL_in_partitioning16085);
            if  (HASEXCEPTION())
            {
                goto rulepartitioningEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            PARTITION_SYMBOL3057_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARTITION_SYMBOL3057))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, PARTITION_SYMBOL3057_tree, root_0));
            }

            BY_SYMBOL3058 = (pANTLR3_COMMON_TOKEN) MATCHT(BY_SYMBOL, &FOLLOW_BY_SYMBOL_in_partitioning16088);
            if  (HASEXCEPTION())
            {
                goto rulepartitioningEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            BY_SYMBOL3058_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BY_SYMBOL3058));
            ADAPTOR->addChild(ADAPTOR, root_0, BY_SYMBOL3058_tree);
            }

            // MySQL.g:3156: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 alt878=3;
                switch ( LA(1) )
                {
                case LINEAR_SYMBOL:
                	{
                		switch ( LA(2) )
                		{
                		case HASH_SYMBOL:
                			{
                				alt878=1;
                			}
                		    break;
                		case KEY_SYMBOL:
                			{
                				alt878=2;
                			}
                		    break;

                		default:
                		    if (BACKTRACKING>0)
                		    {
                		        FAILEDFLAG = ANTLR3_TRUE;
                		        return retval;
                		    }

                		    CONSTRUCTEX();
                		    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                		    EXCEPTION->message      = (void *)"";
                		    EXCEPTION->decisionNum  = 878;
                		    EXCEPTION->state        = 1;


                		    goto rulepartitioningEx;

                		}

                	}
                    break;
                case HASH_SYMBOL:
                	{
                		alt878=1;
                	}
                    break;
                case KEY_SYMBOL:
                	{
                		alt878=2;
                	}
                    break;
                case LIST_SYMBOL:
                case RANGE_SYMBOL:
                	{
                		alt878=3;
                	}
                    break;

                default:
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }

                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 878;
                    EXCEPTION->state        = 0;


                    goto rulepartitioningEx;

                }

                switch (alt878)
                {
            	case 1:
            	    // MySQL.g:3157:3: ( LINEAR_SYMBOL )? HASH_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
            	    {
            	        // MySQL.g:3157:3: ( LINEAR_SYMBOL )?
            	        {
            	            int alt874=2;
            	            switch ( LA(1) )
            	            {
            	                case LINEAR_SYMBOL:
            	                	{
            	                		alt874=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt874)
            	            {
            	        	case 1:
            	        	    // MySQL.g:3157:3: LINEAR_SYMBOL
            	        	    {
            	        	        LINEAR_SYMBOL3059 = (pANTLR3_COMMON_TOKEN) MATCHT(LINEAR_SYMBOL, &FOLLOW_LINEAR_SYMBOL_in_partitioning16095);
            	        	        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;

            	            }
            	        }

            	        HASH_SYMBOL3060 = (pANTLR3_COMMON_TOKEN) MATCHT(HASH_SYMBOL, &FOLLOW_HASH_SYMBOL_in_partitioning16098);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartitioningEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        HASH_SYMBOL3060_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, HASH_SYMBOL3060));
            	        ADAPTOR->addChild(ADAPTOR, root_0, HASH_SYMBOL3060_tree);
            	        }

            	        OPEN_PAR_SYMBOL3061 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_partitioning16100);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartitioningEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OPEN_PAR_SYMBOL3061_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL3061));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL3061_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_expression_in_partitioning16102);
            	        expression3062=expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartitioningEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression3062.tree);

            	        CLOSE_PAR_SYMBOL3063 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_partitioning16104);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartitioningEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CLOSE_PAR_SYMBOL3063_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL3063));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL3063_tree);
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:3158:5: ( LINEAR_SYMBOL )? KEY_SYMBOL ( partition_key_algorithm )? identifier_list_with_parentheses
            	    {
            	        // MySQL.g:3158:5: ( LINEAR_SYMBOL )?
            	        {
            	            int alt875=2;
            	            switch ( LA(1) )
            	            {
            	                case LINEAR_SYMBOL:
            	                	{
            	                		alt875=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt875)
            	            {
            	        	case 1:
            	        	    // MySQL.g:3158:5: LINEAR_SYMBOL
            	        	    {
            	        	        LINEAR_SYMBOL3064 = (pANTLR3_COMMON_TOKEN) MATCHT(LINEAR_SYMBOL, &FOLLOW_LINEAR_SYMBOL_in_partitioning16110);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartitioningEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        LINEAR_SYMBOL3064_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LINEAR_SYMBOL3064));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, LINEAR_SYMBOL3064_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        KEY_SYMBOL3065 = (pANTLR3_COMMON_TOKEN) MATCHT(KEY_SYMBOL, &FOLLOW_KEY_SYMBOL_in_partitioning16113);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartitioningEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        KEY_SYMBOL3065_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, KEY_SYMBOL3065));
            	        ADAPTOR->addChild(ADAPTOR, root_0, KEY_SYMBOL3065_tree);
            	        }

            	        // MySQL.g:3158:31: ( partition_key_algorithm )?
            	        {
            	            int alt876=2;
            	            switch ( LA(1) )
            	            {
            	                case ALGORITHM_SYMBOL:
            	                	{
            	                		alt876=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt876)
            	            {
            	        	case 1:
            	        	    // MySQL.g:3158:31: partition_key_algorithm
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_partition_key_algorithm_in_partitioning16115);
            	        	        partition_key_algorithm3066=partition_key_algorithm(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartitioningEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, partition_key_algorithm3066.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_identifier_list_with_parentheses_in_partitioning16118);
            	        identifier_list_with_parentheses3067=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_parentheses3067.tree);

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:3159:5: ( RANGE_SYMBOL | LIST_SYMBOL ) ( OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL |{...}? COLUMNS_SYMBOL identifier_list_with_parentheses )
            	    {
            	        set3068=(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, set3068))
            	            );
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

            	        }
            	        else
            	        {
            	            if (BACKTRACKING>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:3160:4: ( OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL |{...}? COLUMNS_SYMBOL identifier_list_with_parentheses )
            	        {
            	            int alt877=2;
            	            switch ( LA(1) )
            	            {
            	            case OPEN_PAR_SYMBOL:
            	            	{
            	            		alt877=1;
            	            	}
            	                break;
            	            case COLUMNS_SYMBOL:
            	            	{
            	            		alt877=2;
            	            	}
            	                break;

            	            default:
            	                if (BACKTRACKING>0)
            	                {
            	                    FAILEDFLAG = ANTLR3_TRUE;
            	                    return retval;
            	                }

            	                CONSTRUCTEX();
            	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                EXCEPTION->message      = (void *)"";
            	                EXCEPTION->decisionNum  = 877;
            	                EXCEPTION->state        = 0;


            	                goto rulepartitioningEx;

            	            }

            	            switch (alt877)
            	            {
            	        	case 1:
            	        	    // MySQL.g:3161:5: OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
            	        	    {
            	        	        OPEN_PAR_SYMBOL3069 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_partitioning16142);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartitioningEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        OPEN_PAR_SYMBOL3069_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL3069));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL3069_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_expression_in_partitioning16144);
            	        	        expression3070=expression(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartitioningEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression3070.tree);

            	        	        CLOSE_PAR_SYMBOL3071 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_partitioning16146);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartitioningEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        CLOSE_PAR_SYMBOL3071_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL3071));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL3071_tree);
            	        	        }

            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:3162: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_SYMBOL3072 = (pANTLR3_COMMON_TOKEN) MATCHT(COLUMNS_SYMBOL, &FOLLOW_COLUMNS_SYMBOL_in_partitioning16156);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartitioningEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        COLUMNS_SYMBOL3072_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COLUMNS_SYMBOL3072));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, COLUMNS_SYMBOL3072_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_identifier_list_with_parentheses_in_partitioning16158);
            	        	        identifier_list_with_parentheses3073=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_parentheses3073.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:3165:2: ( PARTITIONS_SYMBOL real_ulong_number )?
            {
                int alt879=2;
                switch ( LA(1) )
                {
                    case PARTITIONS_SYMBOL:
                    	{
                    		alt879=1;
                    	}
                        break;
                }

                switch (alt879)
                {
            	case 1:
            	    // MySQL.g:3165:3: PARTITIONS_SYMBOL real_ulong_number
            	    {
            	        PARTITIONS_SYMBOL3074 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITIONS_SYMBOL, &FOLLOW_PARTITIONS_SYMBOL_in_partitioning16170);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartitioningEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        PARTITIONS_SYMBOL3074_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARTITIONS_SYMBOL3074));
            	        ADAPTOR->addChild(ADAPTOR, root_0, PARTITIONS_SYMBOL3074_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_real_ulong_number_in_partitioning16172);
            	        real_ulong_number3075=real_ulong_number(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartitioningEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, real_ulong_number3075.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:3166: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 alt885=2;
                switch ( LA(1) )
                {
                    case SUBPARTITION_SYMBOL:
                    	{
                    		alt885=1;
                    	}
                        break;
                }

                switch (alt885)
                {
            	case 1:
            	    // MySQL.g:3167: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_SYMBOL3076 = (pANTLR3_COMMON_TOKEN) MATCHT(SUBPARTITION_SYMBOL, &FOLLOW_SUBPARTITION_SYMBOL_in_partitioning16181);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartitioningEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SUBPARTITION_SYMBOL3076_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SUBPARTITION_SYMBOL3076));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SUBPARTITION_SYMBOL3076_tree);
            	        }

            	        BY_SYMBOL3077 = (pANTLR3_COMMON_TOKEN) MATCHT(BY_SYMBOL, &FOLLOW_BY_SYMBOL_in_partitioning16183);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartitioningEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        BY_SYMBOL3077_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BY_SYMBOL3077));
            	        ADAPTOR->addChild(ADAPTOR, root_0, BY_SYMBOL3077_tree);
            	        }

            	        // MySQL.g:3167:33: ( LINEAR_SYMBOL )?
            	        {
            	            int alt880=2;
            	            switch ( LA(1) )
            	            {
            	                case LINEAR_SYMBOL:
            	                	{
            	                		alt880=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt880)
            	            {
            	        	case 1:
            	        	    // MySQL.g:3167:33: LINEAR_SYMBOL
            	        	    {
            	        	        LINEAR_SYMBOL3078 = (pANTLR3_COMMON_TOKEN) MATCHT(LINEAR_SYMBOL, &FOLLOW_LINEAR_SYMBOL_in_partitioning16185);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartitioningEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        LINEAR_SYMBOL3078_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LINEAR_SYMBOL3078));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, LINEAR_SYMBOL3078_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:3168: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 alt884=2;
            	            switch ( LA(1) )
            	            {
            	                case HASH_SYMBOL:
            	                case KEY_SYMBOL:
            	                	{
            	                		alt884=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt884)
            	            {
            	        	case 1:
            	        	    // MySQL.g:3169: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:3169:4: ( HASH_SYMBOL OPEN_PAR_SYMBOL bitwise_or_expression CLOSE_PAR_SYMBOL | KEY_SYMBOL ( partition_key_algorithm )? identifier_list_with_parentheses )
            	        	        {
            	        	            int alt882=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	            case HASH_SYMBOL:
            	        	            	{
            	        	            		alt882=1;
            	        	            	}
            	        	                break;
            	        	            case KEY_SYMBOL:
            	        	            	{
            	        	            		alt882=2;
            	        	            	}
            	        	                break;

            	        	            default:
            	        	                if (BACKTRACKING>0)
            	        	                {
            	        	                    FAILEDFLAG = ANTLR3_TRUE;
            	        	                    return retval;
            	        	                }

            	        	                CONSTRUCTEX();
            	        	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	        	                EXCEPTION->message      = (void *)"";
            	        	                EXCEPTION->decisionNum  = 882;
            	        	                EXCEPTION->state        = 0;


            	        	                goto rulepartitioningEx;

            	        	            }

            	        	            switch (alt882)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:3170:6: HASH_SYMBOL OPEN_PAR_SYMBOL bitwise_or_expression CLOSE_PAR_SYMBOL
            	        	        	    {
            	        	        	        HASH_SYMBOL3079 = (pANTLR3_COMMON_TOKEN) MATCHT(HASH_SYMBOL, &FOLLOW_HASH_SYMBOL_in_partitioning16202);
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulepartitioningEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) {
            	        	        	        HASH_SYMBOL3079_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, HASH_SYMBOL3079));
            	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, HASH_SYMBOL3079_tree);
            	        	        	        }

            	        	        	        OPEN_PAR_SYMBOL3080 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_partitioning16204);
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulepartitioningEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) {
            	        	        	        OPEN_PAR_SYMBOL3080_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL3080));
            	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL3080_tree);
            	        	        	        }

            	        	        	        FOLLOWPUSH(FOLLOW_bitwise_or_expression_in_partitioning16206);
            	        	        	        bitwise_or_expression3081=bitwise_or_expression(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulepartitioningEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, bitwise_or_expression3081.tree);

            	        	        	        CLOSE_PAR_SYMBOL3082 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_partitioning16208);
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulepartitioningEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) {
            	        	        	        CLOSE_PAR_SYMBOL3082_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL3082));
            	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL3082_tree);
            	        	        	        }

            	        	        	    }
            	        	        	    break;
            	        	        	case 2:
            	        	        	    // MySQL.g:3171:7: KEY_SYMBOL ( partition_key_algorithm )? identifier_list_with_parentheses
            	        	        	    {
            	        	        	        KEY_SYMBOL3083 = (pANTLR3_COMMON_TOKEN) MATCHT(KEY_SYMBOL, &FOLLOW_KEY_SYMBOL_in_partitioning16216);
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulepartitioningEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) {
            	        	        	        KEY_SYMBOL3083_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, KEY_SYMBOL3083));
            	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, KEY_SYMBOL3083_tree);
            	        	        	        }

            	        	        	        // MySQL.g:3171:18: ( partition_key_algorithm )?
            	        	        	        {
            	        	        	            int alt881=2;
            	        	        	            switch ( LA(1) )
            	        	        	            {
            	        	        	                case ALGORITHM_SYMBOL:
            	        	        	                	{
            	        	        	                		alt881=1;
            	        	        	                	}
            	        	        	                    break;
            	        	        	            }

            	        	        	            switch (alt881)
            	        	        	            {
            	        	        	        	case 1:
            	        	        	        	    // MySQL.g:3171:18: partition_key_algorithm
            	        	        	        	    {
            	        	        	        	        FOLLOWPUSH(FOLLOW_partition_key_algorithm_in_partitioning16218);
            	        	        	        	        partition_key_algorithm3084=partition_key_algorithm(ctx);

            	        	        	        	        FOLLOWPOP();
            	        	        	        	        if  (HASEXCEPTION())
            	        	        	        	        {
            	        	        	        	            goto rulepartitioningEx;
            	        	        	        	        }
            	        	        	        	        if (HASFAILED())
            	        	        	        	        {
            	        	        	        	            return retval;
            	        	        	        	        }

            	        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, partition_key_algorithm3084.tree);

            	        	        	        	    }
            	        	        	        	    break;

            	        	        	            }
            	        	        	        }

            	        	        	        FOLLOWPUSH(FOLLOW_identifier_list_with_parentheses_in_partitioning16221);
            	        	        	        identifier_list_with_parentheses3085=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_parentheses3085.tree);

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	        // MySQL.g:3173:4: ( SUBPARTITIONS_SYMBOL real_ulong_number )?
            	        	        {
            	        	            int alt883=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case SUBPARTITIONS_SYMBOL:
            	        	                	{
            	        	                		alt883=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt883)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:3173:5: SUBPARTITIONS_SYMBOL real_ulong_number
            	        	        	    {
            	        	        	        SUBPARTITIONS_SYMBOL3086 = (pANTLR3_COMMON_TOKEN) MATCHT(SUBPARTITIONS_SYMBOL, &FOLLOW_SUBPARTITIONS_SYMBOL_in_partitioning16232);
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulepartitioningEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) {
            	        	        	        SUBPARTITIONS_SYMBOL3086_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SUBPARTITIONS_SYMBOL3086));
            	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, SUBPARTITIONS_SYMBOL3086_tree);
            	        	        	        }

            	        	        	        FOLLOWPUSH(FOLLOW_real_ulong_number_in_partitioning16234);
            	        	        	        real_ulong_number3087=real_ulong_number(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulepartitioningEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, real_ulong_number3087.tree);

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:3176:5: ( partition_definitions )?
            {
                int alt886=2;
                switch ( LA(1) )
                {
                    case OPEN_PAR_SYMBOL:
                    	{
                    		switch ( LA(2) )
                    		{
                    		    case PARTITION_SYMBOL:
                    		    	{
                    		    		alt886=1;
                    		    	}
                    		        break;
                    		}

                    	}
                        break;
                }

                switch (alt886)
                {
            	case 1:
            	    // MySQL.g:3176:5: partition_definitions
            	    {
            	        FOLLOWPUSH(FOLLOW_partition_definitions_in_partitioning16254);
            	        partition_definitions3088=partition_definitions(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartitioningEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, partition_definitions3088.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:3179: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_SYMBOL3089;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR3090;
    MySQLParser_real_ulong_number_return real_ulong_number3091;
    #undef	RETURN_TYPE_real_ulong_number3091
    #define	RETURN_TYPE_real_ulong_number3091 MySQLParser_real_ulong_number_return

    pANTLR3_BASE_TREE ALGORITHM_SYMBOL3089_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR3090_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ALGORITHM_SYMBOL3089       = NULL;
    EQUAL_OPERATOR3090       = NULL;
    real_ulong_number3091.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ALGORITHM_SYMBOL3089_tree   = NULL;
    EQUAL_OPERATOR3090_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3179:24: ({...}? ALGORITHM_SYMBOL EQUAL_OPERATOR real_ulong_number )
        // MySQL.g:3180: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_SYMBOL3089 = (pANTLR3_COMMON_TOKEN) MATCHT(ALGORITHM_SYMBOL, &FOLLOW_ALGORITHM_SYMBOL_in_partition_key_algorithm16267);
            if  (HASEXCEPTION())
            {
                goto rulepartition_key_algorithmEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ALGORITHM_SYMBOL3089_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ALGORITHM_SYMBOL3089));
            ADAPTOR->addChild(ADAPTOR, root_0, ALGORITHM_SYMBOL3089_tree);
            }

            EQUAL_OPERATOR3090 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_partition_key_algorithm16269);
            if  (HASEXCEPTION())
            {
                goto rulepartition_key_algorithmEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EQUAL_OPERATOR3090_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR3090));
            ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR3090_tree);
            }

            FOLLOWPUSH(FOLLOW_real_ulong_number_in_partition_key_algorithm16271);
            real_ulong_number3091=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_number3091.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:3183: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_SYMBOL3092;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL3094;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL3096;
    MySQLParser_partition_definition_return partition_definition3093;
    #undef	RETURN_TYPE_partition_definition3093
    #define	RETURN_TYPE_partition_definition3093 MySQLParser_partition_definition_return

    MySQLParser_partition_definition_return partition_definition3095;
    #undef	RETURN_TYPE_partition_definition3095
    #define	RETURN_TYPE_partition_definition3095 MySQLParser_partition_definition_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL3092_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL3094_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL3096_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL3092       = NULL;
    COMMA_SYMBOL3094       = NULL;
    CLOSE_PAR_SYMBOL3096       = NULL;
    partition_definition3093.tree = NULL;

    partition_definition3095.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL3092_tree   = NULL;
    COMMA_SYMBOL3094_tree   = NULL;
    CLOSE_PAR_SYMBOL3096_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3183:22: ( OPEN_PAR_SYMBOL partition_definition ( COMMA_SYMBOL partition_definition )* CLOSE_PAR_SYMBOL )
        // MySQL.g:3184:2: OPEN_PAR_SYMBOL partition_definition ( COMMA_SYMBOL partition_definition )* CLOSE_PAR_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            OPEN_PAR_SYMBOL3092 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_partition_definitions16280);
            if  (HASEXCEPTION())
            {
                goto rulepartition_definitionsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL3092_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL3092));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL3092_tree);
            }

            FOLLOWPUSH(FOLLOW_partition_definition_in_partition_definitions16282);
            partition_definition3093=partition_definition(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulepartition_definitionsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, partition_definition3093.tree);

            // MySQL.g:3184:39: ( COMMA_SYMBOL partition_definition )*

            for (;;)
            {
                int alt887=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt887=1;
                	}
                    break;

                }

                switch (alt887)
                {
            	case 1:
            	    // MySQL.g:3184:40: COMMA_SYMBOL partition_definition
            	    {
            	        COMMA_SYMBOL3094 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_partition_definitions16285);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartition_definitionsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL3094_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL3094));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL3094_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_partition_definition_in_partition_definitions16287);
            	        partition_definition3095=partition_definition(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartition_definitionsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, partition_definition3095.tree);

            	    }
            	    break;

            	default:
            	    goto loop887;	/* break out of the loop */
            	    break;
                }
            }
            loop887: ; /* Jump out to here if this rule does not match */


            CLOSE_PAR_SYMBOL3096 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_partition_definitions16291);
            if  (HASEXCEPTION())
            {
                goto rulepartition_definitionsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL3096_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL3096));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL3096_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:3187: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_SYMBOL3097;
    pANTLR3_COMMON_TOKEN    VALUES_SYMBOL3099;
    pANTLR3_COMMON_TOKEN    LESS_SYMBOL3100;
    pANTLR3_COMMON_TOKEN    THAN_SYMBOL3101;
    pANTLR3_COMMON_TOKEN    MAXVALUE_SYMBOL3103;
    pANTLR3_COMMON_TOKEN    IN_SYMBOL3104;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL3107;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL3109;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL3111;
    MySQLParser_identifier_return identifier3098;
    #undef	RETURN_TYPE_identifier3098
    #define	RETURN_TYPE_identifier3098 MySQLParser_identifier_return

    MySQLParser_partition_value_list_return partition_value_list3102;
    #undef	RETURN_TYPE_partition_value_list3102
    #define	RETURN_TYPE_partition_value_list3102 MySQLParser_partition_value_list_return

    MySQLParser_partition_value_list_return partition_value_list3105;
    #undef	RETURN_TYPE_partition_value_list3105
    #define	RETURN_TYPE_partition_value_list3105 MySQLParser_partition_value_list_return

    MySQLParser_partition_option_return partition_option3106;
    #undef	RETURN_TYPE_partition_option3106
    #define	RETURN_TYPE_partition_option3106 MySQLParser_partition_option_return

    MySQLParser_subpartition_definition_return subpartition_definition3108;
    #undef	RETURN_TYPE_subpartition_definition3108
    #define	RETURN_TYPE_subpartition_definition3108 MySQLParser_subpartition_definition_return

    MySQLParser_subpartition_definition_return subpartition_definition3110;
    #undef	RETURN_TYPE_subpartition_definition3110
    #define	RETURN_TYPE_subpartition_definition3110 MySQLParser_subpartition_definition_return

    pANTLR3_BASE_TREE PARTITION_SYMBOL3097_tree;
    pANTLR3_BASE_TREE VALUES_SYMBOL3099_tree;
    pANTLR3_BASE_TREE LESS_SYMBOL3100_tree;
    pANTLR3_BASE_TREE THAN_SYMBOL3101_tree;
    pANTLR3_BASE_TREE MAXVALUE_SYMBOL3103_tree;
    pANTLR3_BASE_TREE IN_SYMBOL3104_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL3107_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL3109_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL3111_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    PARTITION_SYMBOL3097       = NULL;
    VALUES_SYMBOL3099       = NULL;
    LESS_SYMBOL3100       = NULL;
    THAN_SYMBOL3101       = NULL;
    MAXVALUE_SYMBOL3103       = NULL;
    IN_SYMBOL3104       = NULL;
    OPEN_PAR_SYMBOL3107       = NULL;
    COMMA_SYMBOL3109       = NULL;
    CLOSE_PAR_SYMBOL3111       = NULL;
    identifier3098.tree = NULL;

    partition_value_list3102.tree = NULL;

    partition_value_list3105.tree = NULL;

    partition_option3106.tree = NULL;

    subpartition_definition3108.tree = NULL;

    subpartition_definition3110.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    PARTITION_SYMBOL3097_tree   = NULL;
    VALUES_SYMBOL3099_tree   = NULL;
    LESS_SYMBOL3100_tree   = NULL;
    THAN_SYMBOL3101_tree   = NULL;
    MAXVALUE_SYMBOL3103_tree   = NULL;
    IN_SYMBOL3104_tree   = NULL;
    OPEN_PAR_SYMBOL3107_tree   = NULL;
    COMMA_SYMBOL3109_tree   = NULL;
    CLOSE_PAR_SYMBOL3111_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3187: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:3188: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_SYMBOL3097 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITION_SYMBOL, &FOLLOW_PARTITION_SYMBOL_in_partition_definition16300);
            if  (HASEXCEPTION())
            {
                goto rulepartition_definitionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            PARTITION_SYMBOL3097_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARTITION_SYMBOL3097));
            ADAPTOR->addChild(ADAPTOR, root_0, PARTITION_SYMBOL3097_tree);
            }

            FOLLOWPUSH(FOLLOW_identifier_in_partition_definition16302);
            identifier3098=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulepartition_definitionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier3098.tree);

            // MySQL.g:3189:2: ( VALUES_SYMBOL ( LESS_SYMBOL THAN_SYMBOL ( partition_value_list | MAXVALUE_SYMBOL ) | IN_SYMBOL partition_value_list ) )?
            {
                int alt890=2;
                switch ( LA(1) )
                {
                    case VALUES_SYMBOL:
                    	{
                    		alt890=1;
                    	}
                        break;
                }

                switch (alt890)
                {
            	case 1:
            	    // MySQL.g:3190:3: VALUES_SYMBOL ( LESS_SYMBOL THAN_SYMBOL ( partition_value_list | MAXVALUE_SYMBOL ) | IN_SYMBOL partition_value_list )
            	    {
            	        VALUES_SYMBOL3099 = (pANTLR3_COMMON_TOKEN) MATCHT(VALUES_SYMBOL, &FOLLOW_VALUES_SYMBOL_in_partition_definition16309);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        VALUES_SYMBOL3099_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VALUES_SYMBOL3099));
            	        ADAPTOR->addChild(ADAPTOR, root_0, VALUES_SYMBOL3099_tree);
            	        }

            	        // MySQL.g:3191:3: ( LESS_SYMBOL THAN_SYMBOL ( partition_value_list | MAXVALUE_SYMBOL ) | IN_SYMBOL partition_value_list )
            	        {
            	            int alt889=2;
            	            switch ( LA(1) )
            	            {
            	            case LESS_SYMBOL:
            	            	{
            	            		alt889=1;
            	            	}
            	                break;
            	            case IN_SYMBOL:
            	            	{
            	            		alt889=2;
            	            	}
            	                break;

            	            default:
            	                if (BACKTRACKING>0)
            	                {
            	                    FAILEDFLAG = ANTLR3_TRUE;
            	                    return retval;
            	                }

            	                CONSTRUCTEX();
            	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                EXCEPTION->message      = (void *)"";
            	                EXCEPTION->decisionNum  = 889;
            	                EXCEPTION->state        = 0;


            	                goto rulepartition_definitionEx;

            	            }

            	            switch (alt889)
            	            {
            	        	case 1:
            	        	    // MySQL.g:3192:4: LESS_SYMBOL THAN_SYMBOL ( partition_value_list | MAXVALUE_SYMBOL )
            	        	    {
            	        	        LESS_SYMBOL3100 = (pANTLR3_COMMON_TOKEN) MATCHT(LESS_SYMBOL, &FOLLOW_LESS_SYMBOL_in_partition_definition16318);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartition_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        LESS_SYMBOL3100_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LESS_SYMBOL3100));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, LESS_SYMBOL3100_tree);
            	        	        }

            	        	        THAN_SYMBOL3101 = (pANTLR3_COMMON_TOKEN) MATCHT(THAN_SYMBOL, &FOLLOW_THAN_SYMBOL_in_partition_definition16320);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartition_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        THAN_SYMBOL3101_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, THAN_SYMBOL3101));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, THAN_SYMBOL3101_tree);
            	        	        }

            	        	        // MySQL.g:3192:28: ( partition_value_list | MAXVALUE_SYMBOL )
            	        	        {
            	        	            int alt888=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	            case OPEN_PAR_SYMBOL:
            	        	            	{
            	        	            		alt888=1;
            	        	            	}
            	        	                break;
            	        	            case MAXVALUE_SYMBOL:
            	        	            	{
            	        	            		alt888=2;
            	        	            	}
            	        	                break;

            	        	            default:
            	        	                if (BACKTRACKING>0)
            	        	                {
            	        	                    FAILEDFLAG = ANTLR3_TRUE;
            	        	                    return retval;
            	        	                }

            	        	                CONSTRUCTEX();
            	        	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	        	                EXCEPTION->message      = (void *)"";
            	        	                EXCEPTION->decisionNum  = 888;
            	        	                EXCEPTION->state        = 0;


            	        	                goto rulepartition_definitionEx;

            	        	            }

            	        	            switch (alt888)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:3192:29: partition_value_list
            	        	        	    {
            	        	        	        FOLLOWPUSH(FOLLOW_partition_value_list_in_partition_definition16323);
            	        	        	        partition_value_list3102=partition_value_list(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulepartition_definitionEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, partition_value_list3102.tree);

            	        	        	    }
            	        	        	    break;
            	        	        	case 2:
            	        	        	    // MySQL.g:3192:52: MAXVALUE_SYMBOL
            	        	        	    {
            	        	        	        MAXVALUE_SYMBOL3103 = (pANTLR3_COMMON_TOKEN) MATCHT(MAXVALUE_SYMBOL, &FOLLOW_MAXVALUE_SYMBOL_in_partition_definition16327);
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulepartition_definitionEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) {
            	        	        	        MAXVALUE_SYMBOL3103_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MAXVALUE_SYMBOL3103));
            	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, MAXVALUE_SYMBOL3103_tree);
            	        	        	        }

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:3193:6: IN_SYMBOL partition_value_list
            	        	    {
            	        	        IN_SYMBOL3104 = (pANTLR3_COMMON_TOKEN) MATCHT(IN_SYMBOL, &FOLLOW_IN_SYMBOL_in_partition_definition16335);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartition_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        IN_SYMBOL3104_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IN_SYMBOL3104));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, IN_SYMBOL3104_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_partition_value_list_in_partition_definition16337);
            	        	        partition_value_list3105=partition_value_list(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartition_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, partition_value_list3105.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:3196:2: ( partition_option )*

            for (;;)
            {
                int alt891=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:
                	{
                		alt891=1;
                	}
                    break;

                }

                switch (alt891)
                {
            	case 1:
            	    // MySQL.g:3196:3: partition_option
            	    {
            	        FOLLOWPUSH(FOLLOW_partition_option_in_partition_definition16349);
            	        partition_option3106=partition_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, partition_option3106.tree);

            	    }
            	    break;

            	default:
            	    goto loop891;	/* break out of the loop */
            	    break;
                }
            }
            loop891: ; /* Jump out to here if this rule does not match */


            // MySQL.g:3197:2: ( OPEN_PAR_SYMBOL subpartition_definition ( COMMA_SYMBOL subpartition_definition )* CLOSE_PAR_SYMBOL )?
            {
                int alt893=2;
                switch ( LA(1) )
                {
                    case OPEN_PAR_SYMBOL:
                    	{
                    		alt893=1;
                    	}
                        break;
                }

                switch (alt893)
                {
            	case 1:
            	    // MySQL.g:3197:3: OPEN_PAR_SYMBOL subpartition_definition ( COMMA_SYMBOL subpartition_definition )* CLOSE_PAR_SYMBOL
            	    {
            	        OPEN_PAR_SYMBOL3107 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_partition_definition16355);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OPEN_PAR_SYMBOL3107_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL3107));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL3107_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_subpartition_definition_in_partition_definition16357);
            	        subpartition_definition3108=subpartition_definition(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, subpartition_definition3108.tree);

            	        // MySQL.g:3197:43: ( COMMA_SYMBOL subpartition_definition )*

            	        for (;;)
            	        {
            	            int alt892=2;
            	            switch ( LA(1) )
            	            {
            	            case COMMA_SYMBOL:
            	            	{
            	            		alt892=1;
            	            	}
            	                break;

            	            }

            	            switch (alt892)
            	            {
            	        	case 1:
            	        	    // MySQL.g:3197:44: COMMA_SYMBOL subpartition_definition
            	        	    {
            	        	        COMMA_SYMBOL3109 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_partition_definition16360);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartition_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        COMMA_SYMBOL3109_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL3109));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL3109_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_subpartition_definition_in_partition_definition16362);
            	        	        subpartition_definition3110=subpartition_definition(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartition_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, subpartition_definition3110.tree);

            	        	    }
            	        	    break;

            	        	default:
            	        	    goto loop892;	/* break out of the loop */
            	        	    break;
            	            }
            	        }
            	        loop892: ; /* Jump out to here if this rule does not match */


            	        CLOSE_PAR_SYMBOL3111 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_partition_definition16366);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CLOSE_PAR_SYMBOL3111_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL3111));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL3111_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:3200: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_SYMBOL3112;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR3113;
    pANTLR3_COMMON_TOKEN    STORAGE_SYMBOL3115;
    pANTLR3_COMMON_TOKEN    ENGINE_SYMBOL3116;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR3117;
    pANTLR3_COMMON_TOKEN    NODEGROUP_SYMBOL3119;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR3120;
    pANTLR3_COMMON_TOKEN    set3122;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR3123;
    pANTLR3_COMMON_TOKEN    set3125;
    pANTLR3_COMMON_TOKEN    DIRECTORY_SYMBOL3126;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR3127;
    pANTLR3_COMMON_TOKEN    COMMENT_SYMBOL3129;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR3130;
    MySQLParser_identifier_return identifier3114;
    #undef	RETURN_TYPE_identifier3114
    #define	RETURN_TYPE_identifier3114 MySQLParser_identifier_return

    MySQLParser_engine_ref_return engine_ref3118;
    #undef	RETURN_TYPE_engine_ref3118
    #define	RETURN_TYPE_engine_ref3118 MySQLParser_engine_ref_return

    MySQLParser_real_ulong_number_return real_ulong_number3121;
    #undef	RETURN_TYPE_real_ulong_number3121
    #define	RETURN_TYPE_real_ulong_number3121 MySQLParser_real_ulong_number_return

    MySQLParser_real_ulong_number_return real_ulong_number3124;
    #undef	RETURN_TYPE_real_ulong_number3124
    #define	RETURN_TYPE_real_ulong_number3124 MySQLParser_real_ulong_number_return

    MySQLParser_string_literal_return string_literal3128;
    #undef	RETURN_TYPE_string_literal3128
    #define	RETURN_TYPE_string_literal3128 MySQLParser_string_literal_return

    MySQLParser_string_literal_return string_literal3131;
    #undef	RETURN_TYPE_string_literal3131
    #define	RETURN_TYPE_string_literal3131 MySQLParser_string_literal_return

    pANTLR3_BASE_TREE TABLESPACE_SYMBOL3112_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR3113_tree;
    pANTLR3_BASE_TREE STORAGE_SYMBOL3115_tree;
    pANTLR3_BASE_TREE ENGINE_SYMBOL3116_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR3117_tree;
    pANTLR3_BASE_TREE NODEGROUP_SYMBOL3119_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR3120_tree;
    pANTLR3_BASE_TREE set3122_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR3123_tree;
    pANTLR3_BASE_TREE set3125_tree;
    pANTLR3_BASE_TREE DIRECTORY_SYMBOL3126_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR3127_tree;
    pANTLR3_BASE_TREE COMMENT_SYMBOL3129_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR3130_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    TABLESPACE_SYMBOL3112       = NULL;
    EQUAL_OPERATOR3113       = NULL;
    STORAGE_SYMBOL3115       = NULL;
    ENGINE_SYMBOL3116       = NULL;
    EQUAL_OPERATOR3117       = NULL;
    NODEGROUP_SYMBOL3119       = NULL;
    EQUAL_OPERATOR3120       = NULL;
    set3122       = NULL;
    EQUAL_OPERATOR3123       = NULL;
    set3125       = NULL;
    DIRECTORY_SYMBOL3126       = NULL;
    EQUAL_OPERATOR3127       = NULL;
    COMMENT_SYMBOL3129       = NULL;
    EQUAL_OPERATOR3130       = NULL;
    identifier3114.tree = NULL;

    engine_ref3118.tree = NULL;

    real_ulong_number3121.tree = NULL;

    real_ulong_number3124.tree = NULL;

    string_literal3128.tree = NULL;

    string_literal3131.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    TABLESPACE_SYMBOL3112_tree   = NULL;
    EQUAL_OPERATOR3113_tree   = NULL;
    STORAGE_SYMBOL3115_tree   = NULL;
    ENGINE_SYMBOL3116_tree   = NULL;
    EQUAL_OPERATOR3117_tree   = NULL;
    NODEGROUP_SYMBOL3119_tree   = NULL;
    EQUAL_OPERATOR3120_tree   = NULL;
    set3122_tree   = NULL;
    EQUAL_OPERATOR3123_tree   = NULL;
    set3125_tree   = NULL;
    DIRECTORY_SYMBOL3126_tree   = NULL;
    EQUAL_OPERATOR3127_tree   = NULL;
    COMMENT_SYMBOL3129_tree   = NULL;
    EQUAL_OPERATOR3130_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:3200: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 alt901;

            alt901=6;

            switch ( LA(1) )
            {
            case TABLESPACE_SYMBOL:
            	{
            		alt901=1;
            	}
                break;
            case ENGINE_SYMBOL:
            case STORAGE_SYMBOL:
            	{
            		alt901=2;
            	}
                break;
            case NODEGROUP_SYMBOL:
            	{
            		alt901=3;
            	}
                break;
            case MAX_ROWS_SYMBOL:
            case MIN_ROWS_SYMBOL:
            	{
            		alt901=4;
            	}
                break;
            case DATA_SYMBOL:
            case INDEX_SYMBOL:
            	{
            		alt901=5;
            	}
                break;
            case COMMENT_SYMBOL:
            	{
            		alt901=6;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 901;
                EXCEPTION->state        = 0;


                goto rulepartition_optionEx;

            }

            switch (alt901)
            {
        	case 1:
        	    // MySQL.g:3201:2: TABLESPACE_SYMBOL ( EQUAL_OPERATOR )? identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        TABLESPACE_SYMBOL3112 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLESPACE_SYMBOL, &FOLLOW_TABLESPACE_SYMBOL_in_partition_option16377);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulepartition_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TABLESPACE_SYMBOL3112_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLESPACE_SYMBOL3112));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TABLESPACE_SYMBOL3112_tree);
        	        }

        	        // MySQL.g:3201:20: ( EQUAL_OPERATOR )?
        	        {
        	            int alt894=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt894=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt894)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3201:20: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR3113 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_partition_option16379);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulepartition_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR3113_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR3113));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR3113_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_identifier_in_partition_option16382);
        	        identifier3114=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulepartition_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier3114.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:3202:4: ( STORAGE_SYMBOL )? ENGINE_SYMBOL ( EQUAL_OPERATOR )? engine_ref
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:3202:4: ( STORAGE_SYMBOL )?
        	        {
        	            int alt895=2;
        	            switch ( LA(1) )
        	            {
        	                case STORAGE_SYMBOL:
        	                	{
        	                		alt895=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt895)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3202:4: STORAGE_SYMBOL
        	        	    {
        	        	        STORAGE_SYMBOL3115 = (pANTLR3_COMMON_TOKEN) MATCHT(STORAGE_SYMBOL, &FOLLOW_STORAGE_SYMBOL_in_partition_option16387);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulepartition_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        STORAGE_SYMBOL3115_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STORAGE_SYMBOL3115));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, STORAGE_SYMBOL3115_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        ENGINE_SYMBOL3116 = (pANTLR3_COMMON_TOKEN) MATCHT(ENGINE_SYMBOL, &FOLLOW_ENGINE_SYMBOL_in_partition_option16390);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulepartition_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ENGINE_SYMBOL3116_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ENGINE_SYMBOL3116));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ENGINE_SYMBOL3116_tree);
        	        }

        	        // MySQL.g:3202:34: ( EQUAL_OPERATOR )?
        	        {
        	            int alt896=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt896=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt896)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3202:34: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR3117 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_partition_option16392);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulepartition_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR3117_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR3117));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR3117_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_engine_ref_in_partition_option16395);
        	        engine_ref3118=engine_ref(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulepartition_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, engine_ref3118.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:3203:4: NODEGROUP_SYMBOL ( EQUAL_OPERATOR )? real_ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NODEGROUP_SYMBOL3119 = (pANTLR3_COMMON_TOKEN) MATCHT(NODEGROUP_SYMBOL, &FOLLOW_NODEGROUP_SYMBOL_in_partition_option16400);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulepartition_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NODEGROUP_SYMBOL3119_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NODEGROUP_SYMBOL3119));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NODEGROUP_SYMBOL3119_tree);
        	        }

        	        // MySQL.g:3203:21: ( EQUAL_OPERATOR )?
        	        {
        	            int alt897=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt897=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt897)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3203:21: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR3120 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_partition_option16402);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulepartition_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR3120_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR3120));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR3120_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_real_ulong_number_in_partition_option16405);
        	        real_ulong_number3121=real_ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulepartition_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, real_ulong_number3121.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:3204:4: ( MAX_ROWS_SYMBOL | MIN_ROWS_SYMBOL ) ( EQUAL_OPERATOR )? real_ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        set3122=(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, set3122))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>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:3204:40: ( EQUAL_OPERATOR )?
        	        {
        	            int alt898=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt898=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt898)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3204:40: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR3123 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_partition_option16418);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulepartition_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR3123_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR3123));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR3123_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_real_ulong_number_in_partition_option16421);
        	        real_ulong_number3124=real_ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulepartition_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, real_ulong_number3124.tree);

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:3205:4: ( DATA_SYMBOL | INDEX_SYMBOL ) DIRECTORY_SYMBOL ( EQUAL_OPERATOR )? string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        set3125=(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, set3125))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>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_SYMBOL3126 = (pANTLR3_COMMON_TOKEN) MATCHT(DIRECTORY_SYMBOL, &FOLLOW_DIRECTORY_SYMBOL_in_partition_option16434);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulepartition_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DIRECTORY_SYMBOL3126_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DIRECTORY_SYMBOL3126));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DIRECTORY_SYMBOL3126_tree);
        	        }

        	        // MySQL.g:3205:50: ( EQUAL_OPERATOR )?
        	        {
        	            int alt899=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt899=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt899)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3205:50: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR3127 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_partition_option16436);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulepartition_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR3127_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR3127));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR3127_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_partition_option16439);
        	        string_literal3128=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulepartition_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal3128.tree);

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:3206:4: COMMENT_SYMBOL ( EQUAL_OPERATOR )? string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        COMMENT_SYMBOL3129 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMENT_SYMBOL, &FOLLOW_COMMENT_SYMBOL_in_partition_option16444);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulepartition_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMENT_SYMBOL3129_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMENT_SYMBOL3129));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMENT_SYMBOL3129_tree);
        	        }

        	        // MySQL.g:3206:19: ( EQUAL_OPERATOR )?
        	        {
        	            int alt900=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt900=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt900)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3206:19: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR3130 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_partition_option16446);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulepartition_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR3130_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR3130));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR3130_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_partition_option16449);
        	        string_literal3131=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulepartition_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal3131.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:3209: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_SYMBOL3132;
    MySQLParser_identifier_return identifier3133;
    #undef	RETURN_TYPE_identifier3133
    #define	RETURN_TYPE_identifier3133 MySQLParser_identifier_return

    MySQLParser_partition_option_return partition_option3134;
    #undef	RETURN_TYPE_partition_option3134
    #define	RETURN_TYPE_partition_option3134 MySQLParser_partition_option_return

    pANTLR3_BASE_TREE SUBPARTITION_SYMBOL3132_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SUBPARTITION_SYMBOL3132       = NULL;
    identifier3133.tree = NULL;

    partition_option3134.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SUBPARTITION_SYMBOL3132_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3209:24: ( SUBPARTITION_SYMBOL identifier ( partition_option )* )
        // MySQL.g:3210:2: SUBPARTITION_SYMBOL identifier ( partition_option )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            SUBPARTITION_SYMBOL3132 = (pANTLR3_COMMON_TOKEN) MATCHT(SUBPARTITION_SYMBOL, &FOLLOW_SUBPARTITION_SYMBOL_in_subpartition_definition16458);
            if  (HASEXCEPTION())
            {
                goto rulesubpartition_definitionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            SUBPARTITION_SYMBOL3132_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SUBPARTITION_SYMBOL3132));
            ADAPTOR->addChild(ADAPTOR, root_0, SUBPARTITION_SYMBOL3132_tree);
            }

            FOLLOWPUSH(FOLLOW_identifier_in_subpartition_definition16460);
            identifier3133=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulesubpartition_definitionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier3133.tree);

            // MySQL.g:3210:33: ( partition_option )*

            for (;;)
            {
                int alt902=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:
                	{
                		alt902=1;
                	}
                    break;

                }

                switch (alt902)
                {
            	case 1:
            	    // MySQL.g:3210:34: partition_option
            	    {
            	        FOLLOWPUSH(FOLLOW_partition_option_in_subpartition_definition16463);
            	        partition_option3134=partition_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesubpartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, partition_option3134.tree);

            	    }
            	    break;

            	default:
            	    goto loop902;	/* break out of the loop */
            	    break;
                }
            }
            loop902: ; /* 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:3213: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_SYMBOL3135;
    pANTLR3_COMMON_TOKEN    MAXVALUE_SYMBOL3137;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL3138;
    pANTLR3_COMMON_TOKEN    MAXVALUE_SYMBOL3140;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL3141;
    MySQLParser_expression_return expression3136;
    #undef	RETURN_TYPE_expression3136
    #define	RETURN_TYPE_expression3136 MySQLParser_expression_return

    MySQLParser_expression_return expression3139;
    #undef	RETURN_TYPE_expression3139
    #define	RETURN_TYPE_expression3139 MySQLParser_expression_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL3135_tree;
    pANTLR3_BASE_TREE MAXVALUE_SYMBOL3137_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL3138_tree;
    pANTLR3_BASE_TREE MAXVALUE_SYMBOL3140_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL3141_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL3135       = NULL;
    MAXVALUE_SYMBOL3137       = NULL;
    COMMA_SYMBOL3138       = NULL;
    MAXVALUE_SYMBOL3140       = NULL;
    CLOSE_PAR_SYMBOL3141       = NULL;
    expression3136.tree = NULL;

    expression3139.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL3135_tree   = NULL;
    MAXVALUE_SYMBOL3137_tree   = NULL;
    COMMA_SYMBOL3138_tree   = NULL;
    MAXVALUE_SYMBOL3140_tree   = NULL;
    CLOSE_PAR_SYMBOL3141_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3213:21: ( OPEN_PAR_SYMBOL ( expression | MAXVALUE_SYMBOL ) ( COMMA_SYMBOL ( expression | MAXVALUE_SYMBOL ) )* CLOSE_PAR_SYMBOL )
        // MySQL.g:3214: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_SYMBOL3135 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_partition_value_list16474);
            if  (HASEXCEPTION())
            {
                goto rulepartition_value_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL3135_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL3135));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL3135_tree);
            }

            // MySQL.g:3214:18: ( expression | MAXVALUE_SYMBOL )
            {
                int alt903=2;
                {
                    int LA903_0 = LA(1);
                    if ( (((LA903_0 >= ACCOUNT_SYMBOL) && (LA903_0 <= YEAR_SYMBOL)) || LA903_0 == BINARY_SYMBOL || ((LA903_0 >= CASE_SYMBOL) && (LA903_0 <= CAST_SYMBOL)) || LA903_0 == CHAR_SYMBOL || ((LA903_0 >= CONVERT_SYMBOL) && (LA903_0 <= COUNT_SYMBOL)) || LA903_0 == CURDATE_SYMBOL || LA903_0 == CURRENT_USER_SYMBOL || LA903_0 == CURTIME_SYMBOL || LA903_0 == DATABASE_SYMBOL || LA903_0 == DATE_ADD_SYMBOL || LA903_0 == DATE_SUB_SYMBOL || LA903_0 == EXISTS_SYMBOL || ((LA903_0 >= EXTRACT_SYMBOL) && (LA903_0 <= FALSE_SYMBOL)) || LA903_0 == GROUP_CONCAT_SYMBOL || LA903_0 == IF_SYMBOL || LA903_0 == INSERT_SYMBOL || LA903_0 == INTERVAL_SYMBOL || LA903_0 == LEFT_SYMBOL || LA903_0 == MATCH_SYMBOL || LA903_0 == MAX_SYMBOL || LA903_0 == MIN_SYMBOL || LA903_0 == MOD_SYMBOL || LA903_0 == NCHAR_TEXT || ((LA903_0 >= NOT2_SYMBOL) && (LA903_0 <= NOW_SYMBOL)) || ((LA903_0 >= NULL2_SYMBOL) && (LA903_0 <= NULL_SYMBOL)) || ((LA903_0 >= OPEN_CURLY_SYMBOL) && (LA903_0 <= OPEN_PAR_SYMBOL)) || ((LA903_0 >= PARAM_MARKER) && (LA903_0 <= POSITION_SYMBOL)) || ((LA903_0 >= REPEAT_SYMBOL) && (LA903_0 <= REPLACE_SYMBOL)) || LA903_0 == RIGHT_SYMBOL || LA903_0 == SINGLE_QUOTED_TEXT || LA903_0 == STDDEV_SAMP_SYMBOL || LA903_0 == STD_SYMBOL || LA903_0 == SUBSTRING_SYMBOL || ((LA903_0 >= SUM_SYMBOL) && (LA903_0 <= SYSDATE_SYMBOL)) || ((LA903_0 >= TRIM_SYMBOL) && (LA903_0 <= TRUE_SYMBOL)) || ((LA903_0 >= UTC_DATE_SYMBOL) && (LA903_0 <= UTC_TIME_SYMBOL)) || LA903_0 == VALUES_SYMBOL || LA903_0 == VARIANCE_SYMBOL || LA903_0 == VAR_SAMP_SYMBOL || ((LA903_0 >= AT_AT_SIGN_SYMBOL) && (LA903_0 <= AT_TEXT_SUFFIX)) || ((LA903_0 >= BACK_TICK_QUOTED_ID) && (LA903_0 <= BIN_NUMBER)) || LA903_0 == BITWISE_NOT_OPERATOR || ((LA903_0 >= BIT_AND_SYMBOL) && (LA903_0 <= BIT_XOR_SYMBOL)) || LA903_0 == DECIMAL_NUMBER || LA903_0 == DOT_SYMBOL || LA903_0 == DOUBLE_QUOTED_TEXT || LA903_0 == FLOAT_NUMBER || ((LA903_0 >= HEX_NUMBER) && (LA903_0 <= IDENTIFIER)) || LA903_0 == INT_NUMBER || LA903_0 == LOGICAL_NOT_OPERATOR || ((LA903_0 >= LONG_NUMBER) && (LA903_0 <= MINUS_OPERATOR)) || LA903_0 == PLUS_OPERATOR || ((LA903_0 >= ULONGLONG_NUMBER) && (LA903_0 <= UNDERSCORE_CHARSET))))
                    {
                        alt903=1;
                    }
                    else if ( (LA903_0 == MAXVALUE_SYMBOL))
                    {
                        alt903=2;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 903;
                        EXCEPTION->state        = 0;


                        goto rulepartition_value_listEx;

                    }
                }
                switch (alt903)
                {
            	case 1:
            	    // MySQL.g:3214:19: expression
            	    {
            	        FOLLOWPUSH(FOLLOW_expression_in_partition_value_list16477);
            	        expression3136=expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartition_value_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression3136.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:3214:32: MAXVALUE_SYMBOL
            	    {
            	        MAXVALUE_SYMBOL3137 = (pANTLR3_COMMON_TOKEN) MATCHT(MAXVALUE_SYMBOL, &FOLLOW_MAXVALUE_SYMBOL_in_partition_value_list16481);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartition_value_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        MAXVALUE_SYMBOL3137_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MAXVALUE_SYMBOL3137));
            	        ADAPTOR->addChild(ADAPTOR, root_0, MAXVALUE_SYMBOL3137_tree);
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:3214:49: ( COMMA_SYMBOL ( expression | MAXVALUE_SYMBOL ) )*

            for (;;)
            {
                int alt905=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt905=1;
                	}
                    break;

                }

                switch (alt905)
                {
            	case 1:
            	    // MySQL.g:3214:50: COMMA_SYMBOL ( expression | MAXVALUE_SYMBOL )
            	    {
            	        COMMA_SYMBOL3138 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_partition_value_list16485);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartition_value_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL3138_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL3138));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL3138_tree);
            	        }

            	        // MySQL.g:3214:63: ( expression | MAXVALUE_SYMBOL )
            	        {
            	            int alt904=2;
            	            {
            	                int LA904_0 = LA(1);
            	                if ( (((LA904_0 >= ACCOUNT_SYMBOL) && (LA904_0 <= YEAR_SYMBOL)) || LA904_0 == BINARY_SYMBOL || ((LA904_0 >= CASE_SYMBOL) && (LA904_0 <= CAST_SYMBOL)) || LA904_0 == CHAR_SYMBOL || ((LA904_0 >= CONVERT_SYMBOL) && (LA904_0 <= COUNT_SYMBOL)) || LA904_0 == CURDATE_SYMBOL || LA904_0 == CURRENT_USER_SYMBOL || LA904_0 == CURTIME_SYMBOL || LA904_0 == DATABASE_SYMBOL || LA904_0 == DATE_ADD_SYMBOL || LA904_0 == DATE_SUB_SYMBOL || LA904_0 == EXISTS_SYMBOL || ((LA904_0 >= EXTRACT_SYMBOL) && (LA904_0 <= FALSE_SYMBOL)) || LA904_0 == GROUP_CONCAT_SYMBOL || LA904_0 == IF_SYMBOL || LA904_0 == INSERT_SYMBOL || LA904_0 == INTERVAL_SYMBOL || LA904_0 == LEFT_SYMBOL || LA904_0 == MATCH_SYMBOL || LA904_0 == MAX_SYMBOL || LA904_0 == MIN_SYMBOL || LA904_0 == MOD_SYMBOL || LA904_0 == NCHAR_TEXT || ((LA904_0 >= NOT2_SYMBOL) && (LA904_0 <= NOW_SYMBOL)) || ((LA904_0 >= NULL2_SYMBOL) && (LA904_0 <= NULL_SYMBOL)) || ((LA904_0 >= OPEN_CURLY_SYMBOL) && (LA904_0 <= OPEN_PAR_SYMBOL)) || ((LA904_0 >= PARAM_MARKER) && (LA904_0 <= POSITION_SYMBOL)) || ((LA904_0 >= REPEAT_SYMBOL) && (LA904_0 <= REPLACE_SYMBOL)) || LA904_0 == RIGHT_SYMBOL || LA904_0 == SINGLE_QUOTED_TEXT || LA904_0 == STDDEV_SAMP_SYMBOL || LA904_0 == STD_SYMBOL || LA904_0 == SUBSTRING_SYMBOL || ((LA904_0 >= SUM_SYMBOL) && (LA904_0 <= SYSDATE_SYMBOL)) || ((LA904_0 >= TRIM_SYMBOL) && (LA904_0 <= TRUE_SYMBOL)) || ((LA904_0 >= UTC_DATE_SYMBOL) && (LA904_0 <= UTC_TIME_SYMBOL)) || LA904_0 == VALUES_SYMBOL || LA904_0 == VARIANCE_SYMBOL || LA904_0 == VAR_SAMP_SYMBOL || ((LA904_0 >= AT_AT_SIGN_SYMBOL) && (LA904_0 <= AT_TEXT_SUFFIX)) || ((LA904_0 >= BACK_TICK_QUOTED_ID) && (LA904_0 <= BIN_NUMBER)) || LA904_0 == BITWISE_NOT_OPERATOR || ((LA904_0 >= BIT_AND_SYMBOL) && (LA904_0 <= BIT_XOR_SYMBOL)) || LA904_0 == DECIMAL_NUMBER || LA904_0 == DOT_SYMBOL || LA904_0 == DOUBLE_QUOTED_TEXT || LA904_0 == FLOAT_NUMBER || ((LA904_0 >= HEX_NUMBER) && (LA904_0 <= IDENTIFIER)) || LA904_0 == INT_NUMBER || LA904_0 == LOGICAL_NOT_OPERATOR || ((LA904_0 >= LONG_NUMBER) && (LA904_0 <= MINUS_OPERATOR)) || LA904_0 == PLUS_OPERATOR || ((LA904_0 >= ULONGLONG_NUMBER) && (LA904_0 <= UNDERSCORE_CHARSET))))
            	                {
            	                    alt904=1;
            	                }
            	                else if ( (LA904_0 == MAXVALUE_SYMBOL))
            	                {
            	                    alt904=2;
            	                }
            	                else
            	                {
            	                    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_value_listEx;

            	                }
            	            }
            	            switch (alt904)
            	            {
            	        	case 1:
            	        	    // MySQL.g:3214:64: expression
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_expression_in_partition_value_list16488);
            	        	        expression3139=expression(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartition_value_listEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression3139.tree);

            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:3214:77: MAXVALUE_SYMBOL
            	        	    {
            	        	        MAXVALUE_SYMBOL3140 = (pANTLR3_COMMON_TOKEN) MATCHT(MAXVALUE_SYMBOL, &FOLLOW_MAXVALUE_SYMBOL_in_partition_value_list16492);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartition_value_listEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        MAXVALUE_SYMBOL3140_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MAXVALUE_SYMBOL3140));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, MAXVALUE_SYMBOL3140_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

            	default:
            	    goto loop905;	/* break out of the loop */
            	    break;
                }
            }
            loop905: ; /* Jump out to here if this rule does not match */


            CLOSE_PAR_SYMBOL3141 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_partition_value_list16497);
            if  (HASEXCEPTION())
            {
                goto rulepartition_value_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL3141_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL3141));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL3141_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:3217: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_SYMBOL3142;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR3143;
    MySQLParser_user_return user3144;
    #undef	RETURN_TYPE_user3144
    #define	RETURN_TYPE_user3144 MySQLParser_user_return

    pANTLR3_BASE_TREE DEFINER_SYMBOL3142_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR3143_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DEFINER_SYMBOL3142       = NULL;
    EQUAL_OPERATOR3143       = NULL;
    user3144.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DEFINER_SYMBOL3142_tree   = NULL;
    EQUAL_OPERATOR3143_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3217:15: ( DEFINER_SYMBOL ^ EQUAL_OPERATOR user )
        // MySQL.g:3218:2: DEFINER_SYMBOL ^ EQUAL_OPERATOR user
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            DEFINER_SYMBOL3142 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFINER_SYMBOL, &FOLLOW_DEFINER_SYMBOL_in_definer_clause16506);
            if  (HASEXCEPTION())
            {
                goto ruledefiner_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            DEFINER_SYMBOL3142_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFINER_SYMBOL3142))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, DEFINER_SYMBOL3142_tree, root_0));
            }

            EQUAL_OPERATOR3143 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_definer_clause16509);
            if  (HASEXCEPTION())
            {
                goto ruledefiner_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EQUAL_OPERATOR3143_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR3143));
            ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR3143_tree);
            }

            FOLLOWPUSH(FOLLOW_user_in_definer_clause16511);
            user3144=user(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruledefiner_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user3144.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:3221: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_SYMBOL3145;
    pANTLR3_COMMON_TOKEN    EXISTS_SYMBOL3146;

    pANTLR3_BASE_TREE IF_SYMBOL3145_tree;
    pANTLR3_BASE_TREE EXISTS_SYMBOL3146_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    IF_SYMBOL3145       = NULL;
    EXISTS_SYMBOL3146       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    IF_SYMBOL3145_tree   = NULL;
    EXISTS_SYMBOL3146_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3221:10: ( IF_SYMBOL EXISTS_SYMBOL )
        // MySQL.g:3222:2: IF_SYMBOL EXISTS_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            IF_SYMBOL3145 = (pANTLR3_COMMON_TOKEN) MATCHT(IF_SYMBOL, &FOLLOW_IF_SYMBOL_in_if_exists16520);
            if  (HASEXCEPTION())
            {
                goto ruleif_existsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            IF_SYMBOL3145_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IF_SYMBOL3145));
            ADAPTOR->addChild(ADAPTOR, root_0, IF_SYMBOL3145_tree);
            }

            EXISTS_SYMBOL3146 = (pANTLR3_COMMON_TOKEN) MATCHT(EXISTS_SYMBOL, &FOLLOW_EXISTS_SYMBOL_in_if_exists16522);
            if  (HASEXCEPTION())
            {
                goto ruleif_existsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EXISTS_SYMBOL3146_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EXISTS_SYMBOL3146));
            ADAPTOR->addChild(ADAPTOR, root_0, EXISTS_SYMBOL3146_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:3225: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_SYMBOL3147;
    pANTLR3_COMMON_TOKEN    EXISTS_SYMBOL3149;
    MySQLParser_not_rule_return not_rule3148;
    #undef	RETURN_TYPE_not_rule3148
    #define	RETURN_TYPE_not_rule3148 MySQLParser_not_rule_return

    pANTLR3_BASE_TREE IF_SYMBOL3147_tree;
    pANTLR3_BASE_TREE EXISTS_SYMBOL3149_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    IF_SYMBOL3147       = NULL;
    EXISTS_SYMBOL3149       = NULL;
    not_rule3148.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    IF_SYMBOL3147_tree   = NULL;
    EXISTS_SYMBOL3149_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3225:14: ( IF_SYMBOL not_rule EXISTS_SYMBOL )
        // MySQL.g:3226:2: IF_SYMBOL not_rule EXISTS_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            IF_SYMBOL3147 = (pANTLR3_COMMON_TOKEN) MATCHT(IF_SYMBOL, &FOLLOW_IF_SYMBOL_in_if_not_exists16531);
            if  (HASEXCEPTION())
            {
                goto ruleif_not_existsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            IF_SYMBOL3147_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IF_SYMBOL3147));
            ADAPTOR->addChild(ADAPTOR, root_0, IF_SYMBOL3147_tree);
            }

            FOLLOWPUSH(FOLLOW_not_rule_in_if_not_exists16533);
            not_rule3148=not_rule(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleif_not_existsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, not_rule3148.tree);

            EXISTS_SYMBOL3149 = (pANTLR3_COMMON_TOKEN) MATCHT(EXISTS_SYMBOL, &FOLLOW_EXISTS_SYMBOL_in_if_not_exists16535);
            if  (HASEXCEPTION())
            {
                goto ruleif_not_existsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EXISTS_SYMBOL3149_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EXISTS_SYMBOL3149));
            ADAPTOR->addChild(ADAPTOR, root_0, EXISTS_SYMBOL3149_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:3229: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    set3150;
    MySQLParser_function_parameter_return function_parameter3151;
    #undef	RETURN_TYPE_function_parameter3151
    #define	RETURN_TYPE_function_parameter3151 MySQLParser_function_parameter_return

    pANTLR3_BASE_TREE set3150_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set3150       = NULL;
    function_parameter3151.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set3150_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3229:20: ( ( IN_SYMBOL | OUT_SYMBOL | INOUT_SYMBOL )? function_parameter )
        // MySQL.g:3230:2: ( IN_SYMBOL | OUT_SYMBOL | INOUT_SYMBOL )? function_parameter
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:3230:2: ( IN_SYMBOL | OUT_SYMBOL | INOUT_SYMBOL )?
            {
                int alt906=2;
                switch ( LA(1) )
                {
                    case INOUT_SYMBOL:
                    case IN_SYMBOL:
                    case OUT_SYMBOL:
                    	{
                    		alt906=1;
                    	}
                        break;
                }

                switch (alt906)
                {
            	case 1:
            	    // MySQL.g:
            	    {
            	        set3150=(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, set3150))
            	            );
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

            	        }
            	        else
            	        {
            	            if (BACKTRACKING>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_parameter16557);
            function_parameter3151=function_parameter(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleprocedure_parameterEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, function_parameter3151.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:3233: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 identifier3152;
    #undef	RETURN_TYPE_identifier3152
    #define	RETURN_TYPE_identifier3152 MySQLParser_identifier_return

    MySQLParser_data_type_return data_type3153;
    #undef	RETURN_TYPE_data_type3153
    #define	RETURN_TYPE_data_type3153 MySQLParser_data_type_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    identifier3152.tree = NULL;

    data_type3153.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:3233:19: ( identifier data_type )
        // MySQL.g:3234:2: identifier data_type
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_identifier_in_function_parameter16566);
            identifier3152=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulefunction_parameterEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier3152.tree);

            FOLLOWPUSH(FOLLOW_data_type_in_function_parameter16568);
            data_type3153=data_type(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulefunction_parameterEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, data_type3153.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:3237: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_SYMBOL3154;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL3156;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL3158;
    MySQLParser_schema_ref_return schema_ref3155;
    #undef	RETURN_TYPE_schema_ref3155
    #define	RETURN_TYPE_schema_ref3155 MySQLParser_schema_ref_return

    MySQLParser_schema_ref_return schema_ref3157;
    #undef	RETURN_TYPE_schema_ref3157
    #define	RETURN_TYPE_schema_ref3157 MySQLParser_schema_ref_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL3154_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL3156_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL3158_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL3154       = NULL;
    COMMA_SYMBOL3156       = NULL;
    CLOSE_PAR_SYMBOL3158       = NULL;
    schema_ref3155.tree = NULL;

    schema_ref3157.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL3154_tree   = NULL;
    COMMA_SYMBOL3156_tree   = NULL;
    CLOSE_PAR_SYMBOL3158_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3237:23: ( OPEN_PAR_SYMBOL schema_ref COMMA_SYMBOL schema_ref CLOSE_PAR_SYMBOL )
        // MySQL.g:3238:2: OPEN_PAR_SYMBOL schema_ref COMMA_SYMBOL schema_ref CLOSE_PAR_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            OPEN_PAR_SYMBOL3154 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_schema_identifier_pair16577);
            if  (HASEXCEPTION())
            {
                goto ruleschema_identifier_pairEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL3154_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL3154));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL3154_tree);
            }

            FOLLOWPUSH(FOLLOW_schema_ref_in_schema_identifier_pair16579);
            schema_ref3155=schema_ref(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleschema_identifier_pairEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, schema_ref3155.tree);

            COMMA_SYMBOL3156 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_schema_identifier_pair16581);
            if  (HASEXCEPTION())
            {
                goto ruleschema_identifier_pairEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            COMMA_SYMBOL3156_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL3156));
            ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL3156_tree);
            }

            FOLLOWPUSH(FOLLOW_schema_ref_in_schema_identifier_pair16583);
            schema_ref3157=schema_ref(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleschema_identifier_pairEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, schema_ref3157.tree);

            CLOSE_PAR_SYMBOL3158 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_schema_identifier_pair16585);
            if  (HASEXCEPTION())
            {
                goto ruleschema_identifier_pairEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL3158_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL3158));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL3158_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:3241: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_SYMBOL3160;
    MySQLParser_view_ref_return view_ref3159;
    #undef	RETURN_TYPE_view_ref3159
    #define	RETURN_TYPE_view_ref3159 MySQLParser_view_ref_return

    MySQLParser_view_ref_return view_ref3161;
    #undef	RETURN_TYPE_view_ref3161
    #define	RETURN_TYPE_view_ref3161 MySQLParser_view_ref_return

    pANTLR3_BASE_TREE COMMA_SYMBOL3160_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL3160       = NULL;
    view_ref3159.tree = NULL;

    view_ref3161.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL3160_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3241:21: ( view_ref ( COMMA_SYMBOL view_ref )* )
        // MySQL.g:3242:2: view_ref ( COMMA_SYMBOL view_ref )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_view_ref_in_view_identifier_list16594);
            view_ref3159=view_ref(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleview_identifier_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, view_ref3159.tree);

            // MySQL.g:3242:11: ( COMMA_SYMBOL view_ref )*

            for (;;)
            {
                int alt907=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt907=1;
                	}
                    break;

                }

                switch (alt907)
                {
            	case 1:
            	    // MySQL.g:3242:12: COMMA_SYMBOL view_ref
            	    {
            	        COMMA_SYMBOL3160 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_view_identifier_list16597);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleview_identifier_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL3160_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL3160));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL3160_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_view_ref_in_view_identifier_list16599);
            	        view_ref3161=view_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleview_identifier_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, view_ref3161.tree);

            	    }
            	    break;

            	default:
            	    goto loop907;	/* break out of the loop */
            	    break;
                }
            }
            loop907: ; /* 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:3245: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_SYMBOL3163;
    MySQLParser_column_ref_return column_ref3162;
    #undef	RETURN_TYPE_column_ref3162
    #define	RETURN_TYPE_column_ref3162 MySQLParser_column_ref_return

    MySQLParser_column_ref_return column_ref3164;
    #undef	RETURN_TYPE_column_ref3164
    #define	RETURN_TYPE_column_ref3164 MySQLParser_column_ref_return

    pANTLR3_BASE_TREE COMMA_SYMBOL3163_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL3163       = NULL;
    column_ref3162.tree = NULL;

    column_ref3164.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL3163_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3245:16: ( column_ref ( COMMA_SYMBOL column_ref )* )
        // MySQL.g:3246:2: column_ref ( COMMA_SYMBOL column_ref )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_column_ref_in_field_name_list16617);
            column_ref3162=column_ref(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulefield_name_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, column_ref3162.tree);

            // MySQL.g:3246:13: ( COMMA_SYMBOL column_ref )*

            for (;;)
            {
                int alt908=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt908=1;
                	}
                    break;

                }

                switch (alt908)
                {
            	case 1:
            	    // MySQL.g:3246:14: COMMA_SYMBOL column_ref
            	    {
            	        COMMA_SYMBOL3163 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_field_name_list16620);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulefield_name_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL3163_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL3163));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL3163_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_column_ref_in_field_name_list16622);
            	        column_ref3164=column_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulefield_name_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, column_ref3164.tree);

            	    }
            	    break;

            	default:
            	    goto loop908;	/* break out of the loop */
            	    break;
                }
            }
            loop908: ; /* 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:3249: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_SYMBOL3166;
    MySQLParser_column_assignment_with_default_return column_assignment_with_default3165;
    #undef	RETURN_TYPE_column_assignment_with_default3165
    #define	RETURN_TYPE_column_assignment_with_default3165 MySQLParser_column_assignment_with_default_return

    MySQLParser_column_assignment_with_default_return column_assignment_with_default3167;
    #undef	RETURN_TYPE_column_assignment_with_default3167
    #define	RETURN_TYPE_column_assignment_with_default3167 MySQLParser_column_assignment_with_default_return

    pANTLR3_BASE_TREE COMMA_SYMBOL3166_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_SYMBOL3166       = NULL;
    column_assignment_with_default3165.tree = NULL;

    column_assignment_with_default3167.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL3166_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:3249: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:3250:2: column_assignment_with_default ( COMMA_SYMBOL column_assignment_with_default )*
        {
            FOLLOWPUSH(FOLLOW_column_assignment_with_default_in_column_assignment_list_with_default16633);
            column_assignment_with_default3165=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_default3165.tree, NULL); }

            // MySQL.g:3250:33: ( COMMA_SYMBOL column_assignment_with_default )*

            for (;;)
            {
                int alt909=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt909=1;
                	}
                    break;

                }

                switch (alt909)
                {
            	case 1:
            	    // MySQL.g:3250:34: COMMA_SYMBOL column_assignment_with_default
            	    {
            	        COMMA_SYMBOL3166 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_column_assignment_list_with_default16636);
            	        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_SYMBOL3166, NULL); }


            	        FOLLOWPUSH(FOLLOW_column_assignment_with_default_in_column_assignment_list_with_default16638);
            	        column_assignment_with_default3167=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_default3167.tree, NULL); }

            	    }
            	    break;

            	default:
            	    goto loop909;	/* break out of the loop */
            	    break;
                }
            }
            loop909: ; /* Jump out to here if this rule does not match */


            /* AST REWRITE
             * elements          : COMMA_SYMBOL, column_assignment_with_default, column_assignment_with_default
             * 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;
            	// 3251:3: -> ^( COLUMN_ASSIGNMENT_LIST_TOKEN column_assignment_with_default ( COMMA_SYMBOL column_assignment_with_default )* )
            	{
            	    // MySQL.g:3251: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:3251:68: ( COMMA_SYMBOL column_assignment_with_default )*
            	        {
            	        	while ( (stream_COMMA_SYMBOL != NULL && stream_COMMA_SYMBOL->hasNext(stream_COMMA_SYMBOL)) || (stream_column_assignment_with_default != NULL && stream_column_assignment_with_default->hasNext(stream_column_assignment_with_default))  )
            	        	{
            	        		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_COMMA_SYMBOL != NULL) stream_COMMA_SYMBOL->reset(stream_COMMA_SYMBOL);
            	        	if (stream_column_assignment_with_default != NULL) stream_column_assignment_with_default->reset(stream_column_assignment_with_default);

            	        }

            	        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:3254: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_OPERATOR3169;
    pANTLR3_COMMON_TOKEN    DEFAULT_SYMBOL3171;
    MySQLParser_column_ref_return column_ref3168;
    #undef	RETURN_TYPE_column_ref3168
    #define	RETURN_TYPE_column_ref3168 MySQLParser_column_ref_return

    MySQLParser_expression_return expression3170;
    #undef	RETURN_TYPE_expression3170
    #define	RETURN_TYPE_expression3170 MySQLParser_expression_return

    pANTLR3_BASE_TREE EQUAL_OPERATOR3169_tree;
    pANTLR3_BASE_TREE DEFAULT_SYMBOL3171_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    EQUAL_OPERATOR3169       = NULL;
    DEFAULT_SYMBOL3171       = NULL;
    column_ref3168.tree = NULL;

    expression3170.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    EQUAL_OPERATOR3169_tree   = NULL;
    DEFAULT_SYMBOL3171_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3254:31: ( column_ref EQUAL_OPERATOR ( expression | DEFAULT_SYMBOL ) )
        // MySQL.g:3255:2: column_ref EQUAL_OPERATOR ( expression | DEFAULT_SYMBOL )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_column_ref_in_column_assignment_with_default16666);
            column_ref3168=column_ref(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecolumn_assignment_with_defaultEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, column_ref3168.tree);

            EQUAL_OPERATOR3169 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_column_assignment_with_default16668);
            if  (HASEXCEPTION())
            {
                goto rulecolumn_assignment_with_defaultEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EQUAL_OPERATOR3169_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR3169));
            ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR3169_tree);
            }

            // MySQL.g:3255:28: ( expression | DEFAULT_SYMBOL )
            {
                int alt910=2;
                {
                    int LA910_0 = LA(1);
                    if ( (((LA910_0 >= ACCOUNT_SYMBOL) && (LA910_0 <= YEAR_SYMBOL)) || LA910_0 == BINARY_SYMBOL || ((LA910_0 >= CASE_SYMBOL) && (LA910_0 <= CAST_SYMBOL)) || LA910_0 == CHAR_SYMBOL || ((LA910_0 >= CONVERT_SYMBOL) && (LA910_0 <= COUNT_SYMBOL)) || LA910_0 == CURDATE_SYMBOL || LA910_0 == CURRENT_USER_SYMBOL || LA910_0 == CURTIME_SYMBOL || LA910_0 == DATABASE_SYMBOL || LA910_0 == DATE_ADD_SYMBOL || LA910_0 == DATE_SUB_SYMBOL || LA910_0 == EXISTS_SYMBOL || ((LA910_0 >= EXTRACT_SYMBOL) && (LA910_0 <= FALSE_SYMBOL)) || LA910_0 == GROUP_CONCAT_SYMBOL || LA910_0 == IF_SYMBOL || LA910_0 == INSERT_SYMBOL || LA910_0 == INTERVAL_SYMBOL || LA910_0 == LEFT_SYMBOL || LA910_0 == MATCH_SYMBOL || LA910_0 == MAX_SYMBOL || LA910_0 == MIN_SYMBOL || LA910_0 == MOD_SYMBOL || LA910_0 == NCHAR_TEXT || ((LA910_0 >= NOT2_SYMBOL) && (LA910_0 <= NOW_SYMBOL)) || ((LA910_0 >= NULL2_SYMBOL) && (LA910_0 <= NULL_SYMBOL)) || ((LA910_0 >= OPEN_CURLY_SYMBOL) && (LA910_0 <= OPEN_PAR_SYMBOL)) || ((LA910_0 >= PARAM_MARKER) && (LA910_0 <= POSITION_SYMBOL)) || ((LA910_0 >= REPEAT_SYMBOL) && (LA910_0 <= REPLACE_SYMBOL)) || LA910_0 == RIGHT_SYMBOL || LA910_0 == SINGLE_QUOTED_TEXT || LA910_0 == STDDEV_SAMP_SYMBOL || LA910_0 == STD_SYMBOL || LA910_0 == SUBSTRING_SYMBOL || ((LA910_0 >= SUM_SYMBOL) && (LA910_0 <= SYSDATE_SYMBOL)) || ((LA910_0 >= TRIM_SYMBOL) && (LA910_0 <= TRUE_SYMBOL)) || ((LA910_0 >= UTC_DATE_SYMBOL) && (LA910_0 <= UTC_TIME_SYMBOL)) || LA910_0 == VALUES_SYMBOL || LA910_0 == VARIANCE_SYMBOL || LA910_0 == VAR_SAMP_SYMBOL || ((LA910_0 >= AT_AT_SIGN_SYMBOL) && (LA910_0 <= AT_TEXT_SUFFIX)) || ((LA910_0 >= BACK_TICK_QUOTED_ID) && (LA910_0 <= BIN_NUMBER)) || LA910_0 == BITWISE_NOT_OPERATOR || ((LA910_0 >= BIT_AND_SYMBOL) && (LA910_0 <= BIT_XOR_SYMBOL)) || LA910_0 == DECIMAL_NUMBER || LA910_0 == DOT_SYMBOL || LA910_0 == DOUBLE_QUOTED_TEXT || LA910_0 == FLOAT_NUMBER || ((LA910_0 >= HEX_NUMBER) && (LA910_0 <= IDENTIFIER)) || LA910_0 == INT_NUMBER || LA910_0 == LOGICAL_NOT_OPERATOR || ((LA910_0 >= LONG_NUMBER) && (LA910_0 <= MINUS_OPERATOR)) || LA910_0 == PLUS_OPERATOR || ((LA910_0 >= ULONGLONG_NUMBER) && (LA910_0 <= UNDERSCORE_CHARSET))))
                    {
                        alt910=1;
                    }
                    else if ( (LA910_0 == DEFAULT_SYMBOL))
                    {
                        alt910=2;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 910;
                        EXCEPTION->state        = 0;


                        goto rulecolumn_assignment_with_defaultEx;

                    }
                }
                switch (alt910)
                {
            	case 1:
            	    // MySQL.g:3255:29: expression
            	    {
            	        FOLLOWPUSH(FOLLOW_expression_in_column_assignment_with_default16671);
            	        expression3170=expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecolumn_assignment_with_defaultEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression3170.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:3255:42: DEFAULT_SYMBOL
            	    {
            	        DEFAULT_SYMBOL3171 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_column_assignment_with_default16675);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecolumn_assignment_with_defaultEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DEFAULT_SYMBOL3171_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL3171));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL3171_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:3258: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_SYMBOL3174;
    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL3175;
    MySQLParser_charset_return charset3172;
    #undef	RETURN_TYPE_charset3172
    #define	RETURN_TYPE_charset3172 MySQLParser_charset_return

    MySQLParser_text_or_identifier_return text_or_identifier3173;
    #undef	RETURN_TYPE_text_or_identifier3173
    #define	RETURN_TYPE_text_or_identifier3173 MySQLParser_text_or_identifier_return

    pANTLR3_BASE_TREE DEFAULT_SYMBOL3174_tree;
    pANTLR3_BASE_TREE BINARY_SYMBOL3175_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DEFAULT_SYMBOL3174       = NULL;
    BINARY_SYMBOL3175       = NULL;
    charset3172.tree = NULL;

    text_or_identifier3173.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DEFAULT_SYMBOL3174_tree   = NULL;
    BINARY_SYMBOL3175_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3258:15: ( charset ( text_or_identifier | DEFAULT_SYMBOL | BINARY_SYMBOL ) )
        // MySQL.g:3259:2: charset ( text_or_identifier | DEFAULT_SYMBOL | BINARY_SYMBOL )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_charset_in_charset_clause16685);
            charset3172=charset(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecharset_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset3172.tree);

            // MySQL.g:3259:10: ( text_or_identifier | DEFAULT_SYMBOL | BINARY_SYMBOL )
            {
                int alt911=3;
                {
                    int LA911_0 = LA(1);
                    if ( (((LA911_0 >= ACCOUNT_SYMBOL) && (LA911_0 <= YEAR_SYMBOL)) || LA911_0 == SINGLE_QUOTED_TEXT || LA911_0 == BACK_TICK_QUOTED_ID || LA911_0 == DOUBLE_QUOTED_TEXT || LA911_0 == IDENTIFIER))
                    {
                        alt911=1;
                    }
                    else if ( (LA911_0 == DEFAULT_SYMBOL))
                    {
                        alt911=2;
                    }
                    else if ( (LA911_0 == BINARY_SYMBOL))
                    {
                        alt911=3;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 911;
                        EXCEPTION->state        = 0;


                        goto rulecharset_clauseEx;

                    }
                }
                switch (alt911)
                {
            	case 1:
            	    // MySQL.g:3259:11: text_or_identifier
            	    {
            	        FOLLOWPUSH(FOLLOW_text_or_identifier_in_charset_clause16688);
            	        text_or_identifier3173=text_or_identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecharset_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_or_identifier3173.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:3259:32: DEFAULT_SYMBOL
            	    {
            	        DEFAULT_SYMBOL3174 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_charset_clause16692);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecharset_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DEFAULT_SYMBOL3174_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL3174));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL3174_tree);
            	        }

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:3259:49: BINARY_SYMBOL
            	    {
            	        BINARY_SYMBOL3175 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_charset_clause16696);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecharset_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        BINARY_SYMBOL3175_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL3175));
            	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL3175_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:3262: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_SYMBOL3176;
    MySQLParser_field_term_return field_term3177;
    #undef	RETURN_TYPE_field_term3177
    #define	RETURN_TYPE_field_term3177 MySQLParser_field_term_return

    pANTLR3_BASE_TREE COLUMNS_SYMBOL3176_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COLUMNS_SYMBOL3176       = NULL;
    field_term3177.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COLUMNS_SYMBOL3176_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3262:14: ( COLUMNS_SYMBOL ( field_term )+ )
        // MySQL.g:3263:2: COLUMNS_SYMBOL ( field_term )+
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            COLUMNS_SYMBOL3176 = (pANTLR3_COMMON_TOKEN) MATCHT(COLUMNS_SYMBOL, &FOLLOW_COLUMNS_SYMBOL_in_fields_clause16706);
            if  (HASEXCEPTION())
            {
                goto rulefields_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            COLUMNS_SYMBOL3176_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COLUMNS_SYMBOL3176));
            ADAPTOR->addChild(ADAPTOR, root_0, COLUMNS_SYMBOL3176_tree);
            }

            // MySQL.g:3263:17: ( field_term )+
            {
                int cnt912=0;

                for (;;)
                {
                    int alt912=2;
            	switch ( LA(1) )
            	{
            	case ENCLOSED_SYMBOL:
            	case ESCAPED_SYMBOL:
            	case OPTIONALLY_SYMBOL:
            	case TERMINATED_SYMBOL:
            		{
            			alt912=1;
            		}
            	    break;

            	}

            	switch (alt912)
            	{
            	    case 1:
            	        // MySQL.g:3263:17: field_term
            	        {
            	            FOLLOWPUSH(FOLLOW_field_term_in_fields_clause16708);
            	            field_term3177=field_term(ctx);

            	            FOLLOWPOP();
            	            if  (HASEXCEPTION())
            	            {
            	                goto rulefields_clauseEx;
            	            }
            	            if (HASFAILED())
            	            {
            	                return retval;
            	            }

            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_term3177.tree);

            	        }
            	        break;

            	    default:

            		if ( cnt912 >= 1 )
            		{
            		    goto loop912;
            		}
            		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;
            	}
            	cnt912++;
                }
                loop912: ;	/* 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:3266: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_SYMBOL3178;
    pANTLR3_COMMON_TOKEN    BY_SYMBOL3179;
    pANTLR3_COMMON_TOKEN    OPTIONALLY_SYMBOL3181;
    pANTLR3_COMMON_TOKEN    ENCLOSED_SYMBOL3182;
    pANTLR3_COMMON_TOKEN    BY_SYMBOL3183;
    pANTLR3_COMMON_TOKEN    ESCAPED_SYMBOL3185;
    pANTLR3_COMMON_TOKEN    BY_SYMBOL3186;
    MySQLParser_text_string_return text_string3180;
    #undef	RETURN_TYPE_text_string3180
    #define	RETURN_TYPE_text_string3180 MySQLParser_text_string_return

    MySQLParser_text_string_return text_string3184;
    #undef	RETURN_TYPE_text_string3184
    #define	RETURN_TYPE_text_string3184 MySQLParser_text_string_return

    MySQLParser_text_string_return text_string3187;
    #undef	RETURN_TYPE_text_string3187
    #define	RETURN_TYPE_text_string3187 MySQLParser_text_string_return

    pANTLR3_BASE_TREE TERMINATED_SYMBOL3178_tree;
    pANTLR3_BASE_TREE BY_SYMBOL3179_tree;
    pANTLR3_BASE_TREE OPTIONALLY_SYMBOL3181_tree;
    pANTLR3_BASE_TREE ENCLOSED_SYMBOL3182_tree;
    pANTLR3_BASE_TREE BY_SYMBOL3183_tree;
    pANTLR3_BASE_TREE ESCAPED_SYMBOL3185_tree;
    pANTLR3_BASE_TREE BY_SYMBOL3186_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    TERMINATED_SYMBOL3178       = NULL;
    BY_SYMBOL3179       = NULL;
    OPTIONALLY_SYMBOL3181       = NULL;
    ENCLOSED_SYMBOL3182       = NULL;
    BY_SYMBOL3183       = NULL;
    ESCAPED_SYMBOL3185       = NULL;
    BY_SYMBOL3186       = NULL;
    text_string3180.tree = NULL;

    text_string3184.tree = NULL;

    text_string3187.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    TERMINATED_SYMBOL3178_tree   = NULL;
    BY_SYMBOL3179_tree   = NULL;
    OPTIONALLY_SYMBOL3181_tree   = NULL;
    ENCLOSED_SYMBOL3182_tree   = NULL;
    BY_SYMBOL3183_tree   = NULL;
    ESCAPED_SYMBOL3185_tree   = NULL;
    BY_SYMBOL3186_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:3266:11: ( TERMINATED_SYMBOL BY_SYMBOL text_string | ( OPTIONALLY_SYMBOL )? ENCLOSED_SYMBOL BY_SYMBOL text_string | ESCAPED_SYMBOL BY_SYMBOL text_string )

            ANTLR3_UINT32 alt914;

            alt914=3;

            switch ( LA(1) )
            {
            case TERMINATED_SYMBOL:
            	{
            		alt914=1;
            	}
                break;
            case ENCLOSED_SYMBOL:
            case OPTIONALLY_SYMBOL:
            	{
            		alt914=2;
            	}
                break;
            case ESCAPED_SYMBOL:
            	{
            		alt914=3;
            	}
                break;

            default:
                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 rulefield_termEx;

            }

            switch (alt914)
            {
        	case 1:
        	    // MySQL.g:3267:2: TERMINATED_SYMBOL BY_SYMBOL text_string
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        TERMINATED_SYMBOL3178 = (pANTLR3_COMMON_TOKEN) MATCHT(TERMINATED_SYMBOL, &FOLLOW_TERMINATED_SYMBOL_in_field_term16718);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefield_termEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TERMINATED_SYMBOL3178_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TERMINATED_SYMBOL3178));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TERMINATED_SYMBOL3178_tree);
        	        }

        	        BY_SYMBOL3179 = (pANTLR3_COMMON_TOKEN) MATCHT(BY_SYMBOL, &FOLLOW_BY_SYMBOL_in_field_term16720);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefield_termEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BY_SYMBOL3179_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BY_SYMBOL3179));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BY_SYMBOL3179_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_in_field_term16722);
        	        text_string3180=text_string(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefield_termEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string3180.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:3268:4: ( OPTIONALLY_SYMBOL )? ENCLOSED_SYMBOL BY_SYMBOL text_string
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:3268:4: ( OPTIONALLY_SYMBOL )?
        	        {
        	            int alt913=2;
        	            switch ( LA(1) )
        	            {
        	                case OPTIONALLY_SYMBOL:
        	                	{
        	                		alt913=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt913)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3268:4: OPTIONALLY_SYMBOL
        	        	    {
        	        	        OPTIONALLY_SYMBOL3181 = (pANTLR3_COMMON_TOKEN) MATCHT(OPTIONALLY_SYMBOL, &FOLLOW_OPTIONALLY_SYMBOL_in_field_term16727);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefield_termEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        OPTIONALLY_SYMBOL3181_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPTIONALLY_SYMBOL3181));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, OPTIONALLY_SYMBOL3181_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        ENCLOSED_SYMBOL3182 = (pANTLR3_COMMON_TOKEN) MATCHT(ENCLOSED_SYMBOL, &FOLLOW_ENCLOSED_SYMBOL_in_field_term16730);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefield_termEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ENCLOSED_SYMBOL3182_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ENCLOSED_SYMBOL3182));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ENCLOSED_SYMBOL3182_tree);
        	        }

        	        BY_SYMBOL3183 = (pANTLR3_COMMON_TOKEN) MATCHT(BY_SYMBOL, &FOLLOW_BY_SYMBOL_in_field_term16732);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefield_termEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BY_SYMBOL3183_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BY_SYMBOL3183));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BY_SYMBOL3183_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_in_field_term16734);
        	        text_string3184=text_string(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefield_termEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string3184.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:3269:4: ESCAPED_SYMBOL BY_SYMBOL text_string
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ESCAPED_SYMBOL3185 = (pANTLR3_COMMON_TOKEN) MATCHT(ESCAPED_SYMBOL, &FOLLOW_ESCAPED_SYMBOL_in_field_term16739);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefield_termEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ESCAPED_SYMBOL3185_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ESCAPED_SYMBOL3185));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ESCAPED_SYMBOL3185_tree);
        	        }

        	        BY_SYMBOL3186 = (pANTLR3_COMMON_TOKEN) MATCHT(BY_SYMBOL, &FOLLOW_BY_SYMBOL_in_field_term16741);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefield_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_field_term16743);
        	        text_string3187=text_string(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefield_termEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string3187.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:3272: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_SYMBOL3188;
    MySQLParser_line_term_return line_term3189;
    #undef	RETURN_TYPE_line_term3189
    #define	RETURN_TYPE_line_term3189 MySQLParser_line_term_return

    pANTLR3_BASE_TREE LINES_SYMBOL3188_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    LINES_SYMBOL3188       = NULL;
    line_term3189.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    LINES_SYMBOL3188_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3272:13: ( LINES_SYMBOL ( line_term )+ )
        // MySQL.g:3273:2: LINES_SYMBOL ( line_term )+
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            LINES_SYMBOL3188 = (pANTLR3_COMMON_TOKEN) MATCHT(LINES_SYMBOL, &FOLLOW_LINES_SYMBOL_in_lines_clause16752);
            if  (HASEXCEPTION())
            {
                goto rulelines_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            LINES_SYMBOL3188_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LINES_SYMBOL3188));
            ADAPTOR->addChild(ADAPTOR, root_0, LINES_SYMBOL3188_tree);
            }

            // MySQL.g:3273:15: ( line_term )+
            {
                int cnt915=0;

                for (;;)
                {
                    int alt915=2;
            	switch ( LA(1) )
            	{
            	case STARTING_SYMBOL:
            	case TERMINATED_SYMBOL:
            		{
            			alt915=1;
            		}
            	    break;

            	}

            	switch (alt915)
            	{
            	    case 1:
            	        // MySQL.g:3273:15: line_term
            	        {
            	            FOLLOWPUSH(FOLLOW_line_term_in_lines_clause16754);
            	            line_term3189=line_term(ctx);

            	            FOLLOWPOP();
            	            if  (HASEXCEPTION())
            	            {
            	                goto rulelines_clauseEx;
            	            }
            	            if (HASFAILED())
            	            {
            	                return retval;
            	            }

            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, line_term3189.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 rulelines_clauseEx;
            	}
            	cnt915++;
                }
                loop915: ;	/* 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:3276: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    set3190;
    pANTLR3_COMMON_TOKEN    BY_SYMBOL3191;
    MySQLParser_text_string_return text_string3192;
    #undef	RETURN_TYPE_text_string3192
    #define	RETURN_TYPE_text_string3192 MySQLParser_text_string_return

    pANTLR3_BASE_TREE set3190_tree;
    pANTLR3_BASE_TREE BY_SYMBOL3191_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set3190       = NULL;
    BY_SYMBOL3191       = NULL;
    text_string3192.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set3190_tree   = NULL;
    BY_SYMBOL3191_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3276:10: ( ( TERMINATED_SYMBOL | STARTING_SYMBOL ) BY_SYMBOL text_string )
        // MySQL.g:3277:2: ( TERMINATED_SYMBOL | STARTING_SYMBOL ) BY_SYMBOL text_string
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set3190=(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, set3190))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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_SYMBOL3191 = (pANTLR3_COMMON_TOKEN) MATCHT(BY_SYMBOL, &FOLLOW_BY_SYMBOL_in_line_term16772);
            if  (HASEXCEPTION())
            {
                goto ruleline_termEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            BY_SYMBOL3191_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BY_SYMBOL3191));
            ADAPTOR->addChild(ADAPTOR, root_0, BY_SYMBOL3191_tree);
            }

            FOLLOWPUSH(FOLLOW_text_string_in_line_term16774);
            text_string3192=text_string(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleline_termEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string3192.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:3280: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_SYMBOL3194;
    MySQLParser_user_return user3193;
    #undef	RETURN_TYPE_user3193
    #define	RETURN_TYPE_user3193 MySQLParser_user_return

    MySQLParser_user_return user3195;
    #undef	RETURN_TYPE_user3195
    #define	RETURN_TYPE_user3195 MySQLParser_user_return

    pANTLR3_BASE_TREE COMMA_SYMBOL3194_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL3194       = NULL;
    user3193.tree = NULL;

    user3195.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL3194_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3280:10: ( user ( COMMA_SYMBOL user )* )
        // MySQL.g:3281:2: user ( COMMA_SYMBOL user )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_user_in_user_list16783);
            user3193=user(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleuser_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user3193.tree);

            // MySQL.g:3281:7: ( COMMA_SYMBOL user )*

            for (;;)
            {
                int alt916=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt916=1;
                	}
                    break;

                }

                switch (alt916)
                {
            	case 1:
            	    // MySQL.g:3281:8: COMMA_SYMBOL user
            	    {
            	        COMMA_SYMBOL3194 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_user_list16786);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleuser_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL3194_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL3194));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL3194_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_user_in_user_list16788);
            	        user3195=user(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleuser_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user3195.tree);

            	    }
            	    break;

            	default:
            	    goto loop916;	/* break out of the loop */
            	    break;
                }
            }
            loop916: ; /* 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:3284: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_SYMBOL3197;
    MySQLParser_grant_user_return grant_user3196;
    #undef	RETURN_TYPE_grant_user3196
    #define	RETURN_TYPE_grant_user3196 MySQLParser_grant_user_return

    MySQLParser_grant_user_return grant_user3198;
    #undef	RETURN_TYPE_grant_user3198
    #define	RETURN_TYPE_grant_user3198 MySQLParser_grant_user_return

    pANTLR3_BASE_TREE COMMA_SYMBOL3197_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL3197       = NULL;
    grant_user3196.tree = NULL;

    grant_user3198.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL3197_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3284:11: ( grant_user ( COMMA_SYMBOL grant_user )* )
        // MySQL.g:3285:2: grant_user ( COMMA_SYMBOL grant_user )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_grant_user_in_grant_list16799);
            grant_user3196=grant_user(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulegrant_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, grant_user3196.tree);

            // MySQL.g:3285:13: ( COMMA_SYMBOL grant_user )*

            for (;;)
            {
                int alt917=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt917=1;
                	}
                    break;

                }

                switch (alt917)
                {
            	case 1:
            	    // MySQL.g:3285:14: COMMA_SYMBOL grant_user
            	    {
            	        COMMA_SYMBOL3197 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_grant_list16802);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulegrant_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL3197_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL3197));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL3197_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_grant_user_in_grant_list16804);
            	        grant_user3198=grant_user(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulegrant_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, grant_user3198.tree);

            	    }
            	    break;

            	default:
            	    goto loop917;	/* break out of the loop */
            	    break;
                }
            }
            loop917: ; /* 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:3288: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_SYMBOL3200;
    pANTLR3_COMMON_TOKEN    BY_SYMBOL3201;
    pANTLR3_COMMON_TOKEN    PASSWORD_SYMBOL3202;
    pANTLR3_COMMON_TOKEN    WITH_SYMBOL3204;
    pANTLR3_COMMON_TOKEN    AS_SYMBOL3206;
    pANTLR3_COMMON_TOKEN    BY_SYMBOL3207;
    MySQLParser_user_return user3199;
    #undef	RETURN_TYPE_user3199
    #define	RETURN_TYPE_user3199 MySQLParser_user_return

    MySQLParser_text_string_return text_string3203;
    #undef	RETURN_TYPE_text_string3203
    #define	RETURN_TYPE_text_string3203 MySQLParser_text_string_return

    MySQLParser_text_or_identifier_return text_or_identifier3205;
    #undef	RETURN_TYPE_text_or_identifier3205
    #define	RETURN_TYPE_text_or_identifier3205 MySQLParser_text_or_identifier_return

    MySQLParser_text_string_return text_string3208;
    #undef	RETURN_TYPE_text_string3208
    #define	RETURN_TYPE_text_string3208 MySQLParser_text_string_return

    pANTLR3_BASE_TREE IDENTIFIED_SYMBOL3200_tree;
    pANTLR3_BASE_TREE BY_SYMBOL3201_tree;
    pANTLR3_BASE_TREE PASSWORD_SYMBOL3202_tree;
    pANTLR3_BASE_TREE WITH_SYMBOL3204_tree;
    pANTLR3_BASE_TREE AS_SYMBOL3206_tree;
    pANTLR3_BASE_TREE BY_SYMBOL3207_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    IDENTIFIED_SYMBOL3200       = NULL;
    BY_SYMBOL3201       = NULL;
    PASSWORD_SYMBOL3202       = NULL;
    WITH_SYMBOL3204       = NULL;
    AS_SYMBOL3206       = NULL;
    BY_SYMBOL3207       = NULL;
    user3199.tree = NULL;

    text_string3203.tree = NULL;

    text_or_identifier3205.tree = NULL;

    text_string3208.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    IDENTIFIED_SYMBOL3200_tree   = NULL;
    BY_SYMBOL3201_tree   = NULL;
    PASSWORD_SYMBOL3202_tree   = NULL;
    WITH_SYMBOL3204_tree   = NULL;
    AS_SYMBOL3206_tree   = NULL;
    BY_SYMBOL3207_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3288:11: ( user ( IDENTIFIED_SYMBOL ( BY_SYMBOL ( PASSWORD_SYMBOL )? text_string |{...}? WITH_SYMBOL text_or_identifier ( ( AS_SYMBOL |{...}? BY_SYMBOL ) text_string )? ) )? )
        // MySQL.g:3289: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_user16815);
            user3199=user(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulegrant_userEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user3199.tree);

            // MySQL.g:3290:2: ( IDENTIFIED_SYMBOL ( BY_SYMBOL ( PASSWORD_SYMBOL )? text_string |{...}? WITH_SYMBOL text_or_identifier ( ( AS_SYMBOL |{...}? BY_SYMBOL ) text_string )? ) )?
            {
                int alt922=2;
                switch ( LA(1) )
                {
                    case IDENTIFIED_SYMBOL:
                    	{
                    		alt922=1;
                    	}
                        break;
                }

                switch (alt922)
                {
            	case 1:
            	    // MySQL.g:3291:3: IDENTIFIED_SYMBOL ( BY_SYMBOL ( PASSWORD_SYMBOL )? text_string |{...}? WITH_SYMBOL text_or_identifier ( ( AS_SYMBOL |{...}? BY_SYMBOL ) text_string )? )
            	    {
            	        IDENTIFIED_SYMBOL3200 = (pANTLR3_COMMON_TOKEN) MATCHT(IDENTIFIED_SYMBOL, &FOLLOW_IDENTIFIED_SYMBOL_in_grant_user16822);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulegrant_userEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        IDENTIFIED_SYMBOL3200_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IDENTIFIED_SYMBOL3200));
            	        ADAPTOR->addChild(ADAPTOR, root_0, IDENTIFIED_SYMBOL3200_tree);
            	        }

            	        // MySQL.g:3292:3: ( BY_SYMBOL ( PASSWORD_SYMBOL )? text_string |{...}? WITH_SYMBOL text_or_identifier ( ( AS_SYMBOL |{...}? BY_SYMBOL ) text_string )? )
            	        {
            	            int alt921=2;
            	            switch ( LA(1) )
            	            {
            	            case BY_SYMBOL:
            	            	{
            	            		alt921=1;
            	            	}
            	                break;
            	            case WITH_SYMBOL:
            	            	{
            	            		alt921=2;
            	            	}
            	                break;

            	            default:
            	                if (BACKTRACKING>0)
            	                {
            	                    FAILEDFLAG = ANTLR3_TRUE;
            	                    return retval;
            	                }

            	                CONSTRUCTEX();
            	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                EXCEPTION->message      = (void *)"";
            	                EXCEPTION->decisionNum  = 921;
            	                EXCEPTION->state        = 0;


            	                goto rulegrant_userEx;

            	            }

            	            switch (alt921)
            	            {
            	        	case 1:
            	        	    // MySQL.g:3293:4: BY_SYMBOL ( PASSWORD_SYMBOL )? text_string
            	        	    {
            	        	        BY_SYMBOL3201 = (pANTLR3_COMMON_TOKEN) MATCHT(BY_SYMBOL, &FOLLOW_BY_SYMBOL_in_grant_user16831);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulegrant_userEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        BY_SYMBOL3201_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BY_SYMBOL3201));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, BY_SYMBOL3201_tree);
            	        	        }

            	        	        // MySQL.g:3293:14: ( PASSWORD_SYMBOL )?
            	        	        {
            	        	            int alt918=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case PASSWORD_SYMBOL:
            	        	                	{
            	        	                		alt918=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt918)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:3293:14: PASSWORD_SYMBOL
            	        	        	    {
            	        	        	        PASSWORD_SYMBOL3202 = (pANTLR3_COMMON_TOKEN) MATCHT(PASSWORD_SYMBOL, &FOLLOW_PASSWORD_SYMBOL_in_grant_user16833);
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulegrant_userEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) {
            	        	        	        PASSWORD_SYMBOL3202_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PASSWORD_SYMBOL3202));
            	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, PASSWORD_SYMBOL3202_tree);
            	        	        	        }

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_text_string_in_grant_user16836);
            	        	        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;
            	        	case 2:
            	        	    // MySQL.g:3294: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_SYMBOL3204 = (pANTLR3_COMMON_TOKEN) MATCHT(WITH_SYMBOL, &FOLLOW_WITH_SYMBOL_in_grant_user16845);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulegrant_userEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        WITH_SYMBOL3204_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WITH_SYMBOL3204));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, WITH_SYMBOL3204_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_text_or_identifier_in_grant_user16847);
            	        	        text_or_identifier3205=text_or_identifier(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulegrant_userEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_or_identifier3205.tree);

            	        	        // MySQL.g:3294:64: ( ( AS_SYMBOL |{...}? BY_SYMBOL ) text_string )?
            	        	        {
            	        	            int alt920=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case BY_SYMBOL:
            	        	                case AS_SYMBOL:
            	        	                	{
            	        	                		alt920=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt920)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:3295:5: ( AS_SYMBOL |{...}? BY_SYMBOL ) text_string
            	        	        	    {
            	        	        	        // MySQL.g:3295:5: ( AS_SYMBOL |{...}? BY_SYMBOL )
            	        	        	        {
            	        	        	            int alt919=2;
            	        	        	            switch ( LA(1) )
            	        	        	            {
            	        	        	            case AS_SYMBOL:
            	        	        	            	{
            	        	        	            		alt919=1;
            	        	        	            	}
            	        	        	                break;
            	        	        	            case BY_SYMBOL:
            	        	        	            	{
            	        	        	            		alt919=2;
            	        	        	            	}
            	        	        	                break;

            	        	        	            default:
            	        	        	                if (BACKTRACKING>0)
            	        	        	                {
            	        	        	                    FAILEDFLAG = ANTLR3_TRUE;
            	        	        	                    return retval;
            	        	        	                }

            	        	        	                CONSTRUCTEX();
            	        	        	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	        	        	                EXCEPTION->message      = (void *)"";
            	        	        	                EXCEPTION->decisionNum  = 919;
            	        	        	                EXCEPTION->state        = 0;


            	        	        	                goto rulegrant_userEx;

            	        	        	            }

            	        	        	            switch (alt919)
            	        	        	            {
            	        	        	        	case 1:
            	        	        	        	    // MySQL.g:3295:6: AS_SYMBOL
            	        	        	        	    {
            	        	        	        	        AS_SYMBOL3206 = (pANTLR3_COMMON_TOKEN) MATCHT(AS_SYMBOL, &FOLLOW_AS_SYMBOL_in_grant_user16856);
            	        	        	        	        if  (HASEXCEPTION())
            	        	        	        	        {
            	        	        	        	            goto rulegrant_userEx;
            	        	        	        	        }
            	        	        	        	        if (HASFAILED())
            	        	        	        	        {
            	        	        	        	            return retval;
            	        	        	        	        }

            	        	        	        	        if ( BACKTRACKING==0 ) {
            	        	        	        	        AS_SYMBOL3206_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AS_SYMBOL3206));
            	        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, AS_SYMBOL3206_tree);
            	        	        	        	        }

            	        	        	        	    }
            	        	        	        	    break;
            	        	        	        	case 2:
            	        	        	        	    // MySQL.g:3295: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_SYMBOL3207 = (pANTLR3_COMMON_TOKEN) MATCHT(BY_SYMBOL, &FOLLOW_BY_SYMBOL_in_grant_user16862);
            	        	        	        	        if  (HASEXCEPTION())
            	        	        	        	        {
            	        	        	        	            goto rulegrant_userEx;
            	        	        	        	        }
            	        	        	        	        if (HASFAILED())
            	        	        	        	        {
            	        	        	        	            return retval;
            	        	        	        	        }

            	        	        	        	        if ( BACKTRACKING==0 ) {
            	        	        	        	        BY_SYMBOL3207_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BY_SYMBOL3207));
            	        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, BY_SYMBOL3207_tree);
            	        	        	        	        }

            	        	        	        	    }
            	        	        	        	    break;

            	        	        	            }
            	        	        	        }

            	        	        	        FOLLOWPUSH(FOLLOW_text_string_in_grant_user16865);
            	        	        	        text_string3208=text_string(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulegrant_userEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string3208.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:3300: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_SYMBOL3210;
    pANTLR3_COMMON_TOKEN    AT_TEXT_SUFFIX3212;
    pANTLR3_COMMON_TOKEN    CURRENT_USER_SYMBOL3213;
    MySQLParser_text_or_identifier_return text_or_identifier3209;
    #undef	RETURN_TYPE_text_or_identifier3209
    #define	RETURN_TYPE_text_or_identifier3209 MySQLParser_text_or_identifier_return

    MySQLParser_text_or_identifier_return text_or_identifier3211;
    #undef	RETURN_TYPE_text_or_identifier3211
    #define	RETURN_TYPE_text_or_identifier3211 MySQLParser_text_or_identifier_return

    MySQLParser_parentheses_return parentheses3214;
    #undef	RETURN_TYPE_parentheses3214
    #define	RETURN_TYPE_parentheses3214 MySQLParser_parentheses_return

    pANTLR3_BASE_TREE AT_SIGN_SYMBOL3210_tree;
    pANTLR3_BASE_TREE AT_TEXT_SUFFIX3212_tree;
    pANTLR3_BASE_TREE CURRENT_USER_SYMBOL3213_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    AT_SIGN_SYMBOL3210       = NULL;
    AT_TEXT_SUFFIX3212       = NULL;
    CURRENT_USER_SYMBOL3213       = NULL;
    text_or_identifier3209.tree = NULL;

    text_or_identifier3211.tree = NULL;

    parentheses3214.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    AT_SIGN_SYMBOL3210_tree   = NULL;
    AT_TEXT_SUFFIX3212_tree   = NULL;
    CURRENT_USER_SYMBOL3213_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:3300:5: ( text_or_identifier ( AT_SIGN_SYMBOL text_or_identifier | AT_TEXT_SUFFIX )? | CURRENT_USER_SYMBOL ( parentheses )? )

            ANTLR3_UINT32 alt925;

            alt925=2;

            {
                int LA925_0 = LA(1);
                if ( (((LA925_0 >= ACCOUNT_SYMBOL) && (LA925_0 <= YEAR_SYMBOL)) || LA925_0 == SINGLE_QUOTED_TEXT || LA925_0 == BACK_TICK_QUOTED_ID || LA925_0 == DOUBLE_QUOTED_TEXT || LA925_0 == IDENTIFIER))
                {
                    alt925=1;
                }
                else if ( (LA925_0 == CURRENT_USER_SYMBOL))
                {
                    alt925=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 925;
                    EXCEPTION->state        = 0;


                    goto ruleuserEx;

                }
            }
            switch (alt925)
            {
        	case 1:
        	    // MySQL.g:3301: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_user16884);
        	        text_or_identifier3209=text_or_identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleuserEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_or_identifier3209.tree);

        	        // MySQL.g:3301:21: ( AT_SIGN_SYMBOL text_or_identifier | AT_TEXT_SUFFIX )?
        	        {
        	            int alt923=3;
        	            switch ( LA(1) )
        	            {
        	                case AT_SIGN_SYMBOL:
        	                	{
        	                		alt923=1;
        	                	}
        	                    break;
        	                case AT_TEXT_SUFFIX:
        	                	{
        	                		alt923=2;
        	                	}
        	                    break;
        	            }

        	            switch (alt923)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3301:22: AT_SIGN_SYMBOL text_or_identifier
        	        	    {
        	        	        AT_SIGN_SYMBOL3210 = (pANTLR3_COMMON_TOKEN) MATCHT(AT_SIGN_SYMBOL, &FOLLOW_AT_SIGN_SYMBOL_in_user16887);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleuserEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        AT_SIGN_SYMBOL3210_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AT_SIGN_SYMBOL3210));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, AT_SIGN_SYMBOL3210_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_text_or_identifier_in_user16889);
        	        	        text_or_identifier3211=text_or_identifier(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleuserEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_or_identifier3211.tree);

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:3301:58: AT_TEXT_SUFFIX
        	        	    {
        	        	        AT_TEXT_SUFFIX3212 = (pANTLR3_COMMON_TOKEN) MATCHT(AT_TEXT_SUFFIX, &FOLLOW_AT_TEXT_SUFFIX_in_user16893);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleuserEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        AT_TEXT_SUFFIX3212_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AT_TEXT_SUFFIX3212));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, AT_TEXT_SUFFIX3212_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:3302:4: CURRENT_USER_SYMBOL ( parentheses )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CURRENT_USER_SYMBOL3213 = (pANTLR3_COMMON_TOKEN) MATCHT(CURRENT_USER_SYMBOL, &FOLLOW_CURRENT_USER_SYMBOL_in_user16900);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleuserEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CURRENT_USER_SYMBOL3213_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CURRENT_USER_SYMBOL3213));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CURRENT_USER_SYMBOL3213_tree);
        	        }

        	        // MySQL.g:3302:24: ( parentheses )?
        	        {
        	            int alt924=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt924=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt924)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3302:24: parentheses
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_parentheses_in_user16902);
        	        	        parentheses3214=parentheses(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleuserEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, parentheses3214.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:3305: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_SYMBOL3215;
    MySQLParser_text_string_return text_string3216;
    #undef	RETURN_TYPE_text_string3216
    #define	RETURN_TYPE_text_string3216 MySQLParser_text_string_return

    pANTLR3_BASE_TREE LIKE_SYMBOL3215_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    LIKE_SYMBOL3215       = NULL;
    text_string3216.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    LIKE_SYMBOL3215_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3305:12: ( LIKE_SYMBOL text_string )
        // MySQL.g:3306:2: LIKE_SYMBOL text_string
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            LIKE_SYMBOL3215 = (pANTLR3_COMMON_TOKEN) MATCHT(LIKE_SYMBOL, &FOLLOW_LIKE_SYMBOL_in_like_clause16912);
            if  (HASEXCEPTION())
            {
                goto rulelike_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            LIKE_SYMBOL3215_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LIKE_SYMBOL3215));
            ADAPTOR->addChild(ADAPTOR, root_0, LIKE_SYMBOL3215_tree);
            }

            FOLLOWPUSH(FOLLOW_text_string_in_like_clause16914);
            text_string3216=text_string(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulelike_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string3216.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:3309: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_clause3217;
    #undef	RETURN_TYPE_like_clause3217
    #define	RETURN_TYPE_like_clause3217 MySQLParser_like_clause_return

    MySQLParser_where_clause_return where_clause3218;
    #undef	RETURN_TYPE_where_clause3218
    #define	RETURN_TYPE_where_clause3218 MySQLParser_where_clause_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    like_clause3217.tree = NULL;

    where_clause3218.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:3309:14: ( like_clause | where_clause )

            ANTLR3_UINT32 alt926;

            alt926=2;

            switch ( LA(1) )
            {
            case LIKE_SYMBOL:
            	{
            		alt926=1;
            	}
                break;
            case WHERE_SYMBOL:
            	{
            		alt926=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 926;
                EXCEPTION->state        = 0;


                goto rulelike_or_whereEx;

            }

            switch (alt926)
            {
        	case 1:
        	    // MySQL.g:3310:2: like_clause
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_like_clause_in_like_or_where16923);
        	        like_clause3217=like_clause(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelike_or_whereEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, like_clause3217.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:3310:16: where_clause
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_where_clause_in_like_or_where16927);
        	        where_clause3218=where_clause(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelike_or_whereEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, where_clause3218.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:3313: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    set3219;

    pANTLR3_BASE_TREE set3219_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set3219       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set3219_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3313:14: ({...}? ( ONLINE_SYMBOL | OFFLINE_SYMBOL ) )
        // MySQL.g:3314: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";


            }

            set3219=(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, set3219))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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:3317: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_SYMBOL3220;
    pANTLR3_COMMON_TOKEN    NO_WRITE_TO_BINLOG_SYMBOL3221;

    pANTLR3_BASE_TREE LOCAL_SYMBOL3220_tree;
    pANTLR3_BASE_TREE NO_WRITE_TO_BINLOG_SYMBOL3221_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    LOCAL_SYMBOL3220       = NULL;
    NO_WRITE_TO_BINLOG_SYMBOL3221       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    LOCAL_SYMBOL3220_tree   = NULL;
    NO_WRITE_TO_BINLOG_SYMBOL3221_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:3317:20: ({...}? => LOCAL_SYMBOL | NO_WRITE_TO_BINLOG_SYMBOL )

            ANTLR3_UINT32 alt927;

            alt927=2;

            {
                int LA927_0 = LA(1);
                if ( ((LA(1) == LOCAL_SYMBOL)) && (LA927_0 == LOCAL_SYMBOL))
                {
                    alt927=1;
                }
                else if ( (LA927_0 == NO_WRITE_TO_BINLOG_SYMBOL))
                {
                    alt927=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 927;
                    EXCEPTION->state        = 0;


                    goto ruleno_write_to_bin_logEx;

                }
            }
            switch (alt927)
            {
        	case 1:
        	    // MySQL.g:3318: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_SYMBOL3220 = (pANTLR3_COMMON_TOKEN) MATCHT(LOCAL_SYMBOL, &FOLLOW_LOCAL_SYMBOL_in_no_write_to_bin_log16957);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleno_write_to_bin_logEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LOCAL_SYMBOL3220_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOCAL_SYMBOL3220));
        	        ADAPTOR->addChild(ADAPTOR, root_0, LOCAL_SYMBOL3220_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:3319:4: NO_WRITE_TO_BINLOG_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NO_WRITE_TO_BINLOG_SYMBOL3221 = (pANTLR3_COMMON_TOKEN) MATCHT(NO_WRITE_TO_BINLOG_SYMBOL, &FOLLOW_NO_WRITE_TO_BINLOG_SYMBOL_in_no_write_to_bin_log16963);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleno_write_to_bin_logEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NO_WRITE_TO_BINLOG_SYMBOL3221_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NO_WRITE_TO_BINLOG_SYMBOL3221));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NO_WRITE_TO_BINLOG_SYMBOL3221_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:3322: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_SYMBOL3222;
    MySQLParser_identifier_list_with_parentheses_return identifier_list_with_parentheses3223;
    #undef	RETURN_TYPE_identifier_list_with_parentheses3223
    #define	RETURN_TYPE_identifier_list_with_parentheses3223 MySQLParser_identifier_list_with_parentheses_return

    pANTLR3_BASE_TREE PARTITION_SYMBOL3222_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    PARTITION_SYMBOL3222       = NULL;
    identifier_list_with_parentheses3223.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    PARTITION_SYMBOL3222_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3322:14: ({...}? => PARTITION_SYMBOL identifier_list_with_parentheses )
        // MySQL.g:3323: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_SYMBOL3222 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITION_SYMBOL, &FOLLOW_PARTITION_SYMBOL_in_use_partition16976);
            if  (HASEXCEPTION())
            {
                goto ruleuse_partitionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            PARTITION_SYMBOL3222_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARTITION_SYMBOL3222));
            ADAPTOR->addChild(ADAPTOR, root_0, PARTITION_SYMBOL3222_tree);
            }

            FOLLOWPUSH(FOLLOW_identifier_list_with_parentheses_in_use_partition16978);
            identifier_list_with_parentheses3223=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_parentheses3223.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:3334: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 identifier3224;
    #undef	RETURN_TYPE_identifier3224
    #define	RETURN_TYPE_identifier3224 MySQLParser_identifier_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    identifier3224.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:3334:12: ( identifier -> ^( COLUMN_NAME_TOKEN identifier ) )
        // MySQL.g:3335:2: identifier
        {
            FOLLOWPUSH(FOLLOW_identifier_in_column_name16995);
            identifier3224=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecolumn_nameEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_identifier; stream_identifier->add(stream_identifier, identifier3224.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;
            	// 3335:13: -> ^( COLUMN_NAME_TOKEN identifier )
            	{
            	    // MySQL.g:3335: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:3338: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_variants3225;
    #undef	RETURN_TYPE_column_ref_variants3225
    #define	RETURN_TYPE_column_ref_variants3225 MySQLParser_column_ref_variants_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_column_ref_variants;
    /* Initialize rule variables
     */

    root_0 = NULL;

    column_ref_variants3225.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:3338:11: ( column_ref_variants -> ^( COLUMN_REF_TOKEN column_ref_variants ) )
        // MySQL.g:3339:2: column_ref_variants
        {
            FOLLOWPUSH(FOLLOW_column_ref_variants_in_column_ref17012);
            column_ref_variants3225=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_variants3225.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;
            	// 3339:22: -> ^( COLUMN_REF_TOKEN column_ref_variants )
            	{
            	    // MySQL.g:3339: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:3343:1: column_ref_variants : ( dot_identifier | qualified_identifier ( options {greedy=true; } : dot_identifier )? );
 */
static MySQLParser_column_ref_variants_return
column_ref_variants(pMySQLParser ctx)
{
    MySQLParser_column_ref_variants_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_dot_identifier_return dot_identifier3226;
    #undef	RETURN_TYPE_dot_identifier3226
    #define	RETURN_TYPE_dot_identifier3226 MySQLParser_dot_identifier_return

    MySQLParser_qualified_identifier_return qualified_identifier3227;
    #undef	RETURN_TYPE_qualified_identifier3227
    #define	RETURN_TYPE_qualified_identifier3227 MySQLParser_qualified_identifier_return

    MySQLParser_dot_identifier_return dot_identifier3228;
    #undef	RETURN_TYPE_dot_identifier3228
    #define	RETURN_TYPE_dot_identifier3228 MySQLParser_dot_identifier_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    dot_identifier3226.tree = NULL;

    qualified_identifier3227.tree = NULL;

    dot_identifier3228.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:3343:20: ( dot_identifier | qualified_identifier ( options {greedy=true; } : dot_identifier )? )

            ANTLR3_UINT32 alt929;

            alt929=2;

            {
                int LA929_0 = LA(1);
                if ( (LA929_0 == DOT_SYMBOL))
                {
                    alt929=1;
                }
                else if ( (((LA929_0 >= ACCOUNT_SYMBOL) && (LA929_0 <= YEAR_SYMBOL)) || LA929_0 == BACK_TICK_QUOTED_ID || LA929_0 == DOUBLE_QUOTED_TEXT || LA929_0 == IDENTIFIER))
                {
                    alt929=2;
                }
                else
                {
                    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 rulecolumn_ref_variantsEx;

                }
            }
            switch (alt929)
            {
        	case 1:
        	    // MySQL.g:3344:2: dot_identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_dot_identifier_in_column_ref_variants17030);
        	        dot_identifier3226=dot_identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecolumn_ref_variantsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, dot_identifier3226.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:3345:4: qualified_identifier ( options {greedy=true; } : dot_identifier )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_qualified_identifier_in_column_ref_variants17035);
        	        qualified_identifier3227=qualified_identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecolumn_ref_variantsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, qualified_identifier3227.tree);

        	        // MySQL.g:3345:25: ( options {greedy=true; } : dot_identifier )?
        	        {
        	            int alt928=2;
        	            switch ( LA(1) )
        	            {
        	                case DOT_SYMBOL:
        	                	{
        	                		alt928=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt928)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3345:54: dot_identifier
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_dot_identifier_in_column_ref_variants17050);
        	        	        dot_identifier3228=dot_identifier(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecolumn_ref_variantsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, dot_identifier3228.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:3348: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_variants3229;
    #undef	RETURN_TYPE_column_ref_variants3229
    #define	RETURN_TYPE_column_ref_variants3229 MySQLParser_column_ref_variants_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_column_ref_variants;
    /* Initialize rule variables
     */

    root_0 = NULL;

    column_ref_variants3229.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:3348:20: ( column_ref_variants -> ^( COLUMN_INTERNAL_REF_TOKEN column_ref_variants ) )
        // MySQL.g:3349:2: column_ref_variants
        {
            FOLLOWPUSH(FOLLOW_column_ref_variants_in_column_internal_ref17061);
            column_ref_variants3229=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_variants3229.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;
            	// 3349:22: -> ^( COLUMN_INTERNAL_REF_TOKEN column_ref_variants )
            	{
            	    // MySQL.g:3349: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:3352: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_wildcard23230;
    #undef	RETURN_TYPE_column_ref_with_wildcard23230
    #define	RETURN_TYPE_column_ref_with_wildcard23230 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_wildcard23230.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:3352:25: ( column_ref_with_wildcard2 -> ^( COLUMN_REF_TOKEN column_ref_with_wildcard2 ) )
        // MySQL.g:3353:2: column_ref_with_wildcard2
        {
            FOLLOWPUSH(FOLLOW_column_ref_with_wildcard2_in_column_ref_with_wildcard17078);
            column_ref_with_wildcard23230=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_wildcard23230.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;
            	// 3353:28: -> ^( COLUMN_REF_TOKEN column_ref_with_wildcard2 )
            	{
            	    // MySQL.g:3353: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:3356:1: column_ref_with_wildcard2 : identifier ({...}? DOT_SYMBOL MULT_OPERATOR | dot_identifier ({...}? DOT_SYMBOL MULT_OPERATOR | dot_identifier )? )? ;
 */
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_SYMBOL3232;
    pANTLR3_COMMON_TOKEN    MULT_OPERATOR3233;
    pANTLR3_COMMON_TOKEN    DOT_SYMBOL3235;
    pANTLR3_COMMON_TOKEN    MULT_OPERATOR3236;
    MySQLParser_identifier_return identifier3231;
    #undef	RETURN_TYPE_identifier3231
    #define	RETURN_TYPE_identifier3231 MySQLParser_identifier_return

    MySQLParser_dot_identifier_return dot_identifier3234;
    #undef	RETURN_TYPE_dot_identifier3234
    #define	RETURN_TYPE_dot_identifier3234 MySQLParser_dot_identifier_return

    MySQLParser_dot_identifier_return dot_identifier3237;
    #undef	RETURN_TYPE_dot_identifier3237
    #define	RETURN_TYPE_dot_identifier3237 MySQLParser_dot_identifier_return

    pANTLR3_BASE_TREE DOT_SYMBOL3232_tree;
    pANTLR3_BASE_TREE MULT_OPERATOR3233_tree;
    pANTLR3_BASE_TREE DOT_SYMBOL3235_tree;
    pANTLR3_BASE_TREE MULT_OPERATOR3236_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DOT_SYMBOL3232       = NULL;
    MULT_OPERATOR3233       = NULL;
    DOT_SYMBOL3235       = NULL;
    MULT_OPERATOR3236       = NULL;
    identifier3231.tree = NULL;

    dot_identifier3234.tree = NULL;

    dot_identifier3237.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DOT_SYMBOL3232_tree   = NULL;
    MULT_OPERATOR3233_tree   = NULL;
    DOT_SYMBOL3235_tree   = NULL;
    MULT_OPERATOR3236_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3356:26: ( identifier ({...}? DOT_SYMBOL MULT_OPERATOR | dot_identifier ({...}? DOT_SYMBOL MULT_OPERATOR | dot_identifier )? )? )
        // MySQL.g:3357:2: identifier ({...}? DOT_SYMBOL MULT_OPERATOR | dot_identifier ({...}? DOT_SYMBOL MULT_OPERATOR | dot_identifier )? )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_identifier_in_column_ref_with_wildcard217095);
            identifier3231=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecolumn_ref_with_wildcard2Ex;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier3231.tree);

            // MySQL.g:3358:2: ({...}? DOT_SYMBOL MULT_OPERATOR | dot_identifier ({...}? DOT_SYMBOL MULT_OPERATOR | dot_identifier )? )?
            {
                int alt931=3;
                switch ( LA(1) )
                {
                    case DOT_SYMBOL:
                    	{
                    		{
                    		    int LA931_1 = LA(2);
                    		    if ( (LA931_1 == MULT_OPERATOR))
                    		    {
                    		        alt931=1;
                    		    }
                    		    else if ( (((LA931_1 >= ACCOUNT_SYMBOL) && (LA931_1 <= YEAR_SYMBOL)) || LA931_1 == BACK_TICK_QUOTED_ID || LA931_1 == DOUBLE_QUOTED_TEXT || LA931_1 == IDENTIFIER))
                    		    {
                    		        alt931=2;
                    		    }
                    		}
                    	}
                        break;
                }

                switch (alt931)
                {
            	case 1:
            	    // MySQL.g:3359:3: {...}? DOT_SYMBOL MULT_OPERATOR
            	    {
            	        if ( !((LA(2) ==  MULT_OPERATOR)) )
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	                CONSTRUCTEX();
            	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
            	                EXCEPTION->message      = (void *)"LA(2) ==  MULT_OPERATOR";
            	                EXCEPTION->ruleName	 = (void *)"column_ref_with_wildcard2";


            	        }

            	        DOT_SYMBOL3232 = (pANTLR3_COMMON_TOKEN) MATCHT(DOT_SYMBOL, &FOLLOW_DOT_SYMBOL_in_column_ref_with_wildcard217104);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecolumn_ref_with_wildcard2Ex;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DOT_SYMBOL3232_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DOT_SYMBOL3232));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DOT_SYMBOL3232_tree);
            	        }

            	        MULT_OPERATOR3233 = (pANTLR3_COMMON_TOKEN) MATCHT(MULT_OPERATOR, &FOLLOW_MULT_OPERATOR_in_column_ref_with_wildcard217106);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecolumn_ref_with_wildcard2Ex;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        MULT_OPERATOR3233_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MULT_OPERATOR3233));
            	        ADAPTOR->addChild(ADAPTOR, root_0, MULT_OPERATOR3233_tree);
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:3360:5: dot_identifier ({...}? DOT_SYMBOL MULT_OPERATOR | dot_identifier )?
            	    {
            	        FOLLOWPUSH(FOLLOW_dot_identifier_in_column_ref_with_wildcard217112);
            	        dot_identifier3234=dot_identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecolumn_ref_with_wildcard2Ex;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, dot_identifier3234.tree);

            	        // MySQL.g:3361:3: ({...}? DOT_SYMBOL MULT_OPERATOR | dot_identifier )?
            	        {
            	            int alt930=3;
            	            switch ( LA(1) )
            	            {
            	                case DOT_SYMBOL:
            	                	{
            	                		{
            	                		    int LA930_1 = LA(2);
            	                		    if ( (LA930_1 == MULT_OPERATOR))
            	                		    {
            	                		        alt930=1;
            	                		    }
            	                		    else if ( (((LA930_1 >= ACCOUNT_SYMBOL) && (LA930_1 <= YEAR_SYMBOL)) || LA930_1 == BACK_TICK_QUOTED_ID || LA930_1 == DOUBLE_QUOTED_TEXT || LA930_1 == IDENTIFIER))
            	                		    {
            	                		        alt930=2;
            	                		    }
            	                		}
            	                	}
            	                    break;
            	            }

            	            switch (alt930)
            	            {
            	        	case 1:
            	        	    // MySQL.g:3362:4: {...}? DOT_SYMBOL MULT_OPERATOR
            	        	    {
            	        	        if ( !((LA(2) ==  MULT_OPERATOR)) )
            	        	        {
            	        	            if (BACKTRACKING>0)
            	        	            {
            	        	                FAILEDFLAG = ANTLR3_TRUE;
            	        	                return retval;
            	        	            }

            	        	                CONSTRUCTEX();
            	        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
            	        	                EXCEPTION->message      = (void *)"LA(2) ==  MULT_OPERATOR";
            	        	                EXCEPTION->ruleName	 = (void *)"column_ref_with_wildcard2";


            	        	        }

            	        	        DOT_SYMBOL3235 = (pANTLR3_COMMON_TOKEN) MATCHT(DOT_SYMBOL, &FOLLOW_DOT_SYMBOL_in_column_ref_with_wildcard217123);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecolumn_ref_with_wildcard2Ex;
            	        	        }
            	        	        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_column_ref_with_wildcard217125);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecolumn_ref_with_wildcard2Ex;
            	        	        }
            	        	        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);
            	        	        }

            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:3363:6: dot_identifier
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_dot_identifier_in_column_ref_with_wildcard217132);
            	        	        dot_identifier3237=dot_identifier(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecolumn_ref_with_wildcard2Ex;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, dot_identifier3237.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:3368: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 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:3368:11: ( identifier -> ^( INDEX_NAME_TOKEN identifier ) )
        // MySQL.g:3369:2: identifier
        {
            FOLLOWPUSH(FOLLOW_identifier_in_index_name17150);
            identifier3238=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleindex_nameEx;
            }
            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;
            	// 3369:13: -> ^( INDEX_NAME_TOKEN identifier )
            	{
            	    // MySQL.g:3369: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:3372: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 identifier3239;
    #undef	RETURN_TYPE_identifier3239
    #define	RETURN_TYPE_identifier3239 MySQLParser_identifier_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    identifier3239.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:3372:10: ( identifier -> ^( INDEX_REF_TOKEN identifier ) )
        // MySQL.g:3373:2: identifier
        {
            FOLLOWPUSH(FOLLOW_identifier_in_index_ref17167);
            identifier3239=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleindex_refEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_identifier; stream_identifier->add(stream_identifier, identifier3239.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;
            	// 3373:13: -> ^( INDEX_REF_TOKEN identifier )
            	{
            	    // MySQL.g:3373: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:3376:1: table_wild : identifier ({...}? DOT_SYMBOL MULT_OPERATOR | dot_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_SYMBOL3241;
    pANTLR3_COMMON_TOKEN    MULT_OPERATOR3242;
    pANTLR3_COMMON_TOKEN    DOT_SYMBOL3244;
    pANTLR3_COMMON_TOKEN    MULT_OPERATOR3245;
    MySQLParser_identifier_return identifier3240;
    #undef	RETURN_TYPE_identifier3240
    #define	RETURN_TYPE_identifier3240 MySQLParser_identifier_return

    MySQLParser_dot_identifier_return dot_identifier3243;
    #undef	RETURN_TYPE_dot_identifier3243
    #define	RETURN_TYPE_dot_identifier3243 MySQLParser_dot_identifier_return

    pANTLR3_BASE_TREE DOT_SYMBOL3241_tree;
    pANTLR3_BASE_TREE MULT_OPERATOR3242_tree;
    pANTLR3_BASE_TREE DOT_SYMBOL3244_tree;
    pANTLR3_BASE_TREE MULT_OPERATOR3245_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DOT_SYMBOL3241       = NULL;
    MULT_OPERATOR3242       = NULL;
    DOT_SYMBOL3244       = NULL;
    MULT_OPERATOR3245       = NULL;
    identifier3240.tree = NULL;

    dot_identifier3243.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DOT_SYMBOL3241_tree   = NULL;
    MULT_OPERATOR3242_tree   = NULL;
    DOT_SYMBOL3244_tree   = NULL;
    MULT_OPERATOR3245_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3376:11: ( identifier ({...}? DOT_SYMBOL MULT_OPERATOR | dot_identifier DOT_SYMBOL MULT_OPERATOR ) )
        // MySQL.g:3377:2: identifier ({...}? DOT_SYMBOL MULT_OPERATOR | dot_identifier DOT_SYMBOL MULT_OPERATOR )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_identifier_in_table_wild17184);
            identifier3240=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruletable_wildEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier3240.tree);

            // MySQL.g:3378:2: ({...}? DOT_SYMBOL MULT_OPERATOR | dot_identifier DOT_SYMBOL MULT_OPERATOR )
            {
                int alt932=2;
                switch ( LA(1) )
                {
                case DOT_SYMBOL:
                	{
                		{
                		    int LA932_1 = LA(2);
                		    if ( (LA932_1 == MULT_OPERATOR))
                		    {
                		        alt932=1;
                		    }
                		    else if ( (((LA932_1 >= ACCOUNT_SYMBOL) && (LA932_1 <= YEAR_SYMBOL)) || LA932_1 == BACK_TICK_QUOTED_ID || LA932_1 == DOUBLE_QUOTED_TEXT || LA932_1 == 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        = 1;


                		        goto ruletable_wildEx;

                		    }
                		}
                	}
                    break;

                default:
                    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 ruletable_wildEx;

                }

                switch (alt932)
                {
            	case 1:
            	    // MySQL.g:3379:3: {...}? DOT_SYMBOL MULT_OPERATOR
            	    {
            	        if ( !((LA(2) ==  MULT_OPERATOR)) )
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	                CONSTRUCTEX();
            	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
            	                EXCEPTION->message      = (void *)"LA(2) ==  MULT_OPERATOR";
            	                EXCEPTION->ruleName	 = (void *)"table_wild";


            	        }

            	        DOT_SYMBOL3241 = (pANTLR3_COMMON_TOKEN) MATCHT(DOT_SYMBOL, &FOLLOW_DOT_SYMBOL_in_table_wild17193);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_wildEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DOT_SYMBOL3241_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DOT_SYMBOL3241));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DOT_SYMBOL3241_tree);
            	        }

            	        MULT_OPERATOR3242 = (pANTLR3_COMMON_TOKEN) MATCHT(MULT_OPERATOR, &FOLLOW_MULT_OPERATOR_in_table_wild17195);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_wildEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        MULT_OPERATOR3242_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MULT_OPERATOR3242));
            	        ADAPTOR->addChild(ADAPTOR, root_0, MULT_OPERATOR3242_tree);
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:3380:5: dot_identifier DOT_SYMBOL MULT_OPERATOR
            	    {
            	        FOLLOWPUSH(FOLLOW_dot_identifier_in_table_wild17201);
            	        dot_identifier3243=dot_identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_wildEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, dot_identifier3243.tree);

            	        DOT_SYMBOL3244 = (pANTLR3_COMMON_TOKEN) MATCHT(DOT_SYMBOL, &FOLLOW_DOT_SYMBOL_in_table_wild17203);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_wildEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DOT_SYMBOL3244_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DOT_SYMBOL3244));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DOT_SYMBOL3244_tree);
            	        }

            	        MULT_OPERATOR3245 = (pANTLR3_COMMON_TOKEN) MATCHT(MULT_OPERATOR, &FOLLOW_MULT_OPERATOR_in_table_wild17205);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_wildEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        MULT_OPERATOR3245_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MULT_OPERATOR3245));
            	        ADAPTOR->addChild(ADAPTOR, root_0, MULT_OPERATOR3245_tree);
            	        }

            	    }
            	    break;

                }
            }

        }

    }

    // 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:3384: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 identifier3246;
    #undef	RETURN_TYPE_identifier3246
    #define	RETURN_TYPE_identifier3246 MySQLParser_identifier_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    identifier3246.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:3384:12: ( identifier -> ^( SCHEMA_NAME_TOKEN identifier ) )
        // MySQL.g:3385:2: identifier
        {
            FOLLOWPUSH(FOLLOW_identifier_in_schema_name17224);
            identifier3246=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleschema_nameEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_identifier; stream_identifier->add(stream_identifier, identifier3246.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;
            	// 3385:13: -> ^( SCHEMA_NAME_TOKEN identifier )
            	{
            	    // MySQL.g:3385: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:3388: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 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:3388:11: ( identifier -> ^( SCHEMA_REF_TOKEN identifier ) )
        // MySQL.g:3389:2: identifier
        {
            FOLLOWPUSH(FOLLOW_identifier_in_schema_ref17241);
            identifier3247=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleschema_refEx;
            }
            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;
            	// 3389:13: -> ^( SCHEMA_REF_TOKEN identifier )
            	{
            	    // MySQL.g:3389: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:3392: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_identifier3248;
    #undef	RETURN_TYPE_qualified_identifier3248
    #define	RETURN_TYPE_qualified_identifier3248 MySQLParser_qualified_identifier_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_qualified_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    qualified_identifier3248.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:3392:15: ( qualified_identifier -> ^( PROCEDURE_NAME_TOKEN qualified_identifier ) )
        // MySQL.g:3393:2: qualified_identifier
        {
            FOLLOWPUSH(FOLLOW_qualified_identifier_in_procedure_name17258);
            qualified_identifier3248=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_identifier3248.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;
            	// 3393:23: -> ^( PROCEDURE_NAME_TOKEN qualified_identifier )
            	{
            	    // MySQL.g:3393: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:3396: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_identifier3249;
    #undef	RETURN_TYPE_qualified_identifier3249
    #define	RETURN_TYPE_qualified_identifier3249 MySQLParser_qualified_identifier_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_qualified_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    qualified_identifier3249.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:3396:14: ( qualified_identifier -> ^( PROCEDURE_REF_TOKEN qualified_identifier ) )
        // MySQL.g:3397:2: qualified_identifier
        {
            FOLLOWPUSH(FOLLOW_qualified_identifier_in_procedure_ref17275);
            qualified_identifier3249=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_identifier3249.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;
            	// 3397:23: -> ^( PROCEDURE_REF_TOKEN qualified_identifier )
            	{
            	    // MySQL.g:3397: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:3400: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_identifier3250;
    #undef	RETURN_TYPE_qualified_identifier3250
    #define	RETURN_TYPE_qualified_identifier3250 MySQLParser_qualified_identifier_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_qualified_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    qualified_identifier3250.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:3400:14: ( qualified_identifier -> ^( FUNCTION_NAME_TOKEN qualified_identifier ) )
        // MySQL.g:3401:2: qualified_identifier
        {
            FOLLOWPUSH(FOLLOW_qualified_identifier_in_function_name17292);
            qualified_identifier3250=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_identifier3250.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;
            	// 3401:23: -> ^( FUNCTION_NAME_TOKEN qualified_identifier )
            	{
            	    // MySQL.g:3401: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:3404: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_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:3404:13: ( qualified_identifier -> ^( FUNCTION_REF_TOKEN qualified_identifier ) )
        // MySQL.g:3405:2: qualified_identifier
        {
            FOLLOWPUSH(FOLLOW_qualified_identifier_in_function_ref17309);
            qualified_identifier3251=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_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;
            	// 3405:23: -> ^( FUNCTION_REF_TOKEN qualified_identifier )
            	{
            	    // MySQL.g:3405: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:3408: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_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:3408:13: ( qualified_identifier -> ^( TRIGGER_NAME_TOKEN qualified_identifier ) )
        // MySQL.g:3409:2: qualified_identifier
        {
            FOLLOWPUSH(FOLLOW_qualified_identifier_in_trigger_name17326);
            qualified_identifier3252=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_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;
            	// 3409:23: -> ^( TRIGGER_NAME_TOKEN qualified_identifier )
            	{
            	    // MySQL.g:3409: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:3412: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_identifier3253;
    #undef	RETURN_TYPE_qualified_identifier3253
    #define	RETURN_TYPE_qualified_identifier3253 MySQLParser_qualified_identifier_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_qualified_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    qualified_identifier3253.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:3412:12: ( qualified_identifier -> ^( TRIGGER_REF_TOKEN qualified_identifier ) )
        // MySQL.g:3413:2: qualified_identifier
        {
            FOLLOWPUSH(FOLLOW_qualified_identifier_in_trigger_ref17343);
            qualified_identifier3253=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_identifier3253.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;
            	// 3413:23: -> ^( TRIGGER_REF_TOKEN qualified_identifier )
            	{
            	    // MySQL.g:3413: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:3416: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_variants3254;
    #undef	RETURN_TYPE_table_name_variants3254
    #define	RETURN_TYPE_table_name_variants3254 MySQLParser_table_name_variants_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_table_name_variants;
    /* Initialize rule variables
     */

    root_0 = NULL;

    table_name_variants3254.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:3416:10: ( table_name_variants -> ^( VIEW_NAME_TOKEN table_name_variants ) )
        // MySQL.g:3417:2: table_name_variants
        {
            FOLLOWPUSH(FOLLOW_table_name_variants_in_view_name17360);
            table_name_variants3254=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_variants3254.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;
            	// 3417:22: -> ^( VIEW_NAME_TOKEN table_name_variants )
            	{
            	    // MySQL.g:3417: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:3420: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_identifier3255;
    #undef	RETURN_TYPE_qualified_identifier3255
    #define	RETURN_TYPE_qualified_identifier3255 MySQLParser_qualified_identifier_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_qualified_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    qualified_identifier3255.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:3420:9: ( qualified_identifier -> ^( VIEW_REF_TOKEN qualified_identifier ) )
        // MySQL.g:3421:2: qualified_identifier
        {
            FOLLOWPUSH(FOLLOW_qualified_identifier_in_view_ref17377);
            qualified_identifier3255=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_identifier3255.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;
            	// 3421:23: -> ^( VIEW_REF_TOKEN qualified_identifier )
            	{
            	    // MySQL.g:3421: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:3424: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 identifier3256;
    #undef	RETURN_TYPE_identifier3256
    #define	RETURN_TYPE_identifier3256 MySQLParser_identifier_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    identifier3256.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:3424:16: ( identifier -> ^( TABLESPACE_NAME_TOKEN identifier ) )
        // MySQL.g:3425:2: identifier
        {
            FOLLOWPUSH(FOLLOW_identifier_in_tablespace_name17394);
            identifier3256=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruletablespace_nameEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_identifier; stream_identifier->add(stream_identifier, identifier3256.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;
            	// 3425:13: -> ^( TABLESPACE_NAME_TOKEN identifier )
            	{
            	    // MySQL.g:3425: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:3428: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 identifier3257;
    #undef	RETURN_TYPE_identifier3257
    #define	RETURN_TYPE_identifier3257 MySQLParser_identifier_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    identifier3257.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:3428:15: ( identifier -> ^( TABLESPACE_REF_TOKEN identifier ) )
        // MySQL.g:3429:2: identifier
        {
            FOLLOWPUSH(FOLLOW_identifier_in_tablespace_ref17411);
            identifier3257=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruletablespace_refEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_identifier; stream_identifier->add(stream_identifier, identifier3257.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;
            	// 3429:13: -> ^( TABLESPACE_REF_TOKEN identifier )
            	{
            	    // MySQL.g:3429: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:3432: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 identifier3258;
    #undef	RETURN_TYPE_identifier3258
    #define	RETURN_TYPE_identifier3258 MySQLParser_identifier_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    identifier3258.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:3432:19: ( identifier -> ^( LOGFILE_GROUP_NAME_TOKEN identifier ) )
        // MySQL.g:3433:2: identifier
        {
            FOLLOWPUSH(FOLLOW_identifier_in_logfile_group_name17428);
            identifier3258=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulelogfile_group_nameEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_identifier; stream_identifier->add(stream_identifier, identifier3258.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;
            	// 3433:13: -> ^( LOGFILE_GROUP_NAME_TOKEN identifier )
            	{
            	    // MySQL.g:3433: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:3436: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 identifier3259;
    #undef	RETURN_TYPE_identifier3259
    #define	RETURN_TYPE_identifier3259 MySQLParser_identifier_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    identifier3259.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:3436:18: ( identifier -> ^( LOGFILE_GROUP_REF_TOKEN identifier ) )
        // MySQL.g:3437:2: identifier
        {
            FOLLOWPUSH(FOLLOW_identifier_in_logfile_group_ref17445);
            identifier3259=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulelogfile_group_refEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_identifier; stream_identifier->add(stream_identifier, identifier3259.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;
            	// 3437:13: -> ^( LOGFILE_GROUP_REF_TOKEN identifier )
            	{
            	    // MySQL.g:3437: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:3440: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_identifier3260;
    #undef	RETURN_TYPE_qualified_identifier3260
    #define	RETURN_TYPE_qualified_identifier3260 MySQLParser_qualified_identifier_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_qualified_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    qualified_identifier3260.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:3440:11: ( qualified_identifier -> ^( EVENT_NAME_TOKEN qualified_identifier ) )
        // MySQL.g:3441:2: qualified_identifier
        {
            FOLLOWPUSH(FOLLOW_qualified_identifier_in_event_name17462);
            qualified_identifier3260=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_identifier3260.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;
            	// 3441:23: -> ^( EVENT_NAME_TOKEN qualified_identifier )
            	{
            	    // MySQL.g:3441: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:3444: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_identifier3261;
    #undef	RETURN_TYPE_qualified_identifier3261
    #define	RETURN_TYPE_qualified_identifier3261 MySQLParser_qualified_identifier_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_qualified_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    qualified_identifier3261.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:3444:10: ( qualified_identifier -> ^( EVENT_REF_TOKEN qualified_identifier ) )
        // MySQL.g:3445:2: qualified_identifier
        {
            FOLLOWPUSH(FOLLOW_qualified_identifier_in_event_ref17479);
            qualified_identifier3261=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_identifier3261.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;
            	// 3445:23: -> ^( EVENT_REF_TOKEN qualified_identifier )
            	{
            	    // MySQL.g:3445: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:3448: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 identifier3262;
    #undef	RETURN_TYPE_identifier3262
    #define	RETURN_TYPE_identifier3262 MySQLParser_identifier_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    identifier3262.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:3448:9: ( identifier -> ^( UDF_NAME_TOKEN identifier ) )
        // MySQL.g:3449:2: identifier
        {
            FOLLOWPUSH(FOLLOW_identifier_in_udf_name17497);
            identifier3262=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleudf_nameEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_identifier; stream_identifier->add(stream_identifier, identifier3262.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;
            	// 3449:13: -> ^( UDF_NAME_TOKEN identifier )
            	{
            	    // MySQL.g:3449: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:3452: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_identifier3263;
    #undef	RETURN_TYPE_text_or_identifier3263
    #define	RETURN_TYPE_text_or_identifier3263 MySQLParser_text_or_identifier_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_text_or_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    text_or_identifier3263.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:3452:12: ( text_or_identifier -> ^( SERVER_NAME_TOKEN text_or_identifier ) )
        // MySQL.g:3453:2: text_or_identifier
        {
            FOLLOWPUSH(FOLLOW_text_or_identifier_in_server_name17514);
            text_or_identifier3263=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_identifier3263.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;
            	// 3453:21: -> ^( SERVER_NAME_TOKEN text_or_identifier )
            	{
            	    // MySQL.g:3453: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:3456: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_identifier3264;
    #undef	RETURN_TYPE_text_or_identifier3264
    #define	RETURN_TYPE_text_or_identifier3264 MySQLParser_text_or_identifier_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_text_or_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    text_or_identifier3264.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:3456:11: ( text_or_identifier -> ^( SERVER_REF_TOKEN text_or_identifier ) )
        // MySQL.g:3457:2: text_or_identifier
        {
            FOLLOWPUSH(FOLLOW_text_or_identifier_in_server_ref17531);
            text_or_identifier3264=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_identifier3264.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;
            	// 3457:21: -> ^( SERVER_REF_TOKEN text_or_identifier )
            	{
            	    // MySQL.g:3457: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:3460: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_identifier3265;
    #undef	RETURN_TYPE_text_or_identifier3265
    #define	RETURN_TYPE_text_or_identifier3265 MySQLParser_text_or_identifier_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_text_or_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    text_or_identifier3265.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:3460:11: ( text_or_identifier -> ^( ENGINE_REF_TOKEN text_or_identifier ) )
        // MySQL.g:3461:2: text_or_identifier
        {
            FOLLOWPUSH(FOLLOW_text_or_identifier_in_engine_ref17548);
            text_or_identifier3265=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_identifier3265.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;
            	// 3461:21: -> ^( ENGINE_REF_TOKEN text_or_identifier )
            	{
            	    // MySQL.g:3461: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:3464: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_variants3266;
    #undef	RETURN_TYPE_table_name_variants3266
    #define	RETURN_TYPE_table_name_variants3266 MySQLParser_table_name_variants_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_table_name_variants;
    /* Initialize rule variables
     */

    root_0 = NULL;

    table_name_variants3266.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:3464:11: ( table_name_variants -> ^( TABLE_NAME_TOKEN table_name_variants ) )
        // MySQL.g:3465:2: table_name_variants
        {
            FOLLOWPUSH(FOLLOW_table_name_variants_in_table_name17565);
            table_name_variants3266=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_variants3266.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;
            	// 3465:22: -> ^( TABLE_NAME_TOKEN table_name_variants )
            	{
            	    // MySQL.g:3465: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:3468:1: filter_table_ref : identifier dot_identifier -> ^( TABLE_NAME_TOKEN identifier dot_identifier ) ;
 */
static MySQLParser_filter_table_ref_return
filter_table_ref(pMySQLParser ctx)
{
    MySQLParser_filter_table_ref_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_identifier_return identifier3267;
    #undef	RETURN_TYPE_identifier3267
    #define	RETURN_TYPE_identifier3267 MySQLParser_identifier_return

    MySQLParser_dot_identifier_return dot_identifier3268;
    #undef	RETURN_TYPE_dot_identifier3268
    #define	RETURN_TYPE_dot_identifier3268 MySQLParser_dot_identifier_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_identifier;
    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_dot_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    identifier3267.tree = NULL;

    dot_identifier3268.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"); }
    stream_dot_identifier   = NULL;
    #define CREATE_stream_dot_identifier  if (stream_dot_identifier == NULL) {stream_dot_identifier = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule dot_identifier"); }

    retval.tree  = NULL;

    {
        // MySQL.g:3468:17: ( identifier dot_identifier -> ^( TABLE_NAME_TOKEN identifier dot_identifier ) )
        // MySQL.g:3469:2: identifier dot_identifier
        {
            FOLLOWPUSH(FOLLOW_identifier_in_filter_table_ref17583);
            identifier3267=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulefilter_table_refEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_identifier; stream_identifier->add(stream_identifier, identifier3267.tree, NULL); }

            FOLLOWPUSH(FOLLOW_dot_identifier_in_filter_table_ref17585);
            dot_identifier3268=dot_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulefilter_table_refEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_dot_identifier; stream_dot_identifier->add(stream_dot_identifier, dot_identifier3268.tree, NULL); }

            /* AST REWRITE
             * elements          : identifier, dot_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;
            	// 3469:28: -> ^( TABLE_NAME_TOKEN identifier dot_identifier )
            	{
            	    // MySQL.g:3469:31: ^( TABLE_NAME_TOKEN identifier dot_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_identifier == NULL ? NULL : stream_dot_identifier->nextTree(stream_dot_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_identifier != NULL) stream_identifier->free(stream_identifier);
        if (stream_dot_identifier != NULL) stream_dot_identifier->free(stream_dot_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:3472:1: table_ref_with_wildcard : identifier ({...}? DOT_SYMBOL MULT_OPERATOR | dot_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_SYMBOL3270;
    pANTLR3_COMMON_TOKEN    MULT_OPERATOR3271;
    pANTLR3_COMMON_TOKEN    DOT_SYMBOL3273;
    pANTLR3_COMMON_TOKEN    MULT_OPERATOR3274;
    MySQLParser_identifier_return identifier3269;
    #undef	RETURN_TYPE_identifier3269
    #define	RETURN_TYPE_identifier3269 MySQLParser_identifier_return

    MySQLParser_dot_identifier_return dot_identifier3272;
    #undef	RETURN_TYPE_dot_identifier3272
    #define	RETURN_TYPE_dot_identifier3272 MySQLParser_dot_identifier_return

    pANTLR3_BASE_TREE DOT_SYMBOL3270_tree;
    pANTLR3_BASE_TREE MULT_OPERATOR3271_tree;
    pANTLR3_BASE_TREE DOT_SYMBOL3273_tree;
    pANTLR3_BASE_TREE MULT_OPERATOR3274_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DOT_SYMBOL3270       = NULL;
    MULT_OPERATOR3271       = NULL;
    DOT_SYMBOL3273       = NULL;
    MULT_OPERATOR3274       = NULL;
    identifier3269.tree = NULL;

    dot_identifier3272.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DOT_SYMBOL3270_tree   = NULL;
    MULT_OPERATOR3271_tree   = NULL;
    DOT_SYMBOL3273_tree   = NULL;
    MULT_OPERATOR3274_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3472:24: ( identifier ({...}? DOT_SYMBOL MULT_OPERATOR | dot_identifier ( DOT_SYMBOL MULT_OPERATOR )? )? )
        // MySQL.g:3473:2: identifier ({...}? DOT_SYMBOL MULT_OPERATOR | dot_identifier ( DOT_SYMBOL MULT_OPERATOR )? )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_identifier_in_table_ref_with_wildcard17604);
            identifier3269=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruletable_ref_with_wildcardEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier3269.tree);

            // MySQL.g:3474:2: ({...}? DOT_SYMBOL MULT_OPERATOR | dot_identifier ( DOT_SYMBOL MULT_OPERATOR )? )?
            {
                int alt934=3;
                switch ( LA(1) )
                {
                    case DOT_SYMBOL:
                    	{
                    		{
                    		    int LA934_1 = LA(2);
                    		    if ( (LA934_1 == MULT_OPERATOR))
                    		    {
                    		        alt934=1;
                    		    }
                    		    else if ( (((LA934_1 >= ACCOUNT_SYMBOL) && (LA934_1 <= YEAR_SYMBOL)) || LA934_1 == BACK_TICK_QUOTED_ID || LA934_1 == DOUBLE_QUOTED_TEXT || LA934_1 == IDENTIFIER))
                    		    {
                    		        alt934=2;
                    		    }
                    		}
                    	}
                        break;
                }

                switch (alt934)
                {
            	case 1:
            	    // MySQL.g:3475:3: {...}? DOT_SYMBOL MULT_OPERATOR
            	    {
            	        if ( !((LA(2) == MULT_OPERATOR)) )
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	                CONSTRUCTEX();
            	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
            	                EXCEPTION->message      = (void *)"LA(2) == MULT_OPERATOR";
            	                EXCEPTION->ruleName	 = (void *)"table_ref_with_wildcard";


            	        }

            	        DOT_SYMBOL3270 = (pANTLR3_COMMON_TOKEN) MATCHT(DOT_SYMBOL, &FOLLOW_DOT_SYMBOL_in_table_ref_with_wildcard17613);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_ref_with_wildcardEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DOT_SYMBOL3270_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DOT_SYMBOL3270));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DOT_SYMBOL3270_tree);
            	        }

            	        MULT_OPERATOR3271 = (pANTLR3_COMMON_TOKEN) MATCHT(MULT_OPERATOR, &FOLLOW_MULT_OPERATOR_in_table_ref_with_wildcard17615);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_ref_with_wildcardEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        MULT_OPERATOR3271_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MULT_OPERATOR3271));
            	        ADAPTOR->addChild(ADAPTOR, root_0, MULT_OPERATOR3271_tree);
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:3476:5: dot_identifier ( DOT_SYMBOL MULT_OPERATOR )?
            	    {
            	        FOLLOWPUSH(FOLLOW_dot_identifier_in_table_ref_with_wildcard17621);
            	        dot_identifier3272=dot_identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_ref_with_wildcardEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, dot_identifier3272.tree);

            	        // MySQL.g:3476:20: ( DOT_SYMBOL MULT_OPERATOR )?
            	        {
            	            int alt933=2;
            	            switch ( LA(1) )
            	            {
            	                case DOT_SYMBOL:
            	                	{
            	                		alt933=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt933)
            	            {
            	        	case 1:
            	        	    // MySQL.g:3476:21: DOT_SYMBOL MULT_OPERATOR
            	        	    {
            	        	        DOT_SYMBOL3273 = (pANTLR3_COMMON_TOKEN) MATCHT(DOT_SYMBOL, &FOLLOW_DOT_SYMBOL_in_table_ref_with_wildcard17624);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruletable_ref_with_wildcardEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        DOT_SYMBOL3273_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DOT_SYMBOL3273));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, DOT_SYMBOL3273_tree);
            	        	        }

            	        	        MULT_OPERATOR3274 = (pANTLR3_COMMON_TOKEN) MATCHT(MULT_OPERATOR, &FOLLOW_MULT_OPERATOR_in_table_ref_with_wildcard17626);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruletable_ref_with_wildcardEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        MULT_OPERATOR3274_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MULT_OPERATOR3274));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, MULT_OPERATOR3274_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

                }
            }

        }

    }

    // 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 (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:3480: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_variants3275;
    #undef	RETURN_TYPE_table_name_variants3275
    #define	RETURN_TYPE_table_name_variants3275 MySQLParser_table_name_variants_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_table_name_variants;
    /* Initialize rule variables
     */

    root_0 = NULL;

    table_name_variants3275.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:3480:10: ( table_name_variants -> ^( TABLE_REF_TOKEN table_name_variants ) )
        // MySQL.g:3481:2: table_name_variants
        {
            FOLLOWPUSH(FOLLOW_table_name_variants_in_table_ref17641);
            table_name_variants3275=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_variants3275.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;
            	// 3481:22: -> ^( TABLE_REF_TOKEN table_name_variants )
            	{
            	    // MySQL.g:3481: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:3484: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 identifier3276;
    #undef	RETURN_TYPE_identifier3276
    #define	RETURN_TYPE_identifier3276 MySQLParser_identifier_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    identifier3276.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:3484:16: ( identifier -> ^( TABLE_REF_TOKEN identifier ) )
        // MySQL.g:3485:2: identifier
        {
            FOLLOWPUSH(FOLLOW_identifier_in_table_ref_no_db17658);
            identifier3276=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, identifier3276.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;
            	// 3485:13: -> ^( TABLE_REF_TOKEN identifier )
            	{
            	    // MySQL.g:3485: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:3488:1: table_name_variants : ( qualified_identifier | dot_identifier );
 */
static MySQLParser_table_name_variants_return
table_name_variants(pMySQLParser ctx)
{
    MySQLParser_table_name_variants_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_qualified_identifier_return qualified_identifier3277;
    #undef	RETURN_TYPE_qualified_identifier3277
    #define	RETURN_TYPE_qualified_identifier3277 MySQLParser_qualified_identifier_return

    MySQLParser_dot_identifier_return dot_identifier3278;
    #undef	RETURN_TYPE_dot_identifier3278
    #define	RETURN_TYPE_dot_identifier3278 MySQLParser_dot_identifier_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    qualified_identifier3277.tree = NULL;

    dot_identifier3278.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:3488:20: ( qualified_identifier | dot_identifier )

            ANTLR3_UINT32 alt935;

            alt935=2;

            {
                int LA935_0 = LA(1);
                if ( (((LA935_0 >= ACCOUNT_SYMBOL) && (LA935_0 <= YEAR_SYMBOL)) || LA935_0 == BACK_TICK_QUOTED_ID || LA935_0 == DOUBLE_QUOTED_TEXT || LA935_0 == IDENTIFIER))
                {
                    alt935=1;
                }
                else if ( (LA935_0 == DOT_SYMBOL))
                {
                    alt935=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 935;
                    EXCEPTION->state        = 0;


                    goto ruletable_name_variantsEx;

                }
            }
            switch (alt935)
            {
        	case 1:
        	    // MySQL.g:3489:2: qualified_identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_qualified_identifier_in_table_name_variants17675);
        	        qualified_identifier3277=qualified_identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_name_variantsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, qualified_identifier3277.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:3490:4: dot_identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_dot_identifier_in_table_name_variants17680);
        	        dot_identifier3278=dot_identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_name_variantsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, dot_identifier3278.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:3493: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_SYMBOL3280;
    MySQLParser_table_ref_return table_ref3279;
    #undef	RETURN_TYPE_table_ref3279
    #define	RETURN_TYPE_table_ref3279 MySQLParser_table_ref_return

    MySQLParser_table_ref_return table_ref3281;
    #undef	RETURN_TYPE_table_ref3281
    #define	RETURN_TYPE_table_ref3281 MySQLParser_table_ref_return

    pANTLR3_BASE_TREE COMMA_SYMBOL3280_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL3280       = NULL;
    table_ref3279.tree = NULL;

    table_ref3281.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL3280_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3493:15: ( table_ref ( COMMA_SYMBOL table_ref )* )
        // MySQL.g:3494:2: table_ref ( COMMA_SYMBOL table_ref )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_table_ref_in_table_ref_list17689);
            table_ref3279=table_ref(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruletable_ref_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref3279.tree);

            // MySQL.g:3494:12: ( COMMA_SYMBOL table_ref )*

            for (;;)
            {
                int alt936=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt936=1;
                	}
                    break;

                }

                switch (alt936)
                {
            	case 1:
            	    // MySQL.g:3494:13: COMMA_SYMBOL table_ref
            	    {
            	        COMMA_SYMBOL3280 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_table_ref_list17692);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_ref_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL3280_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL3280));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL3280_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_table_ref_in_table_ref_list17694);
            	        table_ref3281=table_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_ref_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref3281.tree);

            	    }
            	    break;

            	default:
            	    goto loop936;	/* break out of the loop */
            	    break;
                }
            }
            loop936: ; /* 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:3497: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_SYMBOL3283;
    MySQLParser_table_ref_with_wildcard_return table_ref_with_wildcard3282;
    #undef	RETURN_TYPE_table_ref_with_wildcard3282
    #define	RETURN_TYPE_table_ref_with_wildcard3282 MySQLParser_table_ref_with_wildcard_return

    MySQLParser_table_ref_with_wildcard_return table_ref_with_wildcard3284;
    #undef	RETURN_TYPE_table_ref_with_wildcard3284
    #define	RETURN_TYPE_table_ref_with_wildcard3284 MySQLParser_table_ref_with_wildcard_return

    pANTLR3_BASE_TREE COMMA_SYMBOL3283_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL3283       = NULL;
    table_ref_with_wildcard3282.tree = NULL;

    table_ref_with_wildcard3284.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL3283_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3497:29: ( table_ref_with_wildcard ( COMMA_SYMBOL table_ref_with_wildcard )* )
        // MySQL.g:3498: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_wildcard17712);
            table_ref_with_wildcard3282=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_wildcard3282.tree);

            // MySQL.g:3498:26: ( COMMA_SYMBOL table_ref_with_wildcard )*

            for (;;)
            {
                int alt937=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt937=1;
                	}
                    break;

                }

                switch (alt937)
                {
            	case 1:
            	    // MySQL.g:3498:27: COMMA_SYMBOL table_ref_with_wildcard
            	    {
            	        COMMA_SYMBOL3283 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_table_ref_list_with_wildcard17715);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_ref_list_with_wildcardEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL3283_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL3283));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL3283_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_table_ref_with_wildcard_in_table_ref_list_with_wildcard17717);
            	        table_ref_with_wildcard3284=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_wildcard3284.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_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:3504: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    IDENTIFIER3285;
    pANTLR3_COMMON_TOKEN    BACK_TICK_QUOTED_ID3286;
    pANTLR3_COMMON_TOKEN    DOUBLE_QUOTED_TEXT3287;

    pANTLR3_BASE_TREE IDENTIFIER3285_tree;
    pANTLR3_BASE_TREE BACK_TICK_QUOTED_ID3286_tree;
    pANTLR3_BASE_TREE DOUBLE_QUOTED_TEXT3287_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    IDENTIFIER3285       = NULL;
    BACK_TICK_QUOTED_ID3286       = NULL;
    DOUBLE_QUOTED_TEXT3287       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    IDENTIFIER3285_tree   = NULL;
    BACK_TICK_QUOTED_ID3286_tree   = NULL;
    DOUBLE_QUOTED_TEXT3287_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:3504:16: ( IDENTIFIER | BACK_TICK_QUOTED_ID |{...}? DOUBLE_QUOTED_TEXT )

            ANTLR3_UINT32 alt938;

            alt938=3;

            switch ( LA(1) )
            {
            case IDENTIFIER:
            	{
            		alt938=1;
            	}
                break;
            case BACK_TICK_QUOTED_ID:
            	{
            		alt938=2;
            	}
                break;
            case DOUBLE_QUOTED_TEXT:
            	{
            		alt938=3;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 938;
                EXCEPTION->state        = 0;


                goto rulepure_identifierEx;

            }

            switch (alt938)
            {
        	case 1:
        	    // MySQL.g:3505:2: IDENTIFIER
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        IDENTIFIER3285 = (pANTLR3_COMMON_TOKEN) MATCHT(IDENTIFIER, &FOLLOW_IDENTIFIER_in_pure_identifier17731);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulepure_identifierEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        IDENTIFIER3285_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IDENTIFIER3285));
        	        ADAPTOR->addChild(ADAPTOR, root_0, IDENTIFIER3285_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:3506:4: BACK_TICK_QUOTED_ID
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BACK_TICK_QUOTED_ID3286 = (pANTLR3_COMMON_TOKEN) MATCHT(BACK_TICK_QUOTED_ID, &FOLLOW_BACK_TICK_QUOTED_ID_in_pure_identifier17736);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulepure_identifierEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BACK_TICK_QUOTED_ID3286_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BACK_TICK_QUOTED_ID3286));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BACK_TICK_QUOTED_ID3286_tree);
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:3507: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_TEXT3287 = (pANTLR3_COMMON_TOKEN) MATCHT(DOUBLE_QUOTED_TEXT, &FOLLOW_DOUBLE_QUOTED_TEXT_in_pure_identifier17743);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulepure_identifierEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DOUBLE_QUOTED_TEXT3287_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DOUBLE_QUOTED_TEXT3287));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DOUBLE_QUOTED_TEXT3287_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:3511: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_identifier3288;
    #undef	RETURN_TYPE_pure_identifier3288
    #define	RETURN_TYPE_pure_identifier3288 MySQLParser_pure_identifier_return

    MySQLParser_keyword_return keyword3289;
    #undef	RETURN_TYPE_keyword3289
    #define	RETURN_TYPE_keyword3289 MySQLParser_keyword_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    pure_identifier3288.tree = NULL;

    keyword3289.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:3511:11: ( pure_identifier | keyword )

            ANTLR3_UINT32 alt939;

            alt939=2;

            {
                int LA939_0 = LA(1);
                if ( (LA939_0 == BACK_TICK_QUOTED_ID || LA939_0 == DOUBLE_QUOTED_TEXT || LA939_0 == IDENTIFIER))
                {
                    alt939=1;
                }
                else if ( (((LA939_0 >= ACCOUNT_SYMBOL) && (LA939_0 <= YEAR_SYMBOL))))
                {
                    alt939=2;
                }
                else
                {
                    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 ruleidentifierEx;

                }
            }
            switch (alt939)
            {
        	case 1:
        	    // MySQL.g:3512:2: pure_identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_pure_identifier_in_identifier17753);
        	        pure_identifier3288=pure_identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleidentifierEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, pure_identifier3288.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:3513:4: keyword
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_keyword_in_identifier17758);
        	        keyword3289=keyword(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleidentifierEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, keyword3289.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:3516: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_SYMBOL3291;
    MySQLParser_identifier_return identifier3290;
    #undef	RETURN_TYPE_identifier3290
    #define	RETURN_TYPE_identifier3290 MySQLParser_identifier_return

    MySQLParser_identifier_return identifier3292;
    #undef	RETURN_TYPE_identifier3292
    #define	RETURN_TYPE_identifier3292 MySQLParser_identifier_return

    pANTLR3_BASE_TREE COMMA_SYMBOL3291_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL3291       = NULL;
    identifier3290.tree = NULL;

    identifier3292.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL3291_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3516:16: ( identifier ( options {greedy=true; } : COMMA_SYMBOL identifier )* )
        // MySQL.g:3517:2: identifier ( options {greedy=true; } : COMMA_SYMBOL identifier )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_identifier_in_identifier_list17767);
            identifier3290=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleidentifier_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier3290.tree);

            // MySQL.g:3517:13: ( options {greedy=true; } : COMMA_SYMBOL identifier )*

            for (;;)
            {
                int alt940=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt940=1;
                	}
                    break;

                }

                switch (alt940)
                {
            	case 1:
            	    // MySQL.g:3517:43: COMMA_SYMBOL identifier
            	    {
            	        COMMA_SYMBOL3291 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_identifier_list17783);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleidentifier_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL3291_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL3291));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL3291_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_identifier_in_identifier_list17785);
            	        identifier3292=identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleidentifier_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier3292.tree);

            	    }
            	    break;

            	default:
            	    goto loop940;	/* break out of the loop */
            	    break;
                }
            }
            loop940: ; /* 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:3520: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_SYMBOL3293;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL3295;
    MySQLParser_identifier_list_return identifier_list3294;
    #undef	RETURN_TYPE_identifier_list3294
    #define	RETURN_TYPE_identifier_list3294 MySQLParser_identifier_list_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL3293_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL3295_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL3293       = NULL;
    CLOSE_PAR_SYMBOL3295       = NULL;
    identifier_list3294.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL3293_tree   = NULL;
    CLOSE_PAR_SYMBOL3295_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3520:33: ( OPEN_PAR_SYMBOL identifier_list CLOSE_PAR_SYMBOL )
        // MySQL.g:3521:2: OPEN_PAR_SYMBOL identifier_list 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_identifier_list_with_parentheses17796);
            if  (HASEXCEPTION())
            {
                goto ruleidentifier_list_with_parenthesesEx;
            }
            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_identifier_list_in_identifier_list_with_parentheses17798);
            identifier_list3294=identifier_list(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleidentifier_list_with_parenthesesEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier_list3294.tree);

            CLOSE_PAR_SYMBOL3295 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_identifier_list_with_parentheses17800);
            if  (HASEXCEPTION())
            {
                goto ruleidentifier_list_with_parenthesesEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL3295_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL3295));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL3295_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:3524:1: qualified_identifier : identifier ( options {greedy=true; } : dot_identifier )? ;
 */
static MySQLParser_qualified_identifier_return
qualified_identifier(pMySQLParser ctx)
{
    MySQLParser_qualified_identifier_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_identifier_return identifier3296;
    #undef	RETURN_TYPE_identifier3296
    #define	RETURN_TYPE_identifier3296 MySQLParser_identifier_return

    MySQLParser_dot_identifier_return dot_identifier3297;
    #undef	RETURN_TYPE_dot_identifier3297
    #define	RETURN_TYPE_dot_identifier3297 MySQLParser_dot_identifier_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    identifier3296.tree = NULL;

    dot_identifier3297.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:3524:21: ( identifier ( options {greedy=true; } : dot_identifier )? )
        // MySQL.g:3525:2: identifier ( options {greedy=true; } : dot_identifier )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_identifier_in_qualified_identifier17809);
            identifier3296=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulequalified_identifierEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier3296.tree);

            // MySQL.g:3525:13: ( options {greedy=true; } : dot_identifier )?
            {
                int alt941=2;
                switch ( LA(1) )
                {
                    case DOT_SYMBOL:
                    	{
                    		{
                    		    int LA941_1 = LA(2);
                    		    if ( (LA941_1 == IDENTIFIER))
                    		    {
                    		        alt941=1;
                    		    }
                    		    else if ( (LA941_1 == BACK_TICK_QUOTED_ID))
                    		    {
                    		        alt941=1;
                    		    }
                    		    else if ( (LA941_1 == DOUBLE_QUOTED_TEXT))
                    		    {
                    		        alt941=1;
                    		    }
                    		    else if ( (((LA941_1 >= ACTION_SYMBOL) && (LA941_1 <= SHARE_SYMBOL)) || ((LA941_1 >= SLOW_SYMBOL) && (LA941_1 <= YEAR_SYMBOL))))
                    		    {
                    		        alt941=1;
                    		    }
                    		    else if ( (((LA941_1 >= ACCOUNT_SYMBOL) && (LA941_1 <= XA_SYMBOL)) || LA941_1 == SHUTDOWN_SYMBOL))
                    		    {
                    		        alt941=1;
                    		    }
                    		}
                    	}
                        break;
                }

                switch (alt941)
                {
            	case 1:
            	    // MySQL.g:3525:42: dot_identifier
            	    {
            	        FOLLOWPUSH(FOLLOW_dot_identifier_in_qualified_identifier17824);
            	        dot_identifier3297=dot_identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulequalified_identifierEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, dot_identifier3297.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 dot_identifier
 * MySQL.g:3530:1: dot_identifier : DOT_SYMBOL identifier ;
 */
static MySQLParser_dot_identifier_return
dot_identifier(pMySQLParser ctx)
{
    MySQLParser_dot_identifier_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    DOT_SYMBOL3298;
    MySQLParser_identifier_return identifier3299;
    #undef	RETURN_TYPE_identifier3299
    #define	RETURN_TYPE_identifier3299 MySQLParser_identifier_return

    pANTLR3_BASE_TREE DOT_SYMBOL3298_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DOT_SYMBOL3298       = NULL;
    identifier3299.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DOT_SYMBOL3298_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3530:15: ( DOT_SYMBOL identifier )
        // MySQL.g:3531:2: DOT_SYMBOL identifier
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            DOT_SYMBOL3298 = (pANTLR3_COMMON_TOKEN) MATCHT(DOT_SYMBOL, &FOLLOW_DOT_SYMBOL_in_dot_identifier17837);
            if  (HASEXCEPTION())
            {
                goto ruledot_identifierEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            DOT_SYMBOL3298_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DOT_SYMBOL3298));
            ADAPTOR->addChild(ADAPTOR, root_0, DOT_SYMBOL3298_tree);
            }

            FOLLOWPUSH(FOLLOW_identifier_in_dot_identifier17839);
            identifier3299=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruledot_identifierEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier3299.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto ruledot_identifierEx; /* Prevent compiler warnings */
    ruledot_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 dot_identifier */

/**
 * $ANTLR start ulong_number
 * MySQL.g:3535: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    set3300;

    pANTLR3_BASE_TREE set3300_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set3300       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set3300_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3535:13: ( INT_NUMBER | HEX_NUMBER | LONG_NUMBER | ULONGLONG_NUMBER | DECIMAL_NUMBER | FLOAT_NUMBER )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set3300=(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, set3300))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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:3544: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    set3301;

    pANTLR3_BASE_TREE set3301_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set3301       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set3301_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3544:18: ( INT_NUMBER | HEX_NUMBER | LONG_NUMBER | ULONGLONG_NUMBER )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set3301=(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, set3301))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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:3551: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    set3302;

    pANTLR3_BASE_TREE set3302_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set3302       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set3302_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3551:17: ( INT_NUMBER | ULONGLONG_NUMBER | LONG_NUMBER | DECIMAL_NUMBER | FLOAT_NUMBER )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set3302=(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, set3302))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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:3559: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    set3303;

    pANTLR3_BASE_TREE set3303_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set3303       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set3303_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3559:22: ( INT_NUMBER | ULONGLONG_NUMBER | LONG_NUMBER )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set3303=(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, set3303))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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:3565: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_SYMBOL3304;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL3306;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL3308;
    MySQLParser_text_string_return text_string3305;
    #undef	RETURN_TYPE_text_string3305
    #define	RETURN_TYPE_text_string3305 MySQLParser_text_string_return

    MySQLParser_text_string_return text_string3307;
    #undef	RETURN_TYPE_text_string3307
    #define	RETURN_TYPE_text_string3307 MySQLParser_text_string_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL3304_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL3306_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL3308_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL3304       = NULL;
    COMMA_SYMBOL3306       = NULL;
    CLOSE_PAR_SYMBOL3308       = NULL;
    text_string3305.tree = NULL;

    text_string3307.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL3304_tree   = NULL;
    COMMA_SYMBOL3306_tree   = NULL;
    CLOSE_PAR_SYMBOL3308_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3565:12: ( OPEN_PAR_SYMBOL text_string ( COMMA_SYMBOL text_string )* CLOSE_PAR_SYMBOL )
        // MySQL.g:3566:2: OPEN_PAR_SYMBOL text_string ( COMMA_SYMBOL text_string )* CLOSE_PAR_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            OPEN_PAR_SYMBOL3304 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_string_list17957);
            if  (HASEXCEPTION())
            {
                goto rulestring_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL3304_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL3304));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL3304_tree);
            }

            FOLLOWPUSH(FOLLOW_text_string_in_string_list17959);
            text_string3305=text_string(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulestring_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string3305.tree);

            // MySQL.g:3566:30: ( COMMA_SYMBOL text_string )*

            for (;;)
            {
                int alt942=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt942=1;
                	}
                    break;

                }

                switch (alt942)
                {
            	case 1:
            	    // MySQL.g:3566:31: COMMA_SYMBOL text_string
            	    {
            	        COMMA_SYMBOL3306 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_string_list17962);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulestring_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL3306_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL3306));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL3306_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_text_string_in_string_list17964);
            	        text_string3307=text_string(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulestring_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string3307.tree);

            	    }
            	    break;

            	default:
            	    goto loop942;	/* break out of the loop */
            	    break;
                }
            }
            loop942: ; /* Jump out to here if this rule does not match */


            CLOSE_PAR_SYMBOL3308 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_string_list17968);
            if  (HASEXCEPTION())
            {
                goto rulestring_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL3308_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL3308));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL3308_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:3569: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    set3309;

    pANTLR3_BASE_TREE set3309_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set3309       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set3309_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3569:12: ( SINGLE_QUOTED_TEXT | HEX_NUMBER | BIN_NUMBER )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set3309=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == SINGLE_QUOTED_TEXT || LA(1) == BIN_NUMBER || LA(1) == HEX_NUMBER )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set3309))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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:3577: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_string3310;
    #undef	RETURN_TYPE_text_string3310
    #define	RETURN_TYPE_text_string3310 MySQLParser_text_string_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_text_string;
    /* Initialize rule variables
     */

    root_0 = NULL;

    text_string3310.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:3577:25: ( text_string -> ^( STRING_NO_LINEBREAK_TOKEN text_string ) )
        // MySQL.g:3578:2: text_string
        {
            FOLLOWPUSH(FOLLOW_text_string_in_text_string_no_linebreak17998);
            text_string3310=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_string3310.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;
            	// 3578:14: -> ^( STRING_NO_LINEBREAK_TOKEN text_string )
            	{
            	    // MySQL.g:3578: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:3581: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_CHARSET3316;
    pANTLR3_COMMON_TOKEN    HEX_NUMBER3317;
    pANTLR3_COMMON_TOKEN    UNDERSCORE_CHARSET3318;
    pANTLR3_COMMON_TOKEN    BIN_NUMBER3319;
    MySQLParser_string_literal_return string_literal3311;
    #undef	RETURN_TYPE_string_literal3311
    #define	RETURN_TYPE_string_literal3311 MySQLParser_string_literal_return

    MySQLParser_num_literal_return num_literal3312;
    #undef	RETURN_TYPE_num_literal3312
    #define	RETURN_TYPE_num_literal3312 MySQLParser_num_literal_return

    MySQLParser_temporal_literal_return temporal_literal3313;
    #undef	RETURN_TYPE_temporal_literal3313
    #define	RETURN_TYPE_temporal_literal3313 MySQLParser_temporal_literal_return

    MySQLParser_null_literal_return null_literal3314;
    #undef	RETURN_TYPE_null_literal3314
    #define	RETURN_TYPE_null_literal3314 MySQLParser_null_literal_return

    MySQLParser_bool_literal_return bool_literal3315;
    #undef	RETURN_TYPE_bool_literal3315
    #define	RETURN_TYPE_bool_literal3315 MySQLParser_bool_literal_return

    pANTLR3_BASE_TREE UNDERSCORE_CHARSET3316_tree;
    pANTLR3_BASE_TREE HEX_NUMBER3317_tree;
    pANTLR3_BASE_TREE UNDERSCORE_CHARSET3318_tree;
    pANTLR3_BASE_TREE BIN_NUMBER3319_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    UNDERSCORE_CHARSET3316       = NULL;
    HEX_NUMBER3317       = NULL;
    UNDERSCORE_CHARSET3318       = NULL;
    BIN_NUMBER3319       = NULL;
    string_literal3311.tree = NULL;

    num_literal3312.tree = NULL;

    temporal_literal3313.tree = NULL;

    null_literal3314.tree = NULL;

    bool_literal3315.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    UNDERSCORE_CHARSET3316_tree   = NULL;
    HEX_NUMBER3317_tree   = NULL;
    UNDERSCORE_CHARSET3318_tree   = NULL;
    BIN_NUMBER3319_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:3581:8: ( string_literal | num_literal |{...}? temporal_literal | null_literal | bool_literal | ( UNDERSCORE_CHARSET )? HEX_NUMBER |{...}? ( UNDERSCORE_CHARSET )? BIN_NUMBER )

            ANTLR3_UINT32 alt945;

            alt945=7;

            switch ( LA(1) )
            {
            case NCHAR_TEXT:
            case SINGLE_QUOTED_TEXT:
            case DOUBLE_QUOTED_TEXT:
            	{
            		alt945=1;
            	}
                break;
            case UNDERSCORE_CHARSET:
            	{
            		switch ( LA(2) )
            		{
            		case SINGLE_QUOTED_TEXT:
            		case DOUBLE_QUOTED_TEXT:
            			{
            				alt945=1;
            			}
            		    break;
            		case HEX_NUMBER:
            			{
            				alt945=6;
            			}
            		    break;
            		case BIN_NUMBER:
            			{
            				alt945=7;
            			}
            		    break;

            		default:
            		    if (BACKTRACKING>0)
            		    {
            		        FAILEDFLAG = ANTLR3_TRUE;
            		        return retval;
            		    }

            		    CONSTRUCTEX();
            		    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            		    EXCEPTION->message      = (void *)"";
            		    EXCEPTION->decisionNum  = 945;
            		    EXCEPTION->state        = 2;


            		    goto ruleliteralEx;

            		}

            	}
                break;
            case DECIMAL_NUMBER:
            case FLOAT_NUMBER:
            case INT_NUMBER:
            case LONG_NUMBER:
            case ULONGLONG_NUMBER:
            	{
            		alt945=2;
            	}
                break;
            case DATE_SYMBOL:
            case TIMESTAMP_SYMBOL:
            case TIME_SYMBOL:
            	{
            		alt945=3;
            	}
                break;
            case NULL2_SYMBOL:
            case NULL_SYMBOL:
            	{
            		alt945=4;
            	}
                break;
            case FALSE_SYMBOL:
            case TRUE_SYMBOL:
            	{
            		alt945=5;
            	}
                break;
            case HEX_NUMBER:
            	{
            		alt945=6;
            	}
                break;
            case BIN_NUMBER:
            	{
            		alt945=7;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 945;
                EXCEPTION->state        = 0;


                goto ruleliteralEx;

            }

            switch (alt945)
            {
        	case 1:
        	    // MySQL.g:3582:2: string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_string_literal_in_literal18015);
        	        string_literal3311=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleliteralEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal3311.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:3583:4: num_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_num_literal_in_literal18020);
        	        num_literal3312=num_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleliteralEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, num_literal3312.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:3585: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_literal18032);
        	        temporal_literal3313=temporal_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleliteralEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, temporal_literal3313.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:3586:4: null_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_null_literal_in_literal18037);
        	        null_literal3314=null_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleliteralEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, null_literal3314.tree);

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:3587:4: bool_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_bool_literal_in_literal18042);
        	        bool_literal3315=bool_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleliteralEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, bool_literal3315.tree);

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:3588:4: ( UNDERSCORE_CHARSET )? HEX_NUMBER
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:3588:4: ( UNDERSCORE_CHARSET )?
        	        {
        	            int alt943=2;
        	            switch ( LA(1) )
        	            {
        	                case UNDERSCORE_CHARSET:
        	                	{
        	                		alt943=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt943)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3588:4: UNDERSCORE_CHARSET
        	        	    {
        	        	        UNDERSCORE_CHARSET3316 = (pANTLR3_COMMON_TOKEN) MATCHT(UNDERSCORE_CHARSET, &FOLLOW_UNDERSCORE_CHARSET_in_literal18047);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleliteralEx;
        	        	        }
        	        	        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;

        	            }
        	        }

        	        HEX_NUMBER3317 = (pANTLR3_COMMON_TOKEN) MATCHT(HEX_NUMBER, &FOLLOW_HEX_NUMBER_in_literal18050);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleliteralEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        HEX_NUMBER3317_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, HEX_NUMBER3317));
        	        ADAPTOR->addChild(ADAPTOR, root_0, HEX_NUMBER3317_tree);
        	        }

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:3589: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:3589:31: ( UNDERSCORE_CHARSET )?
        	        {
        	            int alt944=2;
        	            switch ( LA(1) )
        	            {
        	                case UNDERSCORE_CHARSET:
        	                	{
        	                		alt944=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt944)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3589:31: UNDERSCORE_CHARSET
        	        	    {
        	        	        UNDERSCORE_CHARSET3318 = (pANTLR3_COMMON_TOKEN) MATCHT(UNDERSCORE_CHARSET, &FOLLOW_UNDERSCORE_CHARSET_in_literal18057);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleliteralEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        UNDERSCORE_CHARSET3318_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNDERSCORE_CHARSET3318));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, UNDERSCORE_CHARSET3318_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        BIN_NUMBER3319 = (pANTLR3_COMMON_TOKEN) MATCHT(BIN_NUMBER, &FOLLOW_BIN_NUMBER_in_literal18060);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleliteralEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BIN_NUMBER3319_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BIN_NUMBER3319));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BIN_NUMBER3319_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:3592: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_OPERATOR3321;
    pANTLR3_COMMON_TOKEN    MINUS_OPERATOR3323;
    MySQLParser_literal_return literal3320;
    #undef	RETURN_TYPE_literal3320
    #define	RETURN_TYPE_literal3320 MySQLParser_literal_return

    MySQLParser_ulong_number_return ulong_number3322;
    #undef	RETURN_TYPE_ulong_number3322
    #define	RETURN_TYPE_ulong_number3322 MySQLParser_ulong_number_return

    MySQLParser_ulong_number_return ulong_number3324;
    #undef	RETURN_TYPE_ulong_number3324
    #define	RETURN_TYPE_ulong_number3324 MySQLParser_ulong_number_return

    pANTLR3_BASE_TREE PLUS_OPERATOR3321_tree;
    pANTLR3_BASE_TREE MINUS_OPERATOR3323_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    PLUS_OPERATOR3321       = NULL;
    MINUS_OPERATOR3323       = NULL;
    literal3320.tree = NULL;

    ulong_number3322.tree = NULL;

    ulong_number3324.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    PLUS_OPERATOR3321_tree   = NULL;
    MINUS_OPERATOR3323_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:3592:15: ( literal | PLUS_OPERATOR ulong_number | MINUS_OPERATOR ulong_number )

            ANTLR3_UINT32 alt946;

            alt946=3;

            switch ( LA(1) )
            {
            case DATE_SYMBOL:
            case TIMESTAMP_SYMBOL:
            case TIME_SYMBOL:
            case FALSE_SYMBOL:
            case NCHAR_TEXT:
            case NULL2_SYMBOL:
            case NULL_SYMBOL:
            case SINGLE_QUOTED_TEXT:
            case TRUE_SYMBOL:
            case BIN_NUMBER:
            case DECIMAL_NUMBER:
            case DOUBLE_QUOTED_TEXT:
            case FLOAT_NUMBER:
            case HEX_NUMBER:
            case INT_NUMBER:
            case LONG_NUMBER:
            case ULONGLONG_NUMBER:
            case UNDERSCORE_CHARSET:
            	{
            		alt946=1;
            	}
                break;
            case PLUS_OPERATOR:
            	{
            		alt946=2;
            	}
                break;
            case MINUS_OPERATOR:
            	{
            		alt946=3;
            	}
                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 rulesigned_literalEx;

            }

            switch (alt946)
            {
        	case 1:
        	    // MySQL.g:3593:2: literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_literal_in_signed_literal18070);
        	        literal3320=literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulesigned_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, literal3320.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:3594:4: PLUS_OPERATOR ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        PLUS_OPERATOR3321 = (pANTLR3_COMMON_TOKEN) MATCHT(PLUS_OPERATOR, &FOLLOW_PLUS_OPERATOR_in_signed_literal18075);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulesigned_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PLUS_OPERATOR3321_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PLUS_OPERATOR3321));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PLUS_OPERATOR3321_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_ulong_number_in_signed_literal18077);
        	        ulong_number3322=ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulesigned_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number3322.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:3595:4: MINUS_OPERATOR ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MINUS_OPERATOR3323 = (pANTLR3_COMMON_TOKEN) MATCHT(MINUS_OPERATOR, &FOLLOW_MINUS_OPERATOR_in_signed_literal18082);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulesigned_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MINUS_OPERATOR3323_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MINUS_OPERATOR3323));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MINUS_OPERATOR3323_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_ulong_number_in_signed_literal18084);
        	        ulong_number3324=ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulesigned_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number3324.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:3600: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 string3325;
    #undef	RETURN_TYPE_string3325
    #define	RETURN_TYPE_string3325 MySQLParser_string_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_string;
    /* Initialize rule variables
     */

    root_0 = NULL;

    string3325.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:3600:15: ( string -> ^( STRING_TOKEN string ) )
        // MySQL.g:3601:2: string
        {
            FOLLOWPUSH(FOLLOW_string_in_string_literal18095);
            string3325=string(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulestring_literalEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_string; stream_string->add(stream_string, string3325.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;
            	// 3601:9: -> ^( STRING_TOKEN string )
            	{
            	    // MySQL.g:3601: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:3604: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_TEXT3326;
    pANTLR3_COMMON_TOKEN    UNDERSCORE_CHARSET3327;
    pANTLR3_COMMON_TOKEN    SINGLE_QUOTED_TEXT3328;
    pANTLR3_COMMON_TOKEN    DOUBLE_QUOTED_TEXT3329;

    pANTLR3_BASE_TREE NCHAR_TEXT3326_tree;
    pANTLR3_BASE_TREE UNDERSCORE_CHARSET3327_tree;
    pANTLR3_BASE_TREE SINGLE_QUOTED_TEXT3328_tree;
    pANTLR3_BASE_TREE DOUBLE_QUOTED_TEXT3329_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    NCHAR_TEXT3326       = NULL;
    UNDERSCORE_CHARSET3327       = NULL;
    SINGLE_QUOTED_TEXT3328       = NULL;
    DOUBLE_QUOTED_TEXT3329       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    NCHAR_TEXT3326_tree   = NULL;
    UNDERSCORE_CHARSET3327_tree   = NULL;
    SINGLE_QUOTED_TEXT3328_tree   = NULL;
    DOUBLE_QUOTED_TEXT3329_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:3604:7: ( NCHAR_TEXT | ( UNDERSCORE_CHARSET )? ( options {greedy=true; } : SINGLE_QUOTED_TEXT |{...}? DOUBLE_QUOTED_TEXT )+ )

            ANTLR3_UINT32 alt949;

            alt949=2;

            switch ( LA(1) )
            {
            case NCHAR_TEXT:
            	{
            		alt949=1;
            	}
                break;
            case SINGLE_QUOTED_TEXT:
            case DOUBLE_QUOTED_TEXT:
            case UNDERSCORE_CHARSET:
            	{
            		alt949=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 949;
                EXCEPTION->state        = 0;


                goto rulestringEx;

            }

            switch (alt949)
            {
        	case 1:
        	    // MySQL.g:3605:2: NCHAR_TEXT
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NCHAR_TEXT3326 = (pANTLR3_COMMON_TOKEN) MATCHT(NCHAR_TEXT, &FOLLOW_NCHAR_TEXT_in_string18112);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulestringEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NCHAR_TEXT3326_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NCHAR_TEXT3326));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NCHAR_TEXT3326_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:3606:4: ( UNDERSCORE_CHARSET )? ( options {greedy=true; } : SINGLE_QUOTED_TEXT |{...}? DOUBLE_QUOTED_TEXT )+
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:3606:4: ( UNDERSCORE_CHARSET )?
        	        {
        	            int alt947=2;
        	            switch ( LA(1) )
        	            {
        	                case UNDERSCORE_CHARSET:
        	                	{
        	                		alt947=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt947)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3606:4: UNDERSCORE_CHARSET
        	        	    {
        	        	        UNDERSCORE_CHARSET3327 = (pANTLR3_COMMON_TOKEN) MATCHT(UNDERSCORE_CHARSET, &FOLLOW_UNDERSCORE_CHARSET_in_string18117);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulestringEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        UNDERSCORE_CHARSET3327_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNDERSCORE_CHARSET3327));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, UNDERSCORE_CHARSET3327_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:3606:24: ( options {greedy=true; } : SINGLE_QUOTED_TEXT |{...}? DOUBLE_QUOTED_TEXT )+
        	        {
        	            int cnt948=0;

        	            for (;;)
        	            {
        	                int alt948=3;
        	        	switch ( LA(1) )
        	        	{
        	        	case DOUBLE_QUOTED_TEXT:
        	        		{
        	        			{
        	        			   /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
        	        			    */
        	        			    int LA948_71 = LA(2);
        	        			    if ( ((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))
        	        			    {
        	        			        alt948=2;
        	        			    }

        	        			}
        	        		}
        	        	    break;
        	        	case SINGLE_QUOTED_TEXT:
        	        		{
        	        			alt948=1;
        	        		}
        	        	    break;

        	        	}

        	        	switch (alt948)
        	        	{
        	        	    case 1:
        	        	        // MySQL.g:3606:54: SINGLE_QUOTED_TEXT
        	        	        {
        	        	            SINGLE_QUOTED_TEXT3328 = (pANTLR3_COMMON_TOKEN) MATCHT(SINGLE_QUOTED_TEXT, &FOLLOW_SINGLE_QUOTED_TEXT_in_string18134);
        	        	            if  (HASEXCEPTION())
        	        	            {
        	        	                goto rulestringEx;
        	        	            }
        	        	            if (HASFAILED())
        	        	            {
        	        	                return retval;
        	        	            }

        	        	            if ( BACKTRACKING==0 ) {
        	        	            SINGLE_QUOTED_TEXT3328_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SINGLE_QUOTED_TEXT3328));
        	        	            ADAPTOR->addChild(ADAPTOR, root_0, SINGLE_QUOTED_TEXT3328_tree);
        	        	            }

        	        	        }
        	        	        break;
        	        	    case 2:
        	        	        // MySQL.g:3606:75: {...}? DOUBLE_QUOTED_TEXT
        	        	        {
        	        	            if ( !((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) )
        	        	            {
        	        	                if (BACKTRACKING>0)
        	        	                {
        	        	                    FAILEDFLAG = ANTLR3_TRUE;
        	        	                    return retval;
        	        	                }

        	        	                    CONSTRUCTEX();
        	        	                    EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	        	                    EXCEPTION->message      = (void *)"!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES)";
        	        	                    EXCEPTION->ruleName	 = (void *)"string";


        	        	            }

        	        	            DOUBLE_QUOTED_TEXT3329 = (pANTLR3_COMMON_TOKEN) MATCHT(DOUBLE_QUOTED_TEXT, &FOLLOW_DOUBLE_QUOTED_TEXT_in_string18140);
        	        	            if  (HASEXCEPTION())
        	        	            {
        	        	                goto rulestringEx;
        	        	            }
        	        	            if (HASFAILED())
        	        	            {
        	        	                return retval;
        	        	            }

        	        	            if ( BACKTRACKING==0 ) {
        	        	            DOUBLE_QUOTED_TEXT3329_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DOUBLE_QUOTED_TEXT3329));
        	        	            ADAPTOR->addChild(ADAPTOR, root_0, DOUBLE_QUOTED_TEXT3329_tree);
        	        	            }

        	        	        }
        	        	        break;

        	        	    default:

        	        		if ( cnt948 >= 1 )
        	        		{
        	        		    goto loop948;
        	        		}
        	        		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;
        	        	}
        	        	cnt948++;
        	            }
        	            loop948: ;	/* 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:3609: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    set3330;

    pANTLR3_BASE_TREE set3330_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set3330       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set3330_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3609:12: ( INT_NUMBER | LONG_NUMBER | ULONGLONG_NUMBER | DECIMAL_NUMBER | FLOAT_NUMBER )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set3330=(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, set3330))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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:3617: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    set3331;

    pANTLR3_BASE_TREE set3331_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set3331       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set3331_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3617:13: ( TRUE_SYMBOL | FALSE_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set3331=(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, set3331))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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:3622: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    set3332;

    pANTLR3_BASE_TREE set3332_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set3332       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set3332_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3622:13: ( NULL_SYMBOL | NULL2_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set3332=(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, set3332))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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:3627: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_SYMBOL3333;
    pANTLR3_COMMON_TOKEN    SINGLE_QUOTED_TEXT3334;
    pANTLR3_COMMON_TOKEN    TIME_SYMBOL3335;
    pANTLR3_COMMON_TOKEN    SINGLE_QUOTED_TEXT3336;
    pANTLR3_COMMON_TOKEN    TIMESTAMP_SYMBOL3337;
    pANTLR3_COMMON_TOKEN    SINGLE_QUOTED_TEXT3338;

    pANTLR3_BASE_TREE DATE_SYMBOL3333_tree;
    pANTLR3_BASE_TREE SINGLE_QUOTED_TEXT3334_tree;
    pANTLR3_BASE_TREE TIME_SYMBOL3335_tree;
    pANTLR3_BASE_TREE SINGLE_QUOTED_TEXT3336_tree;
    pANTLR3_BASE_TREE TIMESTAMP_SYMBOL3337_tree;
    pANTLR3_BASE_TREE SINGLE_QUOTED_TEXT3338_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DATE_SYMBOL3333       = NULL;
    SINGLE_QUOTED_TEXT3334       = NULL;
    TIME_SYMBOL3335       = NULL;
    SINGLE_QUOTED_TEXT3336       = NULL;
    TIMESTAMP_SYMBOL3337       = NULL;
    SINGLE_QUOTED_TEXT3338       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DATE_SYMBOL3333_tree   = NULL;
    SINGLE_QUOTED_TEXT3334_tree   = NULL;
    TIME_SYMBOL3335_tree   = NULL;
    SINGLE_QUOTED_TEXT3336_tree   = NULL;
    TIMESTAMP_SYMBOL3337_tree   = NULL;
    SINGLE_QUOTED_TEXT3338_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:3627:17: ( DATE_SYMBOL SINGLE_QUOTED_TEXT | TIME_SYMBOL SINGLE_QUOTED_TEXT | TIMESTAMP_SYMBOL SINGLE_QUOTED_TEXT )

            ANTLR3_UINT32 alt950;

            alt950=3;

            switch ( LA(1) )
            {
            case DATE_SYMBOL:
            	{
            		alt950=1;
            	}
                break;
            case TIME_SYMBOL:
            	{
            		alt950=2;
            	}
                break;
            case TIMESTAMP_SYMBOL:
            	{
            		alt950=3;
            	}
                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 ruletemporal_literalEx;

            }

            switch (alt950)
            {
        	case 1:
        	    // MySQL.g:3628:2: DATE_SYMBOL SINGLE_QUOTED_TEXT
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DATE_SYMBOL3333 = (pANTLR3_COMMON_TOKEN) MATCHT(DATE_SYMBOL, &FOLLOW_DATE_SYMBOL_in_temporal_literal18209);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletemporal_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DATE_SYMBOL3333_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATE_SYMBOL3333));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DATE_SYMBOL3333_tree);
        	        }

        	        SINGLE_QUOTED_TEXT3334 = (pANTLR3_COMMON_TOKEN) MATCHT(SINGLE_QUOTED_TEXT, &FOLLOW_SINGLE_QUOTED_TEXT_in_temporal_literal18211);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletemporal_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SINGLE_QUOTED_TEXT3334_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SINGLE_QUOTED_TEXT3334));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SINGLE_QUOTED_TEXT3334_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:3629:4: TIME_SYMBOL SINGLE_QUOTED_TEXT
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        TIME_SYMBOL3335 = (pANTLR3_COMMON_TOKEN) MATCHT(TIME_SYMBOL, &FOLLOW_TIME_SYMBOL_in_temporal_literal18216);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletemporal_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TIME_SYMBOL3335_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TIME_SYMBOL3335));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TIME_SYMBOL3335_tree);
        	        }

        	        SINGLE_QUOTED_TEXT3336 = (pANTLR3_COMMON_TOKEN) MATCHT(SINGLE_QUOTED_TEXT, &FOLLOW_SINGLE_QUOTED_TEXT_in_temporal_literal18218);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletemporal_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SINGLE_QUOTED_TEXT3336_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SINGLE_QUOTED_TEXT3336));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SINGLE_QUOTED_TEXT3336_tree);
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:3630:4: TIMESTAMP_SYMBOL SINGLE_QUOTED_TEXT
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        TIMESTAMP_SYMBOL3337 = (pANTLR3_COMMON_TOKEN) MATCHT(TIMESTAMP_SYMBOL, &FOLLOW_TIMESTAMP_SYMBOL_in_temporal_literal18223);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletemporal_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TIMESTAMP_SYMBOL3337_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TIMESTAMP_SYMBOL3337));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TIMESTAMP_SYMBOL3337_tree);
        	        }

        	        SINGLE_QUOTED_TEXT3338 = (pANTLR3_COMMON_TOKEN) MATCHT(SINGLE_QUOTED_TEXT, &FOLLOW_SINGLE_QUOTED_TEXT_in_temporal_literal18225);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletemporal_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SINGLE_QUOTED_TEXT3338_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SINGLE_QUOTED_TEXT3338));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SINGLE_QUOTED_TEXT3338_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:3635: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    set3339;

    pANTLR3_BASE_TREE set3339_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set3339       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set3339_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3635:13: ( INT_SYMBOL | TINYINT_SYMBOL | SMALLINT_SYMBOL | MEDIUMINT_SYMBOL | BIGINT_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set3339=(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, set3339))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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:3643: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_SYMBOL3340;
    pANTLR3_COMMON_TOKEN    DOUBLE_SYMBOL3341;
    pANTLR3_COMMON_TOKEN    PRECISION_SYMBOL3342;

    pANTLR3_BASE_TREE REAL_SYMBOL3340_tree;
    pANTLR3_BASE_TREE DOUBLE_SYMBOL3341_tree;
    pANTLR3_BASE_TREE PRECISION_SYMBOL3342_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    REAL_SYMBOL3340       = NULL;
    DOUBLE_SYMBOL3341       = NULL;
    PRECISION_SYMBOL3342       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    REAL_SYMBOL3340_tree   = NULL;
    DOUBLE_SYMBOL3341_tree   = NULL;
    PRECISION_SYMBOL3342_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:3643:13: ( REAL_SYMBOL | DOUBLE_SYMBOL ( PRECISION_SYMBOL )? )

            ANTLR3_UINT32 alt952;

            alt952=2;

            switch ( LA(1) )
            {
            case REAL_SYMBOL:
            	{
            		alt952=1;
            	}
                break;
            case DOUBLE_SYMBOL:
            	{
            		alt952=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 952;
                EXCEPTION->state        = 0;


                goto rulereal_literalEx;

            }

            switch (alt952)
            {
        	case 1:
        	    // MySQL.g:3644:2: REAL_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        REAL_SYMBOL3340 = (pANTLR3_COMMON_TOKEN) MATCHT(REAL_SYMBOL, &FOLLOW_REAL_SYMBOL_in_real_literal18265);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereal_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        REAL_SYMBOL3340_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REAL_SYMBOL3340));
        	        ADAPTOR->addChild(ADAPTOR, root_0, REAL_SYMBOL3340_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:3644:16: DOUBLE_SYMBOL ( PRECISION_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DOUBLE_SYMBOL3341 = (pANTLR3_COMMON_TOKEN) MATCHT(DOUBLE_SYMBOL, &FOLLOW_DOUBLE_SYMBOL_in_real_literal18269);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereal_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DOUBLE_SYMBOL3341_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DOUBLE_SYMBOL3341));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DOUBLE_SYMBOL3341_tree);
        	        }

        	        // MySQL.g:3644:30: ( PRECISION_SYMBOL )?
        	        {
        	            int alt951=2;
        	            switch ( LA(1) )
        	            {
        	                case PRECISION_SYMBOL:
        	                	{
        	                		alt951=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt951)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3644:30: PRECISION_SYMBOL
        	        	    {
        	        	        PRECISION_SYMBOL3342 = (pANTLR3_COMMON_TOKEN) MATCHT(PRECISION_SYMBOL, &FOLLOW_PRECISION_SYMBOL_in_real_literal18271);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulereal_literalEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        PRECISION_SYMBOL3342_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PRECISION_SYMBOL3342));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, PRECISION_SYMBOL3342_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:3647: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_SYMBOL3343;
    pANTLR3_COMMON_TOKEN    INT_NUMBER3344;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL3345;
    pANTLR3_COMMON_TOKEN    INT_NUMBER3346;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL3347;

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL3343_tree;
    pANTLR3_BASE_TREE INT_NUMBER3344_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL3345_tree;
    pANTLR3_BASE_TREE INT_NUMBER3346_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL3347_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL3343       = NULL;
    INT_NUMBER3344       = NULL;
    COMMA_SYMBOL3345       = NULL;
    INT_NUMBER3346       = NULL;
    CLOSE_PAR_SYMBOL3347       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL3343_tree   = NULL;
    INT_NUMBER3344_tree   = NULL;
    COMMA_SYMBOL3345_tree   = NULL;
    INT_NUMBER3346_tree   = NULL;
    CLOSE_PAR_SYMBOL3347_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3647:14: ( OPEN_PAR_SYMBOL INT_NUMBER ( COMMA_SYMBOL INT_NUMBER )? CLOSE_PAR_SYMBOL )
        // MySQL.g:3649:2: OPEN_PAR_SYMBOL INT_NUMBER ( COMMA_SYMBOL INT_NUMBER )? CLOSE_PAR_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            OPEN_PAR_SYMBOL3343 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_float_options18283);
            if  (HASEXCEPTION())
            {
                goto rulefloat_optionsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL3343_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL3343));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL3343_tree);
            }

            INT_NUMBER3344 = (pANTLR3_COMMON_TOKEN) MATCHT(INT_NUMBER, &FOLLOW_INT_NUMBER_in_float_options18285);
            if  (HASEXCEPTION())
            {
                goto rulefloat_optionsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            INT_NUMBER3344_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INT_NUMBER3344));
            ADAPTOR->addChild(ADAPTOR, root_0, INT_NUMBER3344_tree);
            }

            // MySQL.g:3649:29: ( COMMA_SYMBOL INT_NUMBER )?
            {
                int alt953=2;
                switch ( LA(1) )
                {
                    case COMMA_SYMBOL:
                    	{
                    		alt953=1;
                    	}
                        break;
                }

                switch (alt953)
                {
            	case 1:
            	    // MySQL.g:3649:30: COMMA_SYMBOL INT_NUMBER
            	    {
            	        COMMA_SYMBOL3345 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_float_options18288);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulefloat_optionsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL3345_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL3345));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL3345_tree);
            	        }

            	        INT_NUMBER3346 = (pANTLR3_COMMON_TOKEN) MATCHT(INT_NUMBER, &FOLLOW_INT_NUMBER_in_float_options18290);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulefloat_optionsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        INT_NUMBER3346_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INT_NUMBER3346));
            	        ADAPTOR->addChild(ADAPTOR, root_0, INT_NUMBER3346_tree);
            	        }

            	    }
            	    break;

                }
            }

            CLOSE_PAR_SYMBOL3347 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_float_options18294);
            if  (HASEXCEPTION())
            {
                goto rulefloat_optionsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL3347_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL3347));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL3347_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:3652: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_SYMBOL3348;
    pANTLR3_COMMON_TOKEN    INT_NUMBER3349;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL3350;
    pANTLR3_COMMON_TOKEN    INT_NUMBER3351;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL3352;

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL3348_tree;
    pANTLR3_BASE_TREE INT_NUMBER3349_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL3350_tree;
    pANTLR3_BASE_TREE INT_NUMBER3351_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL3352_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL3348       = NULL;
    INT_NUMBER3349       = NULL;
    COMMA_SYMBOL3350       = NULL;
    INT_NUMBER3351       = NULL;
    CLOSE_PAR_SYMBOL3352       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL3348_tree   = NULL;
    INT_NUMBER3349_tree   = NULL;
    COMMA_SYMBOL3350_tree   = NULL;
    INT_NUMBER3351_tree   = NULL;
    CLOSE_PAR_SYMBOL3352_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3652:10: ( OPEN_PAR_SYMBOL INT_NUMBER COMMA_SYMBOL INT_NUMBER CLOSE_PAR_SYMBOL )
        // MySQL.g:3653:2: OPEN_PAR_SYMBOL INT_NUMBER COMMA_SYMBOL INT_NUMBER CLOSE_PAR_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            OPEN_PAR_SYMBOL3348 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_precision18303);
            if  (HASEXCEPTION())
            {
                goto ruleprecisionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL3348_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL3348));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL3348_tree);
            }

            INT_NUMBER3349 = (pANTLR3_COMMON_TOKEN) MATCHT(INT_NUMBER, &FOLLOW_INT_NUMBER_in_precision18305);
            if  (HASEXCEPTION())
            {
                goto ruleprecisionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            INT_NUMBER3349_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INT_NUMBER3349));
            ADAPTOR->addChild(ADAPTOR, root_0, INT_NUMBER3349_tree);
            }

            COMMA_SYMBOL3350 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_precision18307);
            if  (HASEXCEPTION())
            {
                goto ruleprecisionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            COMMA_SYMBOL3350_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL3350));
            ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL3350_tree);
            }

            INT_NUMBER3351 = (pANTLR3_COMMON_TOKEN) MATCHT(INT_NUMBER, &FOLLOW_INT_NUMBER_in_precision18309);
            if  (HASEXCEPTION())
            {
                goto ruleprecisionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            INT_NUMBER3351_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INT_NUMBER3351));
            ADAPTOR->addChild(ADAPTOR, root_0, INT_NUMBER3351_tree);
            }

            CLOSE_PAR_SYMBOL3352 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_precision18311);
            if  (HASEXCEPTION())
            {
                goto ruleprecisionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL3352_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL3352));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL3352_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:3656: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_SYMBOL3353;
    pANTLR3_COMMON_TOKEN    NATIONAL_SYMBOL3354;
    pANTLR3_COMMON_TOKEN    CHAR_SYMBOL3355;

    pANTLR3_BASE_TREE NCHAR_SYMBOL3353_tree;
    pANTLR3_BASE_TREE NATIONAL_SYMBOL3354_tree;
    pANTLR3_BASE_TREE CHAR_SYMBOL3355_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    NCHAR_SYMBOL3353       = NULL;
    NATIONAL_SYMBOL3354       = NULL;
    CHAR_SYMBOL3355       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    NCHAR_SYMBOL3353_tree   = NULL;
    NATIONAL_SYMBOL3354_tree   = NULL;
    CHAR_SYMBOL3355_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:3656:14: ( NCHAR_SYMBOL |{...}? NATIONAL_SYMBOL CHAR_SYMBOL )

            ANTLR3_UINT32 alt954;

            alt954=2;

            switch ( LA(1) )
            {
            case NCHAR_SYMBOL:
            	{
            		alt954=1;
            	}
                break;
            case NATIONAL_SYMBOL:
            	{
            		alt954=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 954;
                EXCEPTION->state        = 0;


                goto rulenchar_literalEx;

            }

            switch (alt954)
            {
        	case 1:
        	    // MySQL.g:3657:2: NCHAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NCHAR_SYMBOL3353 = (pANTLR3_COMMON_TOKEN) MATCHT(NCHAR_SYMBOL, &FOLLOW_NCHAR_SYMBOL_in_nchar_literal18320);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulenchar_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NCHAR_SYMBOL3353_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NCHAR_SYMBOL3353));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NCHAR_SYMBOL3353_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:3658: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_SYMBOL3354 = (pANTLR3_COMMON_TOKEN) MATCHT(NATIONAL_SYMBOL, &FOLLOW_NATIONAL_SYMBOL_in_nchar_literal18327);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulenchar_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NATIONAL_SYMBOL3354_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NATIONAL_SYMBOL3354));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NATIONAL_SYMBOL3354_tree);
        	        }

        	        CHAR_SYMBOL3355 = (pANTLR3_COMMON_TOKEN) MATCHT(CHAR_SYMBOL, &FOLLOW_CHAR_SYMBOL_in_nchar_literal18329);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulenchar_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CHAR_SYMBOL3355_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHAR_SYMBOL3355));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CHAR_SYMBOL3355_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:3661: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_SYMBOL3356;
    pANTLR3_COMMON_TOKEN    VARYING_SYMBOL3357;
    pANTLR3_COMMON_TOKEN    VARCHAR_SYMBOL3358;

    pANTLR3_BASE_TREE CHAR_SYMBOL3356_tree;
    pANTLR3_BASE_TREE VARYING_SYMBOL3357_tree;
    pANTLR3_BASE_TREE VARCHAR_SYMBOL3358_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CHAR_SYMBOL3356       = NULL;
    VARYING_SYMBOL3357       = NULL;
    VARCHAR_SYMBOL3358       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CHAR_SYMBOL3356_tree   = NULL;
    VARYING_SYMBOL3357_tree   = NULL;
    VARCHAR_SYMBOL3358_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:3661:16: ( CHAR_SYMBOL VARYING_SYMBOL | VARCHAR_SYMBOL )

            ANTLR3_UINT32 alt955;

            alt955=2;

            switch ( LA(1) )
            {
            case CHAR_SYMBOL:
            	{
            		alt955=1;
            	}
                break;
            case VARCHAR_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 rulevarchar_literalEx;

            }

            switch (alt955)
            {
        	case 1:
        	    // MySQL.g:3662:2: CHAR_SYMBOL VARYING_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CHAR_SYMBOL3356 = (pANTLR3_COMMON_TOKEN) MATCHT(CHAR_SYMBOL, &FOLLOW_CHAR_SYMBOL_in_varchar_literal18339);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulevarchar_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CHAR_SYMBOL3356_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHAR_SYMBOL3356));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CHAR_SYMBOL3356_tree);
        	        }

        	        VARYING_SYMBOL3357 = (pANTLR3_COMMON_TOKEN) MATCHT(VARYING_SYMBOL, &FOLLOW_VARYING_SYMBOL_in_varchar_literal18341);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulevarchar_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;
        	case 2:
        	    // MySQL.g:3663:4: VARCHAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        VARCHAR_SYMBOL3358 = (pANTLR3_COMMON_TOKEN) MATCHT(VARCHAR_SYMBOL, &FOLLOW_VARCHAR_SYMBOL_in_varchar_literal18346);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulevarchar_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        VARCHAR_SYMBOL3358_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VARCHAR_SYMBOL3358));
        	        ADAPTOR->addChild(ADAPTOR, root_0, VARCHAR_SYMBOL3358_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:3666: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_SYMBOL3359;
    pANTLR3_COMMON_TOKEN    VARCHAR_SYMBOL3360;
    pANTLR3_COMMON_TOKEN    NVARCHAR_SYMBOL3361;
    pANTLR3_COMMON_TOKEN    NCHAR_SYMBOL3362;
    pANTLR3_COMMON_TOKEN    VARCHAR_SYMBOL3363;
    pANTLR3_COMMON_TOKEN    NATIONAL_SYMBOL3364;
    pANTLR3_COMMON_TOKEN    CHAR_SYMBOL3365;
    pANTLR3_COMMON_TOKEN    VARYING_SYMBOL3366;
    pANTLR3_COMMON_TOKEN    NCHAR_SYMBOL3367;
    pANTLR3_COMMON_TOKEN    VARYING_SYMBOL3368;

    pANTLR3_BASE_TREE NATIONAL_SYMBOL3359_tree;
    pANTLR3_BASE_TREE VARCHAR_SYMBOL3360_tree;
    pANTLR3_BASE_TREE NVARCHAR_SYMBOL3361_tree;
    pANTLR3_BASE_TREE NCHAR_SYMBOL3362_tree;
    pANTLR3_BASE_TREE VARCHAR_SYMBOL3363_tree;
    pANTLR3_BASE_TREE NATIONAL_SYMBOL3364_tree;
    pANTLR3_BASE_TREE CHAR_SYMBOL3365_tree;
    pANTLR3_BASE_TREE VARYING_SYMBOL3366_tree;
    pANTLR3_BASE_TREE NCHAR_SYMBOL3367_tree;
    pANTLR3_BASE_TREE VARYING_SYMBOL3368_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    NATIONAL_SYMBOL3359       = NULL;
    VARCHAR_SYMBOL3360       = NULL;
    NVARCHAR_SYMBOL3361       = NULL;
    NCHAR_SYMBOL3362       = NULL;
    VARCHAR_SYMBOL3363       = NULL;
    NATIONAL_SYMBOL3364       = NULL;
    CHAR_SYMBOL3365       = NULL;
    VARYING_SYMBOL3366       = NULL;
    NCHAR_SYMBOL3367       = NULL;
    VARYING_SYMBOL3368       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    NATIONAL_SYMBOL3359_tree   = NULL;
    VARCHAR_SYMBOL3360_tree   = NULL;
    NVARCHAR_SYMBOL3361_tree   = NULL;
    NCHAR_SYMBOL3362_tree   = NULL;
    VARCHAR_SYMBOL3363_tree   = NULL;
    NATIONAL_SYMBOL3364_tree   = NULL;
    CHAR_SYMBOL3365_tree   = NULL;
    VARYING_SYMBOL3366_tree   = NULL;
    NCHAR_SYMBOL3367_tree   = NULL;
    VARYING_SYMBOL3368_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:3666:17: ( NATIONAL_SYMBOL VARCHAR_SYMBOL | NVARCHAR_SYMBOL | NCHAR_SYMBOL VARCHAR_SYMBOL | NATIONAL_SYMBOL CHAR_SYMBOL VARYING_SYMBOL | NCHAR_SYMBOL VARYING_SYMBOL )

            ANTLR3_UINT32 alt956;

            alt956=5;

            switch ( LA(1) )
            {
            case NATIONAL_SYMBOL:
            	{
            		switch ( LA(2) )
            		{
            		case VARCHAR_SYMBOL:
            			{
            				alt956=1;
            			}
            		    break;
            		case CHAR_SYMBOL:
            			{
            				alt956=4;
            			}
            		    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        = 1;


            		    goto rulenvarchar_literalEx;

            		}

            	}
                break;
            case NVARCHAR_SYMBOL:
            	{
            		alt956=2;
            	}
                break;
            case NCHAR_SYMBOL:
            	{
            		switch ( LA(2) )
            		{
            		case VARCHAR_SYMBOL:
            			{
            				alt956=3;
            			}
            		    break;
            		case VARYING_SYMBOL:
            			{
            				alt956=5;
            			}
            		    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        = 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  = 956;
                EXCEPTION->state        = 0;


                goto rulenvarchar_literalEx;

            }

            switch (alt956)
            {
        	case 1:
        	    // MySQL.g:3667:2: NATIONAL_SYMBOL VARCHAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NATIONAL_SYMBOL3359 = (pANTLR3_COMMON_TOKEN) MATCHT(NATIONAL_SYMBOL, &FOLLOW_NATIONAL_SYMBOL_in_nvarchar_literal18355);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulenvarchar_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NATIONAL_SYMBOL3359_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NATIONAL_SYMBOL3359));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NATIONAL_SYMBOL3359_tree);
        	        }

        	        VARCHAR_SYMBOL3360 = (pANTLR3_COMMON_TOKEN) MATCHT(VARCHAR_SYMBOL, &FOLLOW_VARCHAR_SYMBOL_in_nvarchar_literal18357);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulenvarchar_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        VARCHAR_SYMBOL3360_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VARCHAR_SYMBOL3360));
        	        ADAPTOR->addChild(ADAPTOR, root_0, VARCHAR_SYMBOL3360_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:3668:4: NVARCHAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NVARCHAR_SYMBOL3361 = (pANTLR3_COMMON_TOKEN) MATCHT(NVARCHAR_SYMBOL, &FOLLOW_NVARCHAR_SYMBOL_in_nvarchar_literal18362);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulenvarchar_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NVARCHAR_SYMBOL3361_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NVARCHAR_SYMBOL3361));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NVARCHAR_SYMBOL3361_tree);
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:3669:4: NCHAR_SYMBOL VARCHAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NCHAR_SYMBOL3362 = (pANTLR3_COMMON_TOKEN) MATCHT(NCHAR_SYMBOL, &FOLLOW_NCHAR_SYMBOL_in_nvarchar_literal18367);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulenvarchar_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NCHAR_SYMBOL3362_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NCHAR_SYMBOL3362));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NCHAR_SYMBOL3362_tree);
        	        }

        	        VARCHAR_SYMBOL3363 = (pANTLR3_COMMON_TOKEN) MATCHT(VARCHAR_SYMBOL, &FOLLOW_VARCHAR_SYMBOL_in_nvarchar_literal18369);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulenvarchar_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        VARCHAR_SYMBOL3363_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VARCHAR_SYMBOL3363));
        	        ADAPTOR->addChild(ADAPTOR, root_0, VARCHAR_SYMBOL3363_tree);
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:3670:4: NATIONAL_SYMBOL CHAR_SYMBOL VARYING_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NATIONAL_SYMBOL3364 = (pANTLR3_COMMON_TOKEN) MATCHT(NATIONAL_SYMBOL, &FOLLOW_NATIONAL_SYMBOL_in_nvarchar_literal18374);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulenvarchar_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NATIONAL_SYMBOL3364_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NATIONAL_SYMBOL3364));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NATIONAL_SYMBOL3364_tree);
        	        }

        	        CHAR_SYMBOL3365 = (pANTLR3_COMMON_TOKEN) MATCHT(CHAR_SYMBOL, &FOLLOW_CHAR_SYMBOL_in_nvarchar_literal18376);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulenvarchar_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CHAR_SYMBOL3365_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHAR_SYMBOL3365));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CHAR_SYMBOL3365_tree);
        	        }

        	        VARYING_SYMBOL3366 = (pANTLR3_COMMON_TOKEN) MATCHT(VARYING_SYMBOL, &FOLLOW_VARYING_SYMBOL_in_nvarchar_literal18378);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulenvarchar_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        VARYING_SYMBOL3366_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VARYING_SYMBOL3366));
        	        ADAPTOR->addChild(ADAPTOR, root_0, VARYING_SYMBOL3366_tree);
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:3671:4: NCHAR_SYMBOL VARYING_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NCHAR_SYMBOL3367 = (pANTLR3_COMMON_TOKEN) MATCHT(NCHAR_SYMBOL, &FOLLOW_NCHAR_SYMBOL_in_nvarchar_literal18383);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulenvarchar_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NCHAR_SYMBOL3367_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NCHAR_SYMBOL3367));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NCHAR_SYMBOL3367_tree);
        	        }

        	        VARYING_SYMBOL3368 = (pANTLR3_COMMON_TOKEN) MATCHT(VARYING_SYMBOL, &FOLLOW_VARYING_SYMBOL_in_nvarchar_literal18385);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulenvarchar_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        VARYING_SYMBOL3368_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VARYING_SYMBOL3368));
        	        ADAPTOR->addChild(ADAPTOR, root_0, VARYING_SYMBOL3368_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:3674: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_TEXT3369;
    MySQLParser_identifier_return identifier3370;
    #undef	RETURN_TYPE_identifier3370
    #define	RETURN_TYPE_identifier3370 MySQLParser_identifier_return

    pANTLR3_BASE_TREE SINGLE_QUOTED_TEXT3369_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SINGLE_QUOTED_TEXT3369       = NULL;
    identifier3370.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SINGLE_QUOTED_TEXT3369_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:3674:19: ( SINGLE_QUOTED_TEXT | identifier )

            ANTLR3_UINT32 alt957;

            alt957=2;

            {
                int LA957_0 = LA(1);
                if ( (LA957_0 == SINGLE_QUOTED_TEXT))
                {
                    alt957=1;
                }
                else if ( (((LA957_0 >= ACCOUNT_SYMBOL) && (LA957_0 <= YEAR_SYMBOL)) || LA957_0 == BACK_TICK_QUOTED_ID || LA957_0 == DOUBLE_QUOTED_TEXT || LA957_0 == IDENTIFIER))
                {
                    alt957=2;
                }
                else
                {
                    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 ruletext_or_identifierEx;

                }
            }
            switch (alt957)
            {
        	case 1:
        	    // MySQL.g:3675:2: SINGLE_QUOTED_TEXT
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SINGLE_QUOTED_TEXT3369 = (pANTLR3_COMMON_TOKEN) MATCHT(SINGLE_QUOTED_TEXT, &FOLLOW_SINGLE_QUOTED_TEXT_in_text_or_identifier18394);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletext_or_identifierEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SINGLE_QUOTED_TEXT3369_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SINGLE_QUOTED_TEXT3369));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SINGLE_QUOTED_TEXT3369_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:3676:4: identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_identifier_in_text_or_identifier18399);
        	        identifier3370=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletext_or_identifierEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier3370.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:3680: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_number3371;
    #undef	RETURN_TYPE_real_ulonglong_number3371
    #define	RETURN_TYPE_real_ulonglong_number3371 MySQLParser_real_ulonglong_number_return

    MySQLParser_pure_identifier_return pure_identifier3372;
    #undef	RETURN_TYPE_pure_identifier3372
    #define	RETURN_TYPE_pure_identifier3372 MySQLParser_pure_identifier_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    real_ulonglong_number3371.tree = NULL;

    pure_identifier3372.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:3680:12: ( real_ulonglong_number | pure_identifier )

            ANTLR3_UINT32 alt958;

            alt958=2;

            switch ( LA(1) )
            {
            case INT_NUMBER:
            case LONG_NUMBER:
            case ULONGLONG_NUMBER:
            	{
            		alt958=1;
            	}
                break;
            case BACK_TICK_QUOTED_ID:
            case DOUBLE_QUOTED_TEXT:
            case IDENTIFIER:
            	{
            		alt958=2;
            	}
                break;

            default:
                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 rulesize_numberEx;

            }

            switch (alt958)
            {
        	case 1:
        	    // MySQL.g:3681:2: real_ulonglong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_real_ulonglong_number_in_size_number18410);
        	        real_ulonglong_number3371=real_ulonglong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulesize_numberEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, real_ulonglong_number3371.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:3682:4: pure_identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_pure_identifier_in_size_number18415);
        	        pure_identifier3372=pure_identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulesize_numberEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, pure_identifier3372.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:3685: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_SYMBOL3373;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL3374;

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL3373_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL3374_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL3373       = NULL;
    CLOSE_PAR_SYMBOL3374       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL3373_tree   = NULL;
    CLOSE_PAR_SYMBOL3374_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3685:12: ( OPEN_PAR_SYMBOL CLOSE_PAR_SYMBOL )
        // MySQL.g:3686:2: OPEN_PAR_SYMBOL CLOSE_PAR_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            OPEN_PAR_SYMBOL3373 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_parentheses18425);
            if  (HASEXCEPTION())
            {
                goto ruleparenthesesEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL3373_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL3373));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL3373_tree);
            }

            CLOSE_PAR_SYMBOL3374 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_parentheses18427);
            if  (HASEXCEPTION())
            {
                goto ruleparenthesesEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL3374_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL3374));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL3374_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:3689: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    set3375;

    pANTLR3_BASE_TREE set3375_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set3375       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set3375_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3689:6: ( EQUAL_OPERATOR | ASSIGN_OPERATOR )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set3375=(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, set3375))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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:3693: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    set3376;

    pANTLR3_BASE_TREE set3376_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set3376       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set3376_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3693:12: ( GLOBAL_SYMBOL | LOCAL_SYMBOL | SESSION_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set3376=(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, set3376))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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:3700: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    set3378;
    MySQLParser_keyword_sp_return keyword_sp3377;
    #undef	RETURN_TYPE_keyword_sp3377
    #define	RETURN_TYPE_keyword_sp3377 MySQLParser_keyword_sp_return

    pANTLR3_BASE_TREE set3378_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set3378       = NULL;
    keyword_sp3377.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set3378_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:3700: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 alt959;

            alt959=2;

            {
                int LA959_0 = LA(1);
                if ( (((LA959_0 >= ACTION_SYMBOL) && (LA959_0 <= SHARE_SYMBOL)) || ((LA959_0 >= SLOW_SYMBOL) && (LA959_0 <= YEAR_SYMBOL))))
                {
                    alt959=1;
                }
                else if ( (((LA959_0 >= ACCOUNT_SYMBOL) && (LA959_0 <= XA_SYMBOL)) || LA959_0 == SHUTDOWN_SYMBOL))
                {
                    alt959=2;
                }
                else
                {
                    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 rulekeywordEx;

                }
            }
            switch (alt959)
            {
        	case 1:
        	    // MySQL.g:3701:2: keyword_sp
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_keyword_sp_in_keyword18469);
        	        keyword_sp3377=keyword_sp(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulekeywordEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, keyword_sp3377.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:3702: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));


        	        set3378=(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, set3378))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>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:3775: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    set3379;

    pANTLR3_BASE_TREE set3379_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set3379       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set3379_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3775: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));


            set3379=(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, set3379))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>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:1301:2: ( table_wild )
    // MySQL.g:1301:3: table_wild
    {
        FOLLOWPUSH(FOLLOW_table_wild_in_synpred1_MySQL5345);
        table_wild(ctx);

        FOLLOWPOP();
        if  (HASEXCEPTION())
        {
            goto rulesynpred1_MySQLEx;
        }
        if (HASFAILED())
        {
            return ;
        }


    }

// This is where rules clean up and exit
//
goto rulesynpred1_MySQLEx; /* Prevent compiler warnings */
rulesynpred1_MySQLEx: ;

}
// $ANTLR end synpred1_MySQL

// $ANTLR start synpred2_MySQL
static void synpred2_MySQL_fragment(pMySQLParser ctx )
{
    // MySQL.g:2273:4: ( OPEN_PAR_SYMBOL expression COMMA_SYMBOL )
    // MySQL.g:2273:5: OPEN_PAR_SYMBOL expression COMMA_SYMBOL
    {
         MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_synpred2_MySQL11147);
        if  (HASEXCEPTION())
        {
            goto rulesynpred2_MySQLEx;
        }
        if (HASFAILED())
        {
            return ;
        }


        FOLLOWPUSH(FOLLOW_expression_in_synpred2_MySQL11149);
        expression(ctx);

        FOLLOWPOP();
        if  (HASEXCEPTION())
        {
            goto rulesynpred2_MySQLEx;
        }
        if (HASFAILED())
        {
            return ;
        }


         MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_synpred2_MySQL11151);
        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
 * =============================================================================
 */
